Ansible 1.9 has been released

Ansible 1.9 was released on March 25, 2015. A fair amount has been added / changed, so I'd like to help everyone translate the release notes here. Since compatibility is basically ensured, I think that it is not necessary to rewrite the playbook. However, it is necessary to change the playbook at that point, since it has been changed to the safe side that it will fail if there is a local change in the module for version control system such as git module.

In addition, 1.9 is the last release of 1 series. Ansible 2.0 which was rewritten drastically will be out soon.

Release URL : https://github.com/ansible/ansible/blob/devel/CHANGELOG.md#19-dancing- in-the-street---mar-25-2015

1.9 "Dancing In the Street" - Mar 25, 2015

Major change

  • Kerberos is supported with winrm connection plugin.
  • Add Tag : 'All', 'Always', 'Untagged', a special tag called 'tagged' has been added. --list-tasks and the newly added --list-tags look at the information on the options in the tag.
  • The 'Become' system of privilege escalation was introduced, and there were changes in variables and methods. Sudo and su are backwards compatible. pbrun and pfexec was introduced as an experimental stage. In addition, runas has been added in winrm connection plugin.
  • Improved error display of ssh connection.
  • Documentation has been added regarding the return value in the module and updated with the ansible-doc command and web site. We will gradually update the document of copy, stats, acl module.
  • I optimized plugin loader and cache plugin. In some cases, you can expect a dramatic speedup at startup.
  • I rebuilt the checksum mechanism so that I can check it properly in various places.
  • no_log if that has been specified, we do not want to see the parameters in the skipped task.
  • Many fixes entered with unicode support. We standardized the function so that problems do not occur on the boundary of input / output.
  • Added CI of travis with github. You can now improve the ticket's triage and merge speed.
  • environment: directive can now be set in the entire play. Each task inherits this and can overwrite it with each task.
  • Enhanced OS / distribution support in fact collection. It also improved the speed with pypy.
  • to Lookup wantlist Added an option. It returns a comma-delimited string as a list type variable. (There was a problem from yunano.) If it is less than 1.9, the list was always returned by joining to the comma-delimited string at lookup, but by returning the list as it is by returning the wantlist option is)
  • File Shared module for backup, I set the accuracy of time stamp to second (it was minutes ago)
  • I decided to allow an empty inventory. A warning is issued, but it is not an error. (Used in localhost and cloud modules)
  • By switching to CParser loader, we improved YAML parsing speed by 25%.

New module

Cryptab
Managing linux encrypted block devices
Gce_img
Management of GCE image resources
Gluster_volume
Management of glusterfs volumes
Haproxy
Management of haproxy
Known_hosts
Ssh known_hosts file
Lxc_container
Lxc containers management
Patch
Apply patch on target system with patch command
Pkg 5
Package management on Solaris
Pkg5_publisher
Solaris pkg 5 repository configuration management
Postgresql_ext
Manage postgresql extensions
Snmp_facts
Collect fact using snmp
Svc
Management of daemontool based service
Uptimerobot
Management of Uptime Robot Monitoring

New filter

Ternary
Change the value to be returned as true and false
Cartesian
Return the Cartesian product of two lists
To_uuid
Generate an ansible domain specific UUID from a character string
Checksum
Generate checksum internally used by ansible
Hash
Hash Generate character string (md 5, sha 1, etc)
Password_hash
Generate a hash string that can be used with user module's password
Add as ip / network related
Ipaddr, ipwrap, ipv4, ipv6ipsubnet, nthhost, hwaddr, macaddr

Yakuchu : filter and is the guy to use as follows. Here is an example of the hash filter added this time.

- debug: msg={{ 'test1' | hash('sha1') }}

