►
From YouTube: Managed Releases with Spinnaker - Nirmalya Sen , OpsMx
Description
Managed Releases with Spinnaker - Nirmalya Sen , OpsMx
Spinnaker is a continuous delivery platform for releasing software changes with high velocity and confidence. But what if you are not doing continuous delivery? What if you are doing managed releases where the release manager based on lot of organizational and business criteria decides when to release, what to release. Can they use Spinnaker? In this talk, Nirmalya will show case how you can adopt Spinnaker's continuous delivery features to be able to make managed releases.
A
A
We
have.
We
are
an
experienced
team
with
people
who
have
worked
previously
in
companies
like
netflix,
cisco,
oracle
aws.
We
have
offices
all
over
the
u.s
and
india.
We
have
80
plus
employees,
and
we
are
very
active
in
the
open
source
community
working
with
spinnaker
kubernetes
jenkins,
and
we
have
you
know
significant
contributions
that
we
have
made
to
each
of
these
projects
as
service,
offering
we
provide
24x7
support,
manage
spinnaker
and
as
well
as
professional
services,
in
helping
you
onboard
and
automate
your
cd
pipelines
around
spinnaker.
A
With
that,
let's
get
into
and
look
at
what
is
spinnaker.
Spinnaker
is
a
continuous
delivery
platform.
It
originated
out
of
netflix
where
they
have
been
doing
continuous
delivery
at
the
rate
of
almost
8
000
a
day,
and
this
number
is
probably
from
a
year
ago,
so
that
number
may
have
even
gone
up
so
where,
where
does
a
typical
enterprise
set?
Is
they're
typically
able
to
make
releases?
You
know
earlier
was
seven
eight
months
is,
is
really
a
good
release
cycle,
but
maybe
they're
even
longer.
A
So
there
are
quite
a
few
continuous
delivery
tools
out
there.
So
what's
the
benefit
or
advantage
of
a
spinnaker,
it
includes
support
of
deployment
to
multiple
cloud
environments,
be
it
kubernetes
or
flavors
of
kubernetes
like
openshift
or
aws
azure,
and
and
that's
just
to
name
a
few
of
the
major
ones.
So
it
abstracts
out
the
cloud
and
allows
you
to
deal
at
an
abstraction
level
with
each
of
these
clouds.
A
I'll
take
a
few
minutes
right
after
this
to
show
you
spinnaker,
so
that
you
know
you
get
a
hang
of
it
before
we
get
into
how
we
do
manage
releases
like
I
said
it
allows
you
to
do
automated
releases
safe
deployments.
Like
you
know,
if
you
are
doing
that
many
releases
a
day,
how
do
you
know
that
a
release
went
out,
that's
bad,
and
then
how
do
you
recover
from
it?
A
So
there
are
built-in
rollback
mechanisms
so
that
you
can
test,
and
you
know
if
you
find
out
that
your
new
release
is
not
as
good.
You
can
easily
and
quickly
roll
back
automatically,
and
the
other
nice
thing
about
this
is
that
it
provides
you,
visibility
and
control
across
your
applications
across
the
different
cloud
providers.
You
don't
need
to
log
into
different
uis
consoles
for
different
vendors
and
providers,
and
and
have
visibility
and
control
over
what's
going
on
and
especially
in
context
to
the
application.
A
A
Maybe
at
this
time
we'll
I'll
spend
a
few
minutes
to
really
show
you
what
spinnaker
is
some
of
you
may
be
aware
of
it
if
you're
not
aware
of
it,
it's
really
good
to
those
of
you,
probably
I'll.
Take
four
or
five
minutes
to
spend
to
to
show
you.
Spinnaker
spinnaker
actually
has
applications
right.
Applications
are
things
that
your
departments,
your
organizations,
deploy
your
sales
applications,
your
marketing
applications.
A
So
if
you
go
into
any
applications,
you
can
see
what
are
the
infrastructure
behind
it
right.
You
have
your
clusters,
which
are
your
server
groups
that
serving
that
applications
you
can
have
load
balancers
behind
them.
You
can
have
firewalls
even
right
now,
spinnaker
stop
started
supporting
serverless
functions
and
you
can
manage
them
right
from
here,
so
you
can
think
about
an
application
being
represented
here
as
the
inventory
of
all
the
resources
that
are
part
of
your
application.
Right,
like
you
can
see
here,
you
can
have
different
providers
here.
A
You
can
manage
them
from
one,
so
you
can
have
the
same
application
being
deployed
to
different
environments,
some
to
aws
some
to
google
cloud,
some
to
some
kubernetes
environment.
So
only
you
can
do
all
that
in
the
context
of
the
same
application
and
you
can
have
also
different
accounts
in
there.
The
main
thing
is
especially
when
you're
doing
continuous
delivery.
A
You
don't
want
a
developer
to
push
code
straight
to
production
right.
You
want
dates
in
between.
So
that's
where
accounts
come
into
play
and
you
have
access
control
to
control
who
has
access
to
what
accounts.
A
Just
to
quickly
show
you,
you
know
the
ability
to
view
and
control
it.
So
if
I
go
look
at
this
say
there
is
this
application
right
over
here.
Let
me
just
find
one
that
I,
that
seems
to
be
more
current.
A
Let's
say
this
application.
That's
over
there.
I
can
see
all
aspects
of
that
application.
I
can
control
this
application
right
from
here,
including
scaling
it
out
if
some-
and
it
will
also
show
me
all
the
different
like
instances
running
in
that
application,
this
being
a
kubernetes
application.
These
are
the
parts
that
are
running
and
I
can
see
even
the
output
of
those
fonts
right
right
from
here.
So
I
don't
need
to
give
out
cube
cutter
files
and
all
that
for
people
to
access.
A
Now,
how
do
I
get
these
infrastructure
components
up
and
running
it's
by
virtue
of
these
pipelines?
That's
really
the
power
of
spinnaker,
where,
as
you
make
releases,
you
can
create
pipelines.
A
So
what
you
can
do
is
you
know
you
can
define
your
workflow
in
a
ui
way,
but
spinnaker
is
basically
what
it
you
can
call
as
pipeliners
code.
It
enables
github
type
operations,
so
you
can
have
all
of
these
as
a
code.
A
You
could
even
have
them
scheduled
to
run
at
frequent
intervals
right.
You
can
pass
in
parameters
to
your
pipeline
so
that
you
know
you
can
use
the
same
pipeline
to
be
applied
to
stage
one
first
and
stage
two
or
even
stage
and
production
to
just
vary
the
parameters
and
deploy
them,
and
then
you
can
have
also
notifications
being
sent
out
at
something
goes
wrong.
It
didn't
it
integrates
with
slack
email.
A
A
This
is
a
stage
that
actually
deploys
to
kubernetes,
so
there
are
tons
of
stages
built
in
first
class
objects
or
actions
that
are
built
in
that
allows
you
to
build
a
pretty
complex
pipeline
and
also
a
spinnaker
allows
you
to
extend
it
very
easily.
In
fact,
you
know,
part
of
my
demo
later
on
would
include
extending
spinnaker
to
enable
you
to
do
a
release
management.
A
You
know
this
is
all
good,
so
not
much
to
look
at,
but
if
something
went
wrong,
ceo
jenkins
will
fail.
You
have
a
link
straight
from
here
to
jenkins.
You
can
go
and
look
at
the
jenkins
pipeline
to
see
what
went
wrong
in
log
file
also
as
part
of
the
jenkins
bill.
A
Similarly,
you
know
you
can
see
the
results
of
deployments
like
this
was
a
a
deployment
that
happened.
You
can
go.
Look
at
the
actual
yaml
got
deployed.
You
will
notice.
Spinnaker
adds
a
lot
of
extra
annotations
so
that
it
can
manage
these
resources
successfully
and
you
can
even
go
look
at
the
the
resource,
so
it
will
show
you
that
is
a
resource
right
over
here.
Everything
about
that
resource.
A
So
that's,
in
short,
like
you
know
what
spinnaker
is
about
it,
basically
it
it's
like
an
inventory
of
your
application.
It
shows
you
all
the
infrastructure
behind
that
application
and
then
it
has
pipelines
for
you
to
deploy
that
application
in
a
continuous
fashion
right.
A
So
that's
a
good
tool,
spinnaker
right,
it
does
continuous
delivery.
Now,
like
I
showed
in
the
previous
slide,
each
company
organization
is
at
a
different
maturity
level.
A
So
what
if
I
am
not
doing
continuous
delivery,
I
do
not
want
code
moving
in
from
checking
by
a
developer
to
production
in
a
matter
of
minutes,
if
not
in
matter
of
hours,
if
not
minutes.
A
What?
If
I
want
to
choose
what
I
want
to
promote
to
the
next
stage?
What
if
I
want
to
choose
the
features
that
want
to
go
on
to
the
next
stage?
What
if
I
want
to
plan
and
schedule
a
release
where
you
work
with
the
stakeholders,
product
managers
qa
leads
to
define,
what's
going
out
and
then
also
have
these
different
stakeholders
sign
off.
What
needs
to
be
promoted,
sort
of
like
an
approval
process
is
spinnaker
not
for
me,
then.
A
The
question
that
comes
up
hey,
there's
a
lot
of
tools
out
there
that
orchestrate
this
process.
I
just
talked
about
all
these-
manage
the
releases.
What
goes
into
a
release
but
talking
to
a
lot
of
companies
unless
you
have
built
a
custom
solution.
A
A
Where
I
interacted
with
you
know
they
have
the
process
and
then,
when
it's
ready
to
be
done,
they
create
a
jira
ticket
assigned
to
someone.
Then
that
person
gets
the
jira
ticket
run
some
scripts.
Once
it's
successful,
they
assign
the
jira
ticket
back
to
someone
to
do
the
next
part
of
the
delivery
process.
A
So
that
whole
process
becomes
quite
long
and
in
in
the
process
you
know
sometimes
a
step
gets,
missed
or
or
the
ball
gets
dropped
and
you
have
a
broken
release,
so
the
cost
of
delivering
a
release
that
way
is
pretty
high
right.
A
A
So
an
approach
to
do
that
using
spinnaker
is
you
know
you
use
a
bill
of
materials
to
define
what
gets
released
based
on
everything
you
know
your
say:
release
manager
decides
that
you
know
of
this
10
releases,
I'm
going
to
release
version
a
of
the
software
version,
bro
version
a
of
a
component
of
a
software
version
b
of
a
component
of
a
software,
and
then
you
integrate
all
the
approval
process
in
it.
A
Like
you
know,
building
it
then
deploying
it
to
some
staging
environment
run
tests
with
it,
have
people
validated
and
then
get
approvals
to
move
it
on
to
the
next
stage
right.
All
that
can
be
achieved
using
a
spinnaker
pipeline.
What
does
it
look
like?
I
showed
you
a
pipeline,
so
example
of
such
a
spinnaker
pipeline
could
be.
Is
that
I
manage
my
this
bill
of
materials
and
I'll
come
to
an
example
of
a
bill
of
materials,
so
we
used
a
few
customers.
A
A
Things
like
hey.
I
want
to
make
this
release
to
only
say
u.s
region,
or
I
want
to
release
this
only
to
india
region
right.
A
So
all
those
also
you
can
include
as
part
of
this
bomb
file,
and
I
have
picked
up
your
pipeline
pick
it
up
and
deploy
having
this
pipeline
being
source
controlled,
it's
versioned,
so
you
will
know
what
got
released
when
you
can
have
an
approval
process
right
if
this
is
managed
and
get
you
edit
this,
and
this
becomes
your
source
of
truth
of
what's
being
released
and
approved,
and
once
it's
approved
and
merged
it
can
trigger
of
your
deployment
and
being
part
of
gate
or
any
other
source
control.
A
A
Let's
look
at
a
demo
of
that,
but
before
we
go
there
you
know
you
could
include
even
approvals
at
that
process.
Right
approvals
could
include,
you
know,
integrations
with
jira
or
service
now
or
policy
checks
with
confirm
for
conformance.
A
Like
you
know,
before
you
release
anything,
you
need
to
have
sonar,
cube
coverage
of,
say,
80
or
better,
or
you
want
to
have
your
image
scanned
with
no
critical
or
high
vulnerabilities
detected.
A
So
you
can
have
all
those
checks
built
in
not
rely
on
someone
to
run
the
check
and
give
you
a
thumbs
up
automatically
included
and
then
finally,
especially
when
you're
promoting
to
production,
if
you
are
not
ready
for
continuous
delivery,
you
want
some
manual
checks
in
there
before
you
promote
and
that's
what
you
can
actually
do
so
to
look
at
a
demo
here.
I
have
a
pipeline
just
like
we
talked
about.
A
You
know
this
is
exactly
the
pipeline.
I
talked
about
it's
triggered
by
a
bomb
file
change
which
I
will
show
it
to
you
and
make
a
change
and
trigger
it.
It
takes
in
a
parameter
of
a
namespace
so
that
you
know
to
show
that
I
can
control
deployment
to
different
spaces.
A
Then,
moving
on
to
the
next
stage,
this
is
where
the
sort
of
the
secret
sauces,
where
we
leverage
spinnaker
to
actually
read
the
file
and
and
inject
the
contents
of
that
file
into
a
spinnaker
pipeline.
You
know
here
is
a
little
script
to
show
that,
but
typically
what
you
would
do
is
you
would
encapsulate
this
in
a
custom
stage
and
make
it
available
in
spinnaker.
A
I
have
it
here
so
that
you
know
I
can
use
it
to
show
people
what
exactly
is
going
on
then,
based
on
that,
you
know
you
deploy
it
to
your
different
services.
You
know
I'm
taking
a
very
simple
case
of
deploying
an
nginx
and
postgres,
and
you
know
here
you
will
see
that
the
image
is
actually
I
am
making
it
a
parameter,
and
this
parameter
was
injected
into
the
pipeline.
In
this
stage,.
A
Once
I
deploy
the
services
I'll
do
a
validate
if
everyone's
satisfied
with
the
validation,
then
I'll,
promote
it
to
production
and
then
in
deploy
to
production,
it
picks
up
another
pipeline.
Does
that
does
exactly
the
same?
So
in
this,
while
I'm
deploying
to
production,
I
am
passing
in
the
same
bom
file,
the
reference
to
the
bom
file
and
the
version
to
the
deploy
to
production
so
that
it
picks
up
the
exact
same
bom
file
and
pretty
much
goes
through
the
same
process
injected
the
contents
into
the
pipeline
and
deploy
the
services
right.
A
Let's
go
look
at
the
bom
file,
which
I
showed
you
pretty
much
like
this
right.
You
have
the
different
services,
the
images
and
you
know.
Let's
say
I
want
to
decide
that.
Okay,
I'm
ready
we'll
be
upgrading
everything
to
the
next
version.
So
I
go
to
that
nginx,
I'm
moving
to
the
next
version.
Postgres
are
moving
to
the
next
version.
Everybody
looks
at
it,
comments,
everything
and
then
okay.
I
approve
the
change
it's
getting
committed.
A
A
Next,
actually,
you
know
that
it
did
it.
I
have
this
evaluate
variable
stage
to
show
that,
like
you
know,
if
I
look
at
what
ngnx
is,
it
tells
me
just
this
image
version
install
true
namespace.
It
shows
me
all
those
values
in
there.
A
A
A
A
Let's
wait
for
this
page
to
refresh
because
we
asked
it
to
deploy
the
next
versions
of
it.
Let
me
refresh
this
piece:
spinnaker
does
take
a
few
minutes
to
refresh
and
then
sync
this
information.
So
here
you
can
see
that
spinnaker
identified
that
the
next
version.
Actually
it's
getting
bigger
to
target.
Let's
look
at
target.
A
A
A
That's
all
I
wanted
to
demo
for
now
hope
you
found
it
useful,
and
you
know
if
there
are
any
questions,
I'd
be
happy
to
answer
them
right
now,
hello.
Hopefully
you
found
the
session
informative.
So
if
you
have
any
questions
on
the
session,
you
can
type
it
in
the
chat
and
I'd
be
happy
to
answer
them
yeah
for
everyone.
A
If
you
have
any
questions,
you
know
you
can
use
the
chat
to
ask
it
and
I'd
be
happy
to
answer
any
questions
you
have,
or
you
know,
if
you
have
any
other
questions
later
on,
feel
free
to
reach
out
to
me.
I
think
it
may
have
been
in
the
schedule,
but
it's
really
my
first
name
at
opsamextonio
as
well.
You
can
reach
out
to
me
there's
this
question
about.
Does
spinnaker
work
alongside
jenkins?
Yes,
absolutely
spinnaker
integrates
with
a
lot
of
existing
tools.
A
You
don't
need
to
really
throw
away
and
rewrite
everything
you
have.
You
can
use
your
existing
infrastructure,
including
jenkins.
A
A
So
there
is
that
both
bi-directional
integration
available
with
spinnaker
so
hope
that
answered
the
question
for
you
josh.
A
A
If
you
go
and
search
on
the
opsamex
blog
blog.opsomix.com
about
installing
spinnaker
with
helm,
you
will
find
a
blog
that
you
can
use
to
install
spinnaker
in
a
kubernetes
cluster
in
less
than
10
minutes
and
create
a
hello
world
type
application.
It
actually
does
walk
you
through
deploying
nginx.
You
know,
step
by
step.
Really
people
have
followed
it
and
then
been
able
to
get
up
and
running
with
spinnaker,
so
go
to
blog.opsimx.com
and
search
for
installing
spinnaker
with
helm
or
spinnaker
helm,
and
you
will
find
the
blog.
A
A
I
think
you
can
stick
with
spinnaker,
so
what
menika
tries
to
do
is
just
you
know,
provide
a
developer
version
of
it,
bring
it
up,
but
you
know
if
you
already
have
a
kubernetes
cluster
available
or
even
have
mini,
cube
running
on
your
machine,
it's
really
about
running
and
helm
chart
and
that
will
get
you
up
and
running
with
spinnaker.
A
So
what
you
should
do
is
you
know
the
blog
that
I
just
talked
about?
You
can
go
there
and
just
run
the
blog
in
less
than
10
minutes.
You
would
have
a
spinnaker
up
and
running
so
stick
with
spinnaker
how's
the
install
process
for
spinnaker
similar
question
so
which
is
good,
I
think,
just
to
play
around
with
spinnaker.
It's
simple
easy.
You
know
really,
if
you
have
a
kubernetes
cluster
available
less
than
10
minutes
really,
in
my
view,
using
the
helm
chart
that's
available
so
now.
A
Obviously,
if
you
want
to
go
to
production,
have
thousands
of
pipelines
running?
You
need
to
do
some
planning
around
that?
How
you
scale
up
the
components
how
you
set
up
for
aha
and
all
that
and
that's
where
I
think
we
come
in
and
help
you
can
help
you
guys,
but
you
know
just
for
playing
around
and
using
it
it's
it's
really
simple.
A
There's
one
more
question:
does
app
summits
provide
service
to
help
with
proof
of
concepts?
Absolutely
you
can,
and
you
know
any
tool
like
this
is
simple
as
well
as
complex.
You
know
it.
It
takes
a
while
for
you
to
understand
the
tool
how
to
use
it.
So
that's
where
definitely
we
can
come
in
and
help
you,
you
know,
understand
your
use
case
and
how
you
can
best
leverage
the
power
and
features
of
spinnaker
to
your
advantage.
A
So
you
know,
if
you
think
you
need
help,
definitely
reach
out
to
us
at
ops.
Okay,
we
do
have
a
booth
in
our
in
in
the
booth
area,
so
definitely
drop
by
or
reach
out
to
us
at
opsonics.com.
A
Okay,
I
think
I'll
take
one
last
question,
because
the
next
session
starts
in
five
minutes
and
this
one
is
spinnaker
was
built
as
a
cloud
agnostic,
how
much
how
it
is
much
flexible
with
non-cloud
environments.
A
Yes,
spinnaker
has
been
built
for
cloud
environments,
but
spinnaker
legacy
is
very
extensible
right.
So
if
you
have
apis
available
to
interact
with
your
non-cloud
environments,
you
could
definitely
use
spinnaker
to
interact
with
and
deploy
to
non-cloud
environments
too.
It's
a
very
extensible
tool
that
you
can
integrate
and
extend
to
do
other
things.
A
So
with
that,
I
I
think
we're
out
of
time.
Thank
you,
everyone
for
attending
thanks
for
all
those
great
questions.
I
hope
you
found
this
informative
and
if
you
have
further
questions,
you
can
either
reach
out
to
me
directly
at
nermalia,
opsamex,
dot,
io
or
visit
our
booth.