►
From YouTube: Automating service delivery with bindings - Knative demo
Description
By Evan Anderson, software engineer at VMWare.
B
A
So
it's
just
a
little
doe
application
and
you
can
load
it
and
define
a
word
so
banana
and
it
will
go
to
there's
a
couple
different
sources
it'll
pull
from,
but
it
prefers
the
oxford
english
dictionary.
So
here's
some
definitions
for
banana,
which
is
all
well
and
good,
and
you
know
if
I
decide.
You
know.
Oh
maybe
I
should
say
style.
A
Yeah,
okay,
so
I,
don't
remember
how
to
do
inline
Styles.
This
is
not
about
how
I
know
or
don't
know
how
to
do
HTML,
because
clearly
I
don't.
But
so
you
know
my
local
development
loop
is
pretty
quick.
You
know
just
kill
it
and
restart
it,
but
then,
if
I
want
to
go
and
actually
run
this
on
K
native,
you
know
I
don't
know.
Can
people
read
that?
Does
it
need
to
be
a
little
bigger.
C
A
A
And
you
know
you've
all
seen
this
and
it
takes
some
time.
You
know
I
happen
to
be
using
go,
but
you
know:
there's
lots
of
different
languages
and
almost
all
of
our
stuff,
unless
you're
using
Co
kind
of
looks
like
this,
and
what's
even
better,
is
now.
If
I
want
to
push
this
I
realize.
Oh
wait.
I
forgot
to
tag
it
so.
A
A
A
But
but
you
know,
that's
that's
sort
of
your
typical
workflow,
but
wouldn't
it
be
great
if
your
workflow
could
look
a
little
bit
more
server-side,
driven
and
so
I'm
going
to
show
you
a
couple
of
tools
that
were
written
by
a
variety
of
folks
from
VMware
when
they
were
under
the
pivotal
umbrella.
So
some
of
these
come
from
project
Grif
and
some
of
these
come
from
kpac.
A
A
When
I
create
this
image
Hamel,
it
will
see
it
done.
It's
done.
I'm
also
gonna
show
off
octant
for
those
of
you
who
haven't
seen
it
it's
kind
of
a
nice
UI
on
these
things,
so
I
just
created
an
image
and
right
now
it's
not
ready
yet,
but
it
will
create
a
build
each
time
that
things
change
and
you
can
see
that
the
build
is
currently
progressing.
A
We'll
leave
that
back
there
doing
its
thing,
we'll
look
at
what's
actually
in
an
image,
so
an
image
defines
a
source
I've
just
pointed
at
github
and
master
branch
and
a
builder
which
gives
you
a
set
of
build
packs.
This
will
actually
build
a
lot
of
different
languages.
This
is
this
default.
Kpac,
1
and.
A
A
Yes,
do
all
the
saves
push
this
up
and
in
a
minute
or
so
we'll
see
another
build
kick
off.
Another
way
you
can
watch
that
is
with
Cube
control
at
build.
W
is
just
a
watch
on
builds,
so
you
can
see
right
now.
We
have
the
one
build
that
was
created
at
the
beginning
of
time,
but
we'll
pretty
soon
and
see
another
build
kick
off
as
the
image
notices
that
there's
been
a
commit,
and
these
are
various
stages
of
the
build
making
progress,
and
so
it
keeps
updating
the
status.
A
This
is
the
one
we
want.
So
if
we
look
at
build
define
here,
the
llamó
status
has
this
field
latest
image
and
if
you
all
are
familiar
with
duck
typing,
you
may
know
where
this
is
headed.
Anything
that
has
a
latest
image
you
can
see,
our
build
is
finished
and
the
latest
image
has
been
updated
to
build
to
our
friends
in
project.
Rif
have
created
a
created,
duck
type
controller.
A
A
A
So
yeah
this
is
some
of
this
is
early
prototype
code.
Some
of
this
is
semi
production
code,
none
of
it
who's
hooked
up
with
eventing,
so
there's
no
there's
no
registration
of
a
web
hook
or
anything
like
that
to
kick
the
build
process.
It's
just
doing
a
poll
on
github,
but
github
can
deal
with
some
polling
so
and
here
we
go,
it's
kicked
off
and,
let's
see,
while
we're
waiting.
Let's
take
a
look
at
that
service.
C
D
A
A
Since
we
have
two
image
bindings,
we
can
apply
the
same
thing
that
we
built
to
both
of
them,
which
is
less
interesting.
If
it's
a
knit
web
application
like
this,
but
if
it's
a
sidecar
you
could
potentially
push
a
whole
bunch
of
different
side
cars.
At
the
same
time,
let's
see
we
just
built
something
that
is
in
E.
Oh
look,
it's
already
updated
on
the
deployment.
Let's
go
look
at
this
Serkis
and,
of
course,
I'm
doing
a
live
demo,
so
the
service
didn't
get
updated
here.
D
A
A
D
A
A
B
A
A
A
A
Image
bindings
come
from
this
project
RIF
bindings,
and
they
have
some
nice
documentation
down
here.
That
shows
you
what
to
do
with
them
and
all
the
different
values
you
need
to
put
in,
but
yeah
the
exciting
thing
about
image
binding
is
that
it
should
work
not
just
with
Capek
but
with
anything
else
that
exposes
a
spec
test
image.
C
Awesome,
thank
you
so
much
for
the
demo.
Now
we
have
allotted
some
time
to
discuss
this.
Ideally
we
would
be
doing
this
on
individual
rooms,
but
we
were
not
able
to
enable
that
for
this
meeting.
So
we
can
open
the
floor
to
discuss
now
or
you
know,
share
any
comments
or
ideas.
This
may
have
inspiring
you
or
questions.
C
D
D
A
If
you
connected
the
github
event
source
and
use
that
to
poke
the
image
that
would
cause
the
reconciler
to
kick
off
and
decide
to,
you
know,
go
and
check
and
see
if
there's
anything
there
and
oh
look,
there
is
which
would
let
you
reduce
the
polling
interval.
It
would
look
like
webhook
to
something
running
on
the
cluster.
You
know
to
the
source,
which
would
poke
the
build
controller
and
then
would
kick
off
a
build
that
way
and.
D
A
A
They
have
these
source
types
and
so
a
source
can
be
a
get
or
a
blob
or
you
can
actually
pull
from
a
registry
and
they
all
you
can
take
a
sub
path.
So
you
can
say
not
this
whole
git
repo,
but
like
some
sub
path
of
the
repo
or
you
know
not
this
whole
tar
ball,
but
like
this
sub
path
build
from
there,
so
you
can
see,
get
has
URL
and
revision
blog
is
just
a
URL
and
a
registry.
A
You
can
pull
down
an
image,
so
you
can
package
your
your
source
code
into
an
image,
put
it
in
your
doctor
registry
and
then
pull
it
from
there
and
you
know.
Obviously
you
need
to
get
into
the
capex
source
to
extend
this
further,
but
it
would
be
doable
if
you
move
to
something
like
Tecton.
The
fetch
the
source
is
actually
a
separate
piece,
and
so
you
that's
probably
more
easily
pluggable.
The
listen
for
changes
is
a
little
bit
harder
with
Tecton,
which
is
why
I
chose
k
pack
right
now.
A
So
k
pack
is
is
very
focused
on
basically
building
a
single
docker
image
from
a
single
repo.
Tecton
is
basically
a
full-featured
workflow
system.
So,
if
you
want
to,
you
know,
use
multiple
repos
or
you
want
to
deliver
multiple
artifacts
to
different
places,
or
you
want
to
do
something
more
than
just
build
your
software.
You
know
if
you
have
a
more
involved
testing
process.
A
For
example,
you'll
find
that
k
pack
will
run
out
of
steam
fairly
quickly,
but
it
works
really
well
for
the
simple
case
of
I
have
some
code
and
I
just
want
to
turn
it
into
a
docker
image,
whereas
Tecton,
because
it's
got
so
many
more
capabilities.
You're
greeted
with
you
know,
ok
figure
out
what
you
want
to
do
and
how
to
describe
that
in
a
bunch
of
yeah
Mille
documents,
whereas
you
know
there
were
like
three
or
four
things:
I
had
to
like
intentionally
right
for
the
kpac
configuration
it's
pretty
minimal.
A
A
E
A
A
So
I've
been
trying
to
train
myself
to
actually
use
the
pretty
you
eyes,
rather
than
just
do
everything
from
the
command
line
and
then
curse
when
it
doesn't
work
well,
so
you
can
see
now
blink
is
no
longer
actually
a
valid
tag,
so
so
much
for
my
making
things
really
ugly.
Let
the
blood
tags
are
in
there.