►
From YouTube: Lightning Talk: Thinking out of the CI/CD Toolbox: An Experiment with a Workflow En... Nele Uhlemann
Description
For more Continuous Delivery Foundation content, check out our blog: https://cd.foundation/blog/
Lightning Talk: Thinking out of the CI/CD Toolbox: An Experiment with a Workflow Engine - Nele Uhlemann, Camunda
JW Grand Ballroom 2
Speakers: Nele Uhlemann
Continuous Delivery defines activities in a workflow. Known tools like Jenkins support those workflows and make the DevOps life easier. A process engine can automate workflows too. Join me for my little experiment and find out what I learned when using a workflow engine to automate a CI/CD workflow.
A
Yeah,
hello,
everyone
welcome
to
my
lightning
talk
about
workflow
engines
and
an
experiment
that
I
recently
did
in
terms
of
ci
cd.
Who
am
I
my
name
is
neela
and
I
work
at
a
company
called
kamunda.
We
actually
do
workflow
technology,
I'm
a
developer
advocate,
and
actually
I
put
here
the
butler
because
I'm
not
a
devops
person
and
I
have
to
confess
this
right
in
the
beginning.
A
So
I
guess
you
have
more
experience
when
it
comes
to
cdci
than
I
do,
but
still
I
tried
out
something
because
I
wanted
to
know
how
can
a
workflow
engine
maybe
fit
into
into
the
ci
cd
world
and
let's
have
an
understanding
what
a
workflow
engine
is
doing
so.
Basically,
the
idea
is
that
we
have
multiple
steps
defined
as
a
workflow
that
the
engine
then
executes,
and
you
can
see
here
a
language
that
is
graphical
but
executable
at
the
same
time.
A
That's
bpmn
and
that's
getting
quite
handy
if
you
look
at
operation
tools
and
stuff
like
that,
your
workflow
becomes
really
explainable
because
you
have
something
graphical
there
as
well,
and
the
steps
actually
can
consist
of
multiple
types
of
tasks.
So
you
can
have
code
that
is
connected
to
your
workflow
and
you
basically
add
it
to
your
code,
environment
and
then
you,
then
you
can
do
whatever
you
want
in
your
task
implementation.
A
Development,
build
test,
page
stage
deploy,
and
they
are
very
well
known
tools
that
help
us
building
this
pipeline.
I
think
that's
where
the
butler
picture
comes
from.
That's
why
I
relate
so
much
to
butler
when
I
talk
about
ci
cd,
so
doc.
So
docker
is
a
good
way
to
also
to
use,
but
jenkins
mainly
is
responsible
for
your
pipelines
and
using
a
workflow
engine.
A
Maybe
we
can
now
also
build
this
and
inside
the
workflow
engine.
That's
the
experiment
right,
so
we
can
do
that
and
define
service
tasks.
We
can
say
build
test
stage
deploy.
Actually
that's
not
a
good
idea.
Don't
do
that,
because
if
you
start
doing
that,
you
will
end
up
writing
a
lot
of
custom
code.
There
and
jenkins
already
provides
all
the
functionalities
you
need
here
to
do
the
testing
and
to
to
provide
the
pipeline
here
for
you.
A
So
in
general
that
is
not
or
that's
the
first
learning
from
the
experiment
don't
try
to
automate
something
where
you
already
have
really
good
tools
for,
but
then
what's
this
experiment
about
is
everything
like
for
the
waste
bin,
certainly
not
because
actually
ci
cd
is
not
just
about
the
pipeline
process,
it
is
even
beyond,
and
now
I
took
something
from
our
own
company.
We
do
open
source
software,
so
we
do
have
release
processes
and
the
release
process
can
get
quite
complex,
so
it
has
parts
before
the
pipeline
and
parts
after
the
pipeline.
A
So
let's
have
a
look
into
a
team
collaboration
when
it
comes
to
the
end-to-end
release
process
and
this
is
already
simplified.
So
there
are
even
multiple
steps
and
there
are
multiple
teams
that
need
to
collaborate.
So
we
first
need
to
make
sure
that
we
check
licenses.
If
we
include
other
packages
or
and
other
technologies,
we
have
to
make
sure
everything
is
within
the
open
source
license
definition.
A
We
have
to
build
a
release
candidate
and
then
we
do
certain
steps
like
adjust
the
documentation
and
also
prepare
blog
post
and
then
actually
here,
where
you
see
the
the
thick
line
around
it.
That's
where
actually
the
ci
cd
pipeline
starts,
but
then,
even
afterwards
we
do
certain
steps
with
different
teams,
and
you
can
see
already.
Some
steps
are
done
manually
where
you
see
the
user
task
and
some
stuff.
We
can
automate,
for
example,
like
release,
maven
central,
coordinates
and
release
the
java
docs,
and
you
can
imagine
now.
A
A
Another
part
is
what
is
if
your
test
scenarios
are
getting
more
complex.
I
recently
talked
to
someone
using
the
workflow
engine
actually
to
have
the
state
of
very
long-running
tests.
It
was
an
integration
with
external
services,
and
the
person
told
me
one
test
runs
for
three
days
and
during
that
three
days
it
can
be
very
beneficial
to
know
where
you
are
with
your
tests
and
have
someone
who
maintains
the
state
for
you,
because
that's
something
the
workflow
engine
really
can
do
for
you
having
the
state.
A
So
if,
if
you
have
that
or
if
you
have
that
scenario
where
you
feel
you
squeeze
in
something
into
a
tool
where
you
mean
where
you,
where
you
reach
the
border,
basically
of
that
tool,
you
might
think
maybe
there
are
other
solutions
and
a
workflow
engine
is
not
just
handy
for
handling
the
state,
but
also,
if
you
consider
batch
processing
where
it
can
become
very
handy,
is
you
have
an
operation
tool
that
is
able
to
show
you
when
you
have
problems?
So
it
shows
you
all
the
failure.
A
You
also
can
set
retries,
so
you
can
define
retry
strategies
and
you
have
a
way
to
observe
failure,
and
even
if
you
have
failure-
and
sometimes
you
expect
failure
within
that
language-
you
have
a
way
of
putting
that
into
your
workflow.
It's
a
handy
symbol
here.
It's
a
bpmn
error
event,
so
you
could
say
this
is
the
error
I
would
expect,
but
I
I
don't
want
to
finish
the
whole
thing
or
I
don't
want
the
whole
process
to
fail.
A
So
what
I
want
to
do
is
I
want
to
give
the
team,
maybe
yeah,
maybe
a
reminder
that
there
is
something
wrong
in
the
task
and
then
they
have
the
chance
to
fix
it.
And
then
basically
we
try.
So
you
have
the
possibility
also
to
define
the
retry
within
your
process
model
of
the
workflow
engine,
and
you
can
see
here
again
that's
on
java.
You
can
connect
that
to
your
java
code
and
then
throwing
this
error.
So
the
workflow
engine
can
accordingly
act
to
it
and
move
the
process
to
the
state
where
it
belongs.
A
So
what
are
the
takeaways
of
using
a
workflow
engine
when
it
comes
to
cci
cd?
So
I
think
the
first
one
is
to
to
have
an
overview
of
the
end-to-end
view
of
processes
of
release
processes,
so
it
does
not
stop
where
the
pipeline
stops,
but
normally
something
comes
before
and
something
comes
after
and
also
another
point
is:
if
you
have
more
complex
scenarios,
it
could
make
sense
to
look
into
the
options
how
a
workflow
engine
can
have
can
can
help
to
handle
state
and
more
complex,
yeah,
more
complex
scenarios.