DevOps Heroes

Adding advanced automation to your toolbox

Eric D. Schabell
Portfolio Architect Director
@ericschabell
http://schabell.org

Navigation tips - Table of contents

Each lab provided by this workshop has a table of contents. Using this table of contents and general navigation provided for your ease of use.

Keyboard:
  • 'm' key = open / close table of contents
  • arrow keys = move forward / back through slides


Mouse click on:
  • bottom left icon = open table of contents
  • bottom right arrow icons = move forward / back through slides

The workshop goals for today

This workshop is designed to introduce you to a new tool for your toolbox. The goal is to install a process automation environment, and build a process automation project integrating DevOps testing into a fictional organization. We'll introduce you along the way to the Red Hat Process Automation Manager and end up with a functional DevOps testing process.
Prerequisites: Java 8+, Maven 3.6+, Red Hat Process Automation Manager 7.11, Red Hat Process Automation Manager Kie Server 7.11, JBoss EAP 7.3

Reviewing some DevOps basics

There are many aspects of DevOps sweeping organizations today, but before we start it's important to review the basic goals of DevOps. They focus on improving the delivery of your products and services, such as:

  • improved deployment frequency
  • faster time to market
  • lower new release failure rates
  • faster recovery from failures

Integrate process automation

When discussing the best DevOps practices, there are hints as to why we're going to take a look at integrating process automation in your toolbox. Here are a few common practices you'll discover in the DevOps world:
  1. concentrate on PROCESS above tooling
  2. AUTOMATE build of application environemt
  3. AUTOMATE testing (security) of applications
  4. AUTOMATE deployment of applications


This list shows why we're looking at a tool for capturing processes and enabling your DevOps automation.

Your new process tooling

Take a closer look at the tooling you're adding to your toolbox:

The Project - four eyes principle

DevOps testing (sub-)process

In this organization there's a large main process that automates the organizations DevOps. We'll be looking at a sub-process that automates the testing of a unit of code pushed by a developer:

The Project - description of process

In this process a code job is submitted by a developer, the automated rules are applied to determine if a code review is needed by peers (+50 lines of code submitted). A review is possible and done by a senior group if needed. Diverse logging documents process flow as job moves through the process before heading back for deployment. Ideal jobs pass for automated deployment.

Lab 1 - Installation

Lab Goals: To install and log in to Red Hat Process Automation Manager product
Let's get started with lab 1

Lab 2 - Create a new project

Lab Goals: To create a new project in Process Automation Manager business central workbench
Get started with lab 2

Lab 3 - Create a data model

Lab Goals: To create a new domain model with the Process Automation Manager data modeling tooling
Get started with lab 3

Lab 4 - Create a guided rule

Lab Goals: To create guided rule for calculating if peer review of submitted job is needed
Get started with lab 4

Lab 5 - Create a process

Lab Goals: To create a DevOps testing process using the process designer
Get started with lab 5

Lab 6 - Completing process details

Lab Goals: To complete the details of your DevOps testing process ensuring process validates in the designer tooling
Get started with lab 6

Lab 7 - Creating process and task forms

Lab Goals: To create process and task forms as needed for peer reviews
Get started with lab 7

Lab 8 - Running the process

Lab Goals: To build, deploy, and complete process including task forms for devops testing job. We want to run both a happy-path and a job that fails, ensuring coverage of all possible paths.
Get started with lab 8

The End

This completes the workshop, thanks for your time and feedback is welcome!

https://bpmworkshop.gitlab.io/rhpam-devops-workshop
Eric D. Schabell
Portfolio Architect Director
@ericschabell
http://schabell.org