ibm_zos_core icon indicating copy to clipboard operation
ibm_zos_core copied to clipboard

[Epic] [community] [code] Identify remaining community modules for compatibility with z/OS

Open ketankelkar opened this issue 10 months ago • 0 comments

Primarily due to the differences in the base environmental assumptions of z/OS UNIX and other popular distributed platforms, the Ansible community code yields sub-optimal results in certain scenarios when used with a z/OS managed node.

Initial investigations identified ansible.builtin.lineinfile and ansible.builtin.blockinfile as community modules which did not work as expected for destination files encoded in EBCDIC. The underlying issue was that the module logic opened the files in read-binary mode (open('rb')). This approach works for files on managed nodes on popular distributed platforms because they tend to operate in UTF-8 only, so either a file is binary, or it is UTF-8 encoded text. For z/OS, there is a third option, EBCDIC encoded text files, which went un-addressed in the community modules mentioned above. There are mechanisms which convert non-UTF-8 encoded files to UTF-8, but those mechanisms are only triggered when file read/writes happen in text mode (open('r') or open('rt')).

Explore the remaining Ansible community modules and identify areas where compatibility for z/OS UNIX managed nodes can be improved/increased.

See also:

  • #1007

Also create new work items for any newly identified modules.

ketankelkar avatar Apr 06 '24 00:04 ketankelkar