A sample DevOps toolchain

In the previous post I promised to talk about the "Create" step in the Gartner toolchain. But I thought an intermezzo, showing a basic DevOps toolchain for z/OS would be nice.

In our simple, yet realistic, concept whe have three types of stakeholders:

  1. At least one person managing the issues (Jira)
  2. Developers using Eclipse
  3. Operations people using IKAN ALM

All stakeholders can stay in their comfort zone, because through Orchestration everybody has a view on the whole chain. By automating the "communication" between the different tools you gain time, avoid human errors and get a repeatable, fully documented (auditable) process.

Starting small

Let's start with an initial toolchain (start small, think big!) with Jira (to define requirements or issues), and the Eclipse IDE (for development) connected to Subversion (for versioning) and z/OS. Now, once the code is ready, it can be committed to the version control repository (Subversion). Entering the Jira issue number during commit is the only requirement for a developer, the rest is automated.

A simple setup like this will take less then a day to be production-ready!

How a simple mainframe Toolchain works

From within Eclipse, IKAN ALM can be instructed to compile the code (the build step). As a result, a developer can see his jobs and the results of these submitted jobs from withing Eclipse from the z/OS perspective (in Eclipse IDE). As you may notice: the developer stays in his comfort zone.

Figure 1:The Eclipse z/OS perspective with z/OS data set list, z/OS jobs and job45 display and the console telling you the IKAN ALM job was succesfully created.

What happens during a compile process

This is what happens when IKAN ALM receives the command from Eclipse to start the Build process:

  1. Get the source code from Subversion
  2. Create a compile JCL based on the auto-generated program properties (e.g.: just batch? ...or with CICS? ...or DB2?)
  3. Transfer the source code, copybooks and JCL to z/OS
  4. Submit the job on z/OS
  5. Get the results (load module, listing, sources,...) and put them in the IKAN ALM build archive

The results of the compile process

Build history

Figure 2: showing the IKAN ALM Build history: succesful build (compile), deploy to test and deploy to production running.

Full detailed overview of an executed job

Figure 3: IKAN ALM list of executed Phases to compile a COBOL program on z/OS. You can expand each phase and see a full logging

Compile results

Figure 4: the results of the IKAN ALM compile: listing, load module, COBOL source and COBOL program properties that are archived

Related Jira issues

Figure 5: List with JIRA issues that are part of this compile.

Additionally, you can open the JIRA ticket and see the update in JIRA telling what compile and promotes it has been part of.

Figure 6: JIRA with the created issue and the comment referring to the associated Build (compile) in IKAN ALM.

 

So, what happens after the compile process?

As a next step we could initiate a promote (or deploy) from within IKAN ALM to the z/OS test environments. This shows how easy it is to set up an initial toolchain that can be further enriched with extra steps or by functionality already used in other steps.

To summarize: in this example we took a standard Eclipse IDE, defined a z/OS connection and used the standard Java editor to edit COBOL code. You could "enrich" the Eclipse IDE in this example with a specific mainframe language (COBOL) editor plug-in.

An obvious expansion of your toolchain could include the addition of testing features. This as part of your Eclipse IDE or embedded in IKAN ALM as extra phases during the compile or promote actions.

We also published a short video on modern mainframe development with Jira, Eclipse and IKAN ALM, if you would like to see this all of this in action

In the next post

Next week we will cover the Create part (Code, Build and Configure) from the Gartner toolchain.

Form by ChronoForms - ChronoEngine.comAny question about DevOps and Toolchain Orchestration? Just ask us!

 

Get free insight!

Let's analyze your current mainframe development -and release process, and show you how to make it much faster and 100% reliable.

Yes, I want insight