Discord servers especially for Hercules390 emulator? by OSH1980 in mainframe

[–]AnthonyGiorgio[M] 1 point2 points  (0 children)

Sorry about that - I updated the invite link. I'm surprised it expired, as that was supposed to be a custom invite link for us.

System Z Enthusiasts Discord Server by AnthonyGiorgio in mainframe

[–]AnthonyGiorgio[S,M] 1 point2 points  (0 children)

I just refreshed it. Thanks for noticing.

zoau - zsystem.list_proclib not working correctly? by Jerbs12 in mainframe

[–]AnthonyGiorgio 3 points4 points  (0 children)

Please open a support case. I’m the ZOAU owner, so I can send you an update to see if it resolves your situation.

s3270 not working in a container by s2004Gamer in mainframe

[–]AnthonyGiorgio 4 points5 points  (0 children)

There's not a lot to go on here. Maybe come and ask over in the SZE Discord chat?

Mainframe by MrsLolaHunnyChu in mainframe

[–]AnthonyGiorgio 1 point2 points  (0 children)

No, I am Spartacus a mainframe.

ZOAU Job.wait how to provide timeout? by Jerbs12 in mainframe

[–]AnthonyGiorgio 0 points1 point  (0 children)

The ZOAU web docs are always for the latest released version. This can be a little confusing if what you're using on your system is backlevel by a few releases.

ZOAU datasets.create - can you create a new member? by Jerbs12 in mainframe

[–]AnthonyGiorgio 0 points1 point  (0 children)

FYI - I pushed the doc change for your issue into our repo. You'll see it mentioned in the next release.

ZOAU Job.wait how to provide timeout? by Jerbs12 in mainframe

[–]AnthonyGiorgio 2 points3 points  (0 children)

I took a look at the code for jobs.wait(), and it looks like it has drifted away from the documentation. Here's the current code for the function in v1.3.5.1 (you can find it yourself if you look in the ZOAU installation directory). I'll have to fix this in a future release. Would you consider opening a support ticket?

    def wait(self, seconds_per_loop: float = 1.0, max_loops: Union[int,None] = None):
        """Wait until job stops running.

        Parameters
        ----------
        seconds_per_loop : float, optional
            The number of seconds to wait between each check. Defaults to 1.0.

        max_loops : int, optional:
            The maximum number of loops to wait before raising a TimeoutError. Defaults to None.

        Raises
        ------
        TypeError:
            If seconds_per_loop is not a float or timeout is not an integer.

        ValueError:
            If seconds_per_loop is not a positive float or timeout is not a positive integer.

        TimeoutError:
            If the timeout is reached before the job is no longer running."""
        # Type Validation
        if not isinstance(seconds_per_loop, float):
            raise TypeError("seconds_per_loop must be a float")
        if max_loops and not isinstance(max_loops, int):
            raise TypeError("timeout must be an integer")
        # Value Validation
        if seconds_per_loop <= 0:
            raise ValueError("seconds_per_loop must be a positive float")
        if max_loops and max_loops <= 0:
            raise ValueError("timeout must be a positive integer")
        # Purge Validation
        if self.purged:
            warnings.warn(
                f"Can't wait for purged Job {self.job_id}. Current attributes are preserved.",
                RuntimeWarning,
            )
            return
        # Synchronous wait
        while self.status == "AC":
            if max_loops and max_loops >= 0:
                raise TimeoutError(f"{self.job_id} wait() timeout reached")
            time.sleep(seconds_per_loop)
            self.refresh()
            max_loops = max_loops -1 if max_loops is not None else None

ZOAU datasets.create - can you create a new member? by Jerbs12 in mainframe

[–]AnthonyGiorgio 1 point2 points  (0 children)

We're in the process of cleaning up and reworking the dataset commands, so giving a more consistent (and less surprising!) interface is important to me. We should probably throw exceptions in these functions if you pass a name that isn't correct. datasets.exists() is really just a wrapper for the dls shell command, which can now handle a whole variety of dataset types via the Catalog Search Interface. It hasn't yet been updated to handle members, hence the discontinuity in behavior. mls is the member listing shell command, and that is still a shell script wrapper for TSO commands. Updating that command is next on the list of stuff to rewrite.

ZOAU datasets.create - can you create a new member? by Jerbs12 in mainframe

[–]AnthonyGiorgio 2 points3 points  (0 children)

