Hello @samccann , thank you for reviewing the draft PR and bringing it to the Ansible Forum, please allow me to comment on how we came about this PR and to do so, you might have to have a brief understanding of mainframes if you don’t already and endure my long response :).
To start, we have been working on Ansible collections for nearly 5 years, dating back to ansible 2.9, working closely when Red Hat Partners, engineering and others. So what we have been doing for 5 years? Well we have 6 collections, adding 2 more this year, spanning over 60 modules, over a 100 playbooks in our repository and all our collections are certified content. We have made contributions back to the community, sometimes we worked with partner engineering and provided the fixes, other times we opened issues, highlighted the problem area and provided a patch, there were not many of those and once you read down a bit further you will see why.
You can think of mainframe sort of how you think of a virtualization stack, z/OS is the operating system which in the past went by other names (MVS, OS390, etc), since virtualization has been around since the mainframes existence (50+ yrs) many other operating systems run on the mainframe, z/OS UNIX System Services, Linux on Z (RHEL, SUSE), zVM, etc. When in z/OS UNIX a POSIX complaint port, we deal with directories and files as you would expect, when in z/OS we deal with volumes, data sets and members, slight different paradigm.
Our z/OS collections are designed to interact with z/OS, so when we pair up a module like ansible.builtin.copy
to ibm.ibm_zos_core.zos_copy
we tend to cover z/OS and z/OS UNIX but not every module needs parity, for example we don’t need a ansible.builtin.git
module but we do need it to work correctly on z/OS UNIX , and that is where are heading after talking to @gundalow and @Steve_Fulmer. This first draft PR is just to level set the community that we are planning to contribute but not only on z/OS, we plan to be part of the community.
While mainframes may seem niche, they handle billions of transactions a day and we are increasingly narrowing the tech gap where we have Python, Go, Node.js and contributing upstream to over 100 other projects to support z/OS.
It is a legitimate concern to wonder if this would get unmaintained over time, all I can do is share with you that we have been here for 5 years and have no plans on going anyplace. The IBM mainframe business has been building over our ibm_zos_core collection, promoting Ansible as the automation strategy for all our mainframe clients, investing in Event Driven Ansible this year and doubled our investments.
To further level set, most of the communities modules work in z/OS UNIX, its only a handful that perform I/O operations like lineinfile, blockinfile, replace, etc that they don’t work correctly and where our dedicated team would be working to change this over time.
I will tag a few others who might have some added perspecive @allhart , @thedoubl3j @chynasan
If you made it all the way to the bottom, sincerely thank you 