Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce a new section for managing z/OS UNIX mainframe hosts with Ansible. #2424

Open
wants to merge 2 commits into
base: devel
Choose a base branch
from

Conversation

ketankelkar
Copy link

This is a recreate of draft PR #2387 with a clean commit log.

From #2387 description:

While still a niche, there has been a noticeable uptick in users targeting z/OS mainframe systems with Ansible.

Unfortunately, there are some specific and non-obvious steps required to establish a successful and sensible connection between the Ansible control node and a z/OS mainframe host.
Currently, there is no central and organized place for users to get all the necessary information. Some of the information is available on an external docsite, but a user has to know to go look there. And still the information available there is not complete, as the docsite is meant for the Red Hat Ansible Certified Content for IBM Z offering, which is a set of Ansible collections -- which is not the most obvious or ideal place to go looking for setting up Ansible. That would be the Ansible docsite.

This PR introduces a new section going over key details in managing z/OS mainframe target nodes. This includes some of the ambiguous configs required to get up and running, including getting readable content back from the z/OS host, and also goes over some of the limitations and work-arounds when using ansible-core "out of the box" with z/OS mainframes -- as the available functionality is not exactly on par with say a Linux host.

This PR also includes updates to the (now 5 year old) z/OS section in the FAQs page.

A discussion in the Ansible Community Forum on this topic can be found: here

@ansible-documentation-bot ansible-documentation-bot bot added the new_contributor This PR is the first contribution by a new community member. label Feb 24, 2025
@ansible-documentation-bot
Copy link
Contributor

Thanks for your Ansible docs contribution! We talk about Ansible documentation on Matrix at #docs:ansible.im if you ever want to join us and chat about the docs! We meet on Matrix every Tuesday. See the Ansible calendar for meeting details. We welcome additions to our weekly agenda items too. You can add the dawgs-meeting tag to a forum topic to bring it up at the next meeting.

Copy link

@ddimatos ddimatos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @ketankelkar for pulling this into a new PR. Looks good to me.

Using Ansible on Windows and BSD
################################
#######################################
Using Ansible on Windows, BSD, and z/OS
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't it explicitly say z/OS UNIX here? Confusing z/OS with z/OS UNIX was one of the big issues in https://forum.ansible.com/t/40091 after all.

.. _working_with_zos:


Managing z/OS hosts with Ansible
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

@@ -316,41 +316,69 @@ is likely the problem. There are several workarounds:
Running on z/OS
---------------

There are a few common errors that one might run into when trying to execute Ansible on z/OS as a target.
* Generally speaking, z/OS cannot be used as an Ansible control node. For more details, see :ref:`zos_as_control_node`.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also in this section, shouldn't it explicitly say z/OS UNIX?

Configure the Remote Python Interpreter
---------------------------------------

Ansible requires a Python interpreter to run most modules on the remote host, and it checks for python at the 'default' path ``/usr/bin/python``.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be either (if you mean Python, the programming language)

Suggested change
Ansible requires a Python interpreter to run most modules on the remote host, and it checks for python at the 'default' path ``/usr/bin/python``.
Ansible requires a Python interpreter to run most modules on the remote host, and it checks for Python at the 'default' path ``/usr/bin/python``.

or (if you mean python, the CLI program)

Suggested change
Ansible requires a Python interpreter to run most modules on the remote host, and it checks for python at the 'default' path ``/usr/bin/python``.
Ansible requires a Python interpreter to run most modules on the remote host, and it checks for ``python`` at the 'default' path ``/usr/bin/python``.

Same below in several other instances.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new_contributor This PR is the first contribution by a new community member.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants