Ansible for IBM Z - Group home

Automating has no limits and neither does our latest IBM z/OS core beta version.

  

This week more than 50 countries will celebrate International Animation Day, honoring where it began with the first public performance at Emile Reynaud’s Theatre Optique in Paris in 1892 that included a revolving device that projected hand-painted images on a gelatin strip to create the illusion of movement. Could Ansible help with animation? Certainly, Ansible paired with AI could maintain color, generate intermediate frames, aid and rendering and much more. Animation certainly has evolved as has the IBM z/OS core collection releasing version 1.12.0-beta.1 to Galaxy and GitHub

This release depends on ZOAU 1.3.2, includes 8 enhancements, 15 bug fixes with a focus on how modules leverage High Level Qualifiers (HLQ) for both, persistent and temporary data sets,  unrepresentable characters, special character in user IDs and the introduction of job types. This announcement will discuss the noteworthy enhancements and when it becomes Generally Available, we will dive into the details. I recommend reading over the release notes as well as the changelog, this will provide you an understanding of the all the changes. 


Staring with the 
enhancements, the job type modules now return a content_type, this is important when you want to differentiate what type of job you are interacting with. The types returned can be:

  • APPC for a APPC Initiator.
  • JGRP for a JOBGROUP.
  • JOB for a Batch job.
  • STC for a Started task.
  • TSU for a Time sharing user.
  •  ? for an unknown or pending.

Another important change has been how the modules handle unpresentable characters. In recent versions of ansible-core, you may have seen a warning similar to:

[DEPRECATION WARNING]: Non UTF-8 encoded data replaced with "?" while displaying text to stdout/stderr,

this is temporary and will become an error. This feature will be removed in version 2.18. 

In ansible-core version 2.18, it will no longer substitute unpresentable character leaving collections to handle them. In this release, if any module encounters an unpresentable character,  it will be replaced with the 'replacement character' (�), found in the Unicode standard at code point U+FFFD.

There has been a slight change in the behavior of the  zos_backup_restore module where if the operation is set to restore and the hlq is not provided, the original high level qualifiers in a backup will be used for a restore. Previously, the module did not support using the original high level qualifiers and applied the same HLQ to all restored data sets. 


Module zos_operator now supports case sensitivity, if you are running operator commands that are case sensitive, you can now maintain case sensitivity with option case_sensitive=true. This is helpful in cases where a command is interacting with Unix System Services (USS) , for example:

ibm_zos_core.zos_operator:
   cmd: "S MYPROC,JOBNAME=MYPROC1, CONF=/usr/myproc/config'"

About the Author
Demetrios Dimatos is the IBM z/OS Ansible Core Senior Technical Lead with 17 years mainframe experience and over 20 years of development experience; having led multiple products ranging from client server technologies, administration consoles, IBM Open Platform (Hadoop - HDFS, MapReduce, Yarn) and Spark, Linux, and Solaris kernel development. 


The Development Team

Without the development team, this would not be possible. I would like to thank the amazing team who work with passion and perseverance on this project. 

  • Rich Parker
  • Ketan Kelkar
  • Oscar Fernando Flores Garcia
  • Ivan Alejandro Moreno Soto
  • Andre Marcel Gutierrez Benitez

Resources

IBM Ansible z/OS core on Galaxy
IBM Ansible Core Collection Repository on GitHub
IBM Ansible Core Collection on Automation Hub
Red Hat® Ansible Certified Content for IBM Z documentation