Automatiko 0.3.0 released

Brings Kubernetes Operators support and improved management

Posted by Automatiko team on March 29, 2021 · 4 mins read

We are pleased to announce a brand new release of Automatiko - 0.3.0

Highlights

  • Kubernetes Operators support based on Java Operator SDK
  • Error handling improvements
  • Versioned process variables
  • Process management UI enhancements
  • Variable initializer support for simple types

Kubernetes Operators support based on Java Operator SDK

Automatiko supports building Kubernetes Operators as workflows that improves visibility into what operator does. It provides complete integration with Java Operator SDK that hooks into Kubernetes cluster and registers watchers and more. At the same time it allows to have access to Kubernetes API server via Fabric8 Kubernetes client. Workflows can perform operations on Kubernetes API server via Service Tasks that get Kubernetes client injected and receive events from Kubernetes via message events.

Automtiko provides support for building operators directly in the Kubernetes cluster with live reload without a need to rebuld the image and redeploy. Have a look at this blog post to see it in action.

Operator as workflow image Workflow model of Kubernetes operator that allows MySQL schema provisioning with secrets creation.

Error handling improvements

Error handling has been improved to collect more information and present them in more accessible way.

  • Unqieue error identifier
  • Short and descriptived error message
  • Error details that can have relatively long information depending on the error
There is additional error section in Process management UI providing extra capabilities around error handling.

Versioned process variables

Data objects can now be tagged as versioned which will automatically track changes to them and make a copy to any non null values. That will then build up a list of versions given variable had. Versions are also avaiale to be easily accessed in the workflow definition which enables use cases that requite comparing received data with already processed. Users can easily get access to

  • the complete list of versions by refering to variable: person$
  • previous version of the variable previousVersion(person$)
  • any version by version number variableVersion(person$)
Above variables can be easily accessed in script tasks and any conditions like gateway or conditional events.

Variable versions in Process Management UI Automatiko process management UI versioned variables.

Process management UI enhancements

Process management UI has been significantly improved to bring not only visibility but also operations support

  • Allows to abort a workflow instance
  • In case of an error you can either retrigger or skip failed activitiy
  • Marks failed workflow instances in the Instances table
  • Display variables that are versioned with thier versions to compare or revert to
  • Workflow instance image has both completed and active nodes annotated
  • Workflow instance image has markers on activities that failed or are retrying

Error marker on workflow image Automatiko process management UI error marker.

Variable initializer support for simple types

Automatiko allows to tag variables (aka data objects) as auto-initialized which will ensure that the variable is initialized at the start of workflow instance. With this release there is alos support for simple types

  • boolean will have value set to false
  • any number type will have value set to 0
  • string will have value set to empty string

Photographs by Unsplash.