Other noticeable changes

  • New Plugin Lookup:
    • Dig : returns the IP address to the DNS resolution
    • Url : to get the data from the specified URL
  • New Plugin Callback:
    • Syslog_json : output in JSON format the output of the play to the syslog
  • Added a lot of functions to Amazon Web service module
    • More than one security group can now be specified when creating a new instance with ec2. Previously it was only one.
    • You can specify EBS Volume type with ec2_vol.
    • In Ec2_vol instance=None can now detach by specifying the.
    • We modified the ec2_group so that only specific grants are deleted, not all rules are erased.
    • Support for tenancy with ec2.
    • You can now manage tags, charset, and public accessibility with RDS
    • Capability can now be acquired to delete snapshots with ec2_ snapshot
    • Alias was supported on route 53
    • Private_zones supported on route 53
    • Ec2_asg : wait_for_instances now supports parameters. This will wait until it gets ready for that instance before the ansible task is over.
  • Docker function addition
    • restart_policy in the parameters, you can now control the automatic restart of the container.
    • If the docker client or server did not support the option, the task failed instead of ignoring that option without permission.
    • insecure_registry has been added in order to access to the registry by using the HTTP parameters.
    • Added parameter to set the domain name of the container.
    • The docker_image module has been deprecated until its functionality is fully covered.
    • You can now set container PID namespace.
    • pull to add the parameters, now the more recent image of the registry as ansible to choose.
    • can be specified in the docker module stat worked add. I will write a new stat below.
      • present create a container, but the start is not.
      • restarted and then restart the container.
      • reloaded Once you have detected that ansible Phil now has been changed, and how the container earlier.
        • Reloaded accounts for exposed ports, env vars, and volumes
    • TLS can now be used to connect to docker server
  • Some of the source control module is force parameter was true by default. This was changed to false by default. This will prevent you from being crushed in accident. force is based on the premise that it is a true playbook is, force=True will move in only added. The affected modules are as follows.
    • bzr : When the checkout at the time there are local changes, bzr module had to remove all the changes even if you specify any action. From now on force=yes not be crushed to write as long as that is not specified. In the case of an operation assuming a state where there is no change, it may fail.
    • git : When the checkout at the time there are local changes, git module will fail as long as the force has not been specified. force=yes case of, to revert, rewind all the changes.
    • hg : same as bzr
    • Subversion : same as bzr
  • New inventory script
    • vbox : virtualbox
    • consul : Gets the inventory from the consul
  • Gce : ip_forward can now forward the IP packet in the parameter.
  • Gce : disk_auto_delete after instance discarded in the parameter can now erase the boot disk.
  • Gce : now even without an external IP address instance to be able to spwan.
  • Gce_pd : now the disk type can be selected.
  • Gce_net : target_tags is now possible to set the rules of the firewall in the parameter.
  • rax : Added parameters to create a boot volume.
  • Nova_compute : scheduler_hints Added parameters.
  • Vsphere_guest : now from the template to be able to deploy a guest.
  • Associated with the file module all : a lot of fixes for hardlink and softlink
  • Unarchive : User, Group, Mode, And selinux parameter has been added.
  • authorized_keys : You can now specify the URL from which to retrieve the key.
  • authorized_keys : Key is the processing of the case that are not specified in the Task exclude can now be specified in the parameter. (Yakuchu : exclusive=yes if it was specified in the keys (how s) other than the key key is erased)
  • selinux : state = disabled case of, now to change the current state to the permissive
  • User : You can now set the expire.
  • Service : Rewrite, it was to show a better behavior.
  • yum : update_cache parameter has been added, you can specify to update the cache.
  • Apt : so that it can be installed on the basis of the dependencis of Package build_dep parameters have been added
  • postgres : You can now specify the unix socket to DB connection
  • Mount : now supports bind mount.
  • git : clone Added parameters. With this you can get information on the remote repository without a local repository
  • git : refspec Added parameters. This will allow you to pull commits that are not part of the branch.
  • Many fixes on documents

Summary

It is a release with several minor improvements. For modules and tags in particular, I think that the function "I wanted this" was added.