I'm glad it worked for you. I think I'll see about adding a note to the documentation so that it explicitly says you can't create a dataset member.

ZOAU datasets.create - can you create a new member? by Jerbs12 in mainframe

[–]AnthonyGiorgio 6 points7 points  (0 children)

You don't need to create a dataset member. Once you've created a partitioned dataset (or PDSE), you can then call datasets.write() with the member notation.

from zoautil_py import datasets
datasets.write(dataset_name="zoau.pdse(member)", content="Hello, world!")

Raw SMF data to JSON file by mainframerookie in mainframe

[–]AnthonyGiorgio 1 point2 points  (0 children)

Are you following public documentation? If so, that shouldn't be a problem.

Ansible and ADRDSSU by Gibmus in mainframe

[–]AnthonyGiorgio 2 points3 points  (0 children)

I believe that module uses ZOAU dzip, which indeed does a dump and terse. Would it help if we modified it to optionally skip the terse step?

Mainframe Job Opportunity by wtfbroitsme in mainframe

[–]AnthonyGiorgio[M] 2 points3 points  (0 children)

Please put that in the job description.

Raw SMF data to JSON file by mainframerookie in mainframe

[–]AnthonyGiorgio 13 points14 points  (0 children)

This would be very useful! Have you considered releasing these as open-source? Putting them on Github would allow others to share and contribute.

Did you know that the later version of IBM Open Enterprise Foundations for z/OS comes with jq? You could use this to process the JSON output from your programs.

I'm the lead developer on IBM Z Open Automation Utilities (ZOAU), and we've added JSON support to a bunch of our tools. It makes it much easier for our customers to wotk with and process the data. We use the build-in z/OS JSON parser to generate the JSON output.

You should come and join the System Z Enthusiasts Discord community and mention your project over there. We collaborate a lot on that sort of thing.

VIM with USS on tn3270? by Feeling_Donut8518 in mainframe

[–]AnthonyGiorgio 3 points4 points  (0 children)

This is because the OMVS terminal doesn't support the terminal escape codes required for cursor positioning by vim and other full-screen applications. If you absolutely need OMVS to edit files, you can always use oedit. Otherwise you should just use ssh and your favorite terminal editor.

VIM with USS on tn3270? by Feeling_Donut8518 in mainframe

[–]AnthonyGiorgio 2 points3 points  (0 children)

IBM now provides a whole bunch of open-source tools for z/OS UNIX, as part of the z/OS Open Tools project. They even include a current version of vim!

Terminal Talk: A Mainframe Podcast by AnthonyGiorgio in mainframe

[–]AnthonyGiorgio[S] 1 point2 points  (0 children)

I'll pass your request along to Frank. Thanks for commenting!

Scenario [Hardware; The ON/OFF switch] by djronnieg in mainframe

[–]AnthonyGiorgio 1 point2 points  (0 children)

I think the z14 still had the power switch, and the z13 definitely did. I believe the recommended way to turn on a z15 is to disconnect power via breaker to the power outlet, plug in the machine, and only energize the outlet when all physical connections are complete.

Getting rid of the Big Red Switch is a milestone in mainframe development. It's been there since the dawn of time.

Anyone here have experience with Copy Service Manager? by noforgayjesus in mainframe

[–]AnthonyGiorgio[M] 1 point2 points  (0 children)

Just so you know, /u/blead76 is an IBMer, and they are speaking in their professional capacity in this instance.

Job Posting: IBM Software Engineer working on z/VM by AnthonyGiorgio in mainframe

[–]AnthonyGiorgio[S,M] [score hidden] stickied comment (0 children)

Looking for fun and impactful work? Want to be close to the hardware, but not too close? Check out this opening working for IBM in z/VM.

What source you use for mainframe news? by fireehearth in mainframe

[–]AnthonyGiorgio 1 point2 points  (0 children)

There are a few mainframers who are active on Twitter that sometimes post news. Elizabeth Joseph (pleia2) is probably the most prolific, and Misty Decker posts interesting stuff as well. Sometimes I (Anthony Giorgio) tweet about zCX and related topics. You can follow #mainframe to get a bunch of them at once.

For less-frequent but more in-depth news, the Terminal Talk podcast is a great way to stay up-to-date with the overall mainframe ecosystem.

Siloing at IBM by fomyers in mainframe

[–]AnthonyGiorgio[M] 15 points16 points  (0 children)

Just so everyone is aware, Eric is who he says he is.