►
From YouTube: TT220: Package, Configure, and Release
Description
This is a Tanuki Tech session on 12/9/2020.
For more on Tanuki Tech, see here: https://about.gitlab.com/handbook/marketing/revenue-marketing/sdr/tanuki-tech/
For more on the speaker, see here: https://www.linkedin.com/in/christopher-wang-0835b226/
A
All
right,
so
today's
session
is
about
package
configure
and
release,
and
really
what
we're
doing
today
is
we're
talking
about
some
additional
parts
of
our
product
that
aren't
as
intuitive
right.
So
we
know
about
scm.
We
know
about
ci.
A
We
know
about
security,
but
literally
we
do
maybe
around
60
to
70
percent
more
stuff
on
top
of
that,
and
so
what
we're
talking
about
is
ultimately
having
more
fruitful
sales
conversations,
having
better
conversion
rates
by
understanding
our
complete
value,
offering
and
especially
understanding
these
three
stages
that
are
outside
of
our
core,
offering
so
things
that
we're
going
to
do
is
we're
going
to
talk
about
why
our
customers
care
about
it?
What
this
stuff
does
from
a
technical
perspective
and
ultimately
how
we
can
incorporate
this
into
our
conversations
and
get
higher
quality
conversion
rates.
A
A
After
that,
our
automated
ci
runs.
This
is
the
value
of
git
lab
for
a
lot
of
people,
and
this
is
what
a
lot
of
people
think
of
when
they,
when
they
hear
get
lab,
they
think
about
our
ci.
They
think
about
our
security.
A
But
what
happens
now
right?
What
happens
beyond
the
ci?
What
happens
after
the
merge
request
is
finally
emerged.
Well,
that's!
Finally,
what
we're
talking
about
today,
so
literally,
what
we've
been
talking
about
so
far
if
you've
taken
tenuki
tech,
210
and
211,
is
these
four
stages,
so
our
sem
rci,
our
security
things
like
issues
and
what
we're
talking
about
today
is
we're
going
to
continue
this
story.
A
What
happens
beyond
the
merge
request
right
so
work?
That's
what
the
package
release
and
configure
stages
are
for
so
just
extending
this
functionality
and
the
reason
why
this
matters
is
because
this
is
how
we
beat
out
a
lot
of
our
competition.
There
are
some
other
tools
that
have
integrated
scm
and
ci.
A
So
that
being
said
on,
the
right
over
here
is
command
of
the
message
right,
so
our
analysts
they
basically
dug
through
our
sales
force,
found
out
why
we
win
why
we
lose,
and
then
they
found
out
that
our
biggest
three
differentiators
is
that
we're
a
single
application
for
their
entire
devops
life
cycle,
leading
integrated
scm
and
ci
and
built
in
security
and
compliance
right.
So
this,
ultimately,
is
why
people
buy
gitlab.
So
it's
important
to
sort
of
think
about
this.
A
The
right
way
as
these
three
things
that
we
just
talked
about
they're
the
main
dish
right.
This
is
why
people
come
to
the
restaurant.
They
want
a
pad
thai,
they
want
spaghetti
and
meatballs.
They
want
a
nice
hamburger,
but
really
what
we're
talking
about
today
is
these
are
like
the
appetizers
right.
So
this
is
the
glass
of
wine.
This
is
the
breadsticks.
A
A
So
picking
up
the
story
right,
we
had
a
merge
request.
Our
ci
runs
our
codes
merged.
Now,
what
happens
and
really
what
we're
talking
about
today
is
there's
only
really
three
options
and
it
depends
on
the
type
of
software
that
we're
talking
about
so
option.
Number
one
versus
option
number
two
versus
option
number
three:
this
depends
on
the
customer
use
case
right
and
I'll.
Just
give
you
an
example.
A
Everyone
here
has
downloaded
stuff
from
from
a
website,
and
then
you
click
a
button
and
it
says
download
one
pass
version
10.11
or
something
like
that
right,
so
option
number
one
is
that
I'm
a
business
I
sell
software
and
now
that
I've
had
my
merge
request
in.
I
want
to
make
my
new
version
of
my
software
available
so
that
people
can
download
it
right.
So
let's
talk
about
that
and
let's
just
dissect
a
little
bit
into
this
use
case.
So
that's
what
we're
talking
about
with
the
package
section
literally.
A
A
A
Yes,
alright,
awesome,
so
everyone's
downloaded
stuff
from
the
mac
store
gone
online,
downloaded
things
like
google
chrome,
but
one
of
the
things
that
you
all
might
not
be
aware
of
is
the
fact
that
you
can
actually
download
and
install
things
through
your
command
line
too.
So
each
platform
generally
has
a
different.
What
we
call
package
manager
so
for
mac
the
package
manager
is
this
thing
called
homebrew,
so
I
can
do
something
like
homebrew
install
this
thing
tree.
A
A
A
I
can
find
information
on
the
different
things
I
can
update
things
in
my
system.
I
can
also
do
troubleshooting
and
so
on
and
so
forth.
So
the
bottom
line
is
that
I
can
install
things
using
brew.
Brew
is
something
called
a
package
manager
and
every
single
domain
in
tech.
So
if
you're
in
a
python
domain,
there's
a
python
package
manager
if
you're
in
the
mac
os
domain,
there's
a
mac
os
package
manager.
A
If
you're
in
the
windows
domain,
there's
this
thing
called
chocolaty
and
then
that's
the
tool
that
you
use
to
install
stuff.
But
that's
the
idea
with
this
is
that
there's
just
many
different
package
managers
that
are
out
here
and
so
let
me
just
sort
of
dissect
and
show
the
python
package
manager
too.
A
So
the
pack,
the
python
package
manager
and
package
platform
is
this
thing
called
pi
pi
and
if
I
go
over
here,
I
can
go,
find
and
install
and
download
stuff
right.
So,
let's
just
go,
and
we
can
see
that
there
are
over
200
000
things
that
I
can
download
on
here
individually,
there's
over
3
million
files
and
people
make
their
stuff
installable
and
findable
on
pi
pi
right
if
they
want
it
consumed.
That's
why
they're
such
a
large
user
base,
so
I
used
to
work
on
this
tool
called
ansible.
A
If
I
scroll
into
here,
you
can
see
that
we
can
install
it.
I
can
download
these
files
here
with
this
button,
so
I
want
to
take
a
look
at
what
the
actual
stuff
that
I'm
installing
is.
This
is
a
link
to
the
actual
source
code
and
so
on
and
so
forth.
So
pi
pi
is
just
an
example
of
one
place
in
which
we
can
install
stuff.
A
So
the
whole
point
with
this
is
that
if
I
want
to
store
stuff
on
pi,
pi
or
many
other
package
managers,
then
generally
there's
one
of
two
different
ways
for
me
to
do
it
either
a
if
it's
some
sort
of
shared
platform,
then
this
is
an
actual
sas
offering
and
if
I
want
to
store
stuff
on
here,
then
it
costs
money
right.
So
it's
an
additional
account
that
I
have
to
set
up
that
I
have
to
create
credentials
for
it.
A
So
what
we're
talking
about
is
having
your
own
machine,
that's
storing
all
of
these
files
that
cost
money
and
it's
another
thing
that
you
need
to
set
up,
configure
and
manage.
So
what
we
do
here
for
gitlab
is
that
we
actually
include
all
of
this
within
gitlab
itself,
so
you
don't
need
additional
servers
for
it.
A
You
may
actually
consolidate
the
number
of
accounts
that
you
have
ultimately
saving
you
tools,
time
and
money,
and
the
specific
things
that
we're
talking
about
here
is
many
different
type
of
files
that
we
can
support
so
over
here
on
the
bottom
left,
you
can
see
the
different
package
types
that
can
be
included
in
gitlab
itself.
So
if
you
have
things
like
go
files
go
as
a
programming
language,
we
can
do
that
if
it's
javascript,
we
can
do
that.
If
it's
python,
we
can
do
that
and
so
on
and
so
forth.
A
A
All
right,
so
it's
it's
early,
I'll,
just
jump
right
in
so
traditionally,
like
applications
have
been
deployed
in
one
format
and
the
new
and
latest
and
greatest
and
cool
format
to
package
and
deploy
your
applications,
and
this
is
this
is
excuse
me
in
this
thing
called
a
container
and
the
reason
why
containers
are
good
is
because
businesses
save
money
and
they're
able
to
do
things
they
weren't
able
to
do
before
right
now,
maybe
around
five
to
ten
percent
of
the
entire
market
is
using
containers,
but
in
the
next
five
years
the
industry
is
going
to
consolidate
on
containers.
A
So
this
is
the
latest
and
greatest
and
new
way
of
doing
things.
So
this
is
also
something
that
I
think
is
better
demonstrated
than
and
talked
about.
But
if
I'm
an
engineer-
and
I
want
a
container-
I
typically
go
on
this
site
called
docker
hub
and
I
can
download
all
this
really
cool
stuff
right.
So,
if
I'm
an
engineer-
and
I
need
to
create
a
database
for
my
environment,
I
can
go
download
mri
db.
I
can
go
download
my
sql
and
then
after
I
configure
it
now.
All
of
a
sudden.
A
I
have
a
database
running
in
a
container
in
my
environment.
Super
easy
right.
So
if
I
just
click
on
here,
you
can
see
that
this
has
been
downloaded
over
1
billion
times.
So
it's
a
hugely
popular
way
of
getting
applications
is
using
docker
hub
and
there's
many
other
types
of
applications
that
can
get
off
of
here.
I
can
get
web
servers
I
can
get.
A
A
But
if
and
then,
let's
now
click
off
of
verified
publisher
right,
one
of
400,
available
images.
Now,
let's
talk
about
all
the
other
random
stuff
that
people
are
uploading,
that
we
really
have
no
idea
who
the
publisher
is,
and
it's
not
official.
It's
not
supported
right,
all
of
a
sudden,
I
scroll
out,
and
then
there
are
over
four
million
three
hundred
thousand
available
images.
So
just
for
remember
that
number,
let
me
go
down
to
verified
publishers,
that's
400..
A
Official
images
is
160
versus
out
of
a
total
of
4
million
300
000,
and
basically,
what
we're
showing
here
is
the
fact
that
the
vast
majority
of
the
containers
that
are
on
here
are
completely
insecure.
Some
random
person
uploaded
it,
we
don't
know
who
they
disappeared,
could
have
a
vulnerability.
Some
of
these
actually
have
malicious,
like
problems
with
them
that
someone's
trying
to
exploit
and
get
into
other
people's
stuff.
A
A
lot
of
it
is
just
people
being
lazy
right
and
the
big
problem
with
this
is
that
this
is
just
how
everyone
is
using
getting
containers
today,
and
so
the
point
of
this
is
that,
if
you
are
a
customer
that
needs
to
go
store
your
container
somewhere,
then
you
can
use
docker
hub,
create
a
new
account
pay
money
to
do
that,
integrate
it
with
the
rest
of
your
stuff
or
you
can
use
gitlab.
So
what
we
do
with
this
is
that
you
can
actually
store
your
container
images
in
the
gitlab
server
itself.
A
That's
one
less
tool
to
think
about
it's
one,
less
thing
to
configure
and
monitor
and
manage
and
integrate
and
alt.
You
save
license
costs,
and
now
it's
way
more
consolidated.
If
you're
a
security
conscious
customer,
then
your
gitlab
server
is
on-prem.
It's
not
in
the
cloud
versus
docker
hub,
which
is
going
to
be
running
on
someone
else's
servers,
as
you
can
see
over
here,
docker
hub,
the
pricing,
it
just
cost
per
user
per
month,
and
so
it's
just
something
to
think
about.
A
Also
in
terms
of
kubernetes,
so
brief
overview
of
what
kubernetes
is
is
that
if
we
want
containerized
applications
that
are
running
in
a
cube
environment,
then
it's
a
different
type
of
downloadable
file.
It's
called
a
helm
chart,
and
so
there
are
sites
that
store
this
and
the
whole
idea
is
it's
just
another
example
of
it's
a
very
similar
concept
to
docker
hub
right.
So
here
are
official
and
verified
publishers,
very
simple
and
similar
concept,
and
then
I
can
go
find
things
that
I
want
to
install.
A
But
the
problem
with
this
and
all
these
other
sites
is
that
they
cost
money
and
is
another
thing
to
integrate
and
think
about
gitlab,
whether
or
not
you
want
a
docker
hub
account
because
you're
saving,
container
images
or
if
you
want
some
place
to
save
your
kubernetes
installer
files,
which
is
called
a
helm
registry,
we
actually
do
that
in
gitlab
itself,
which
is
just
another
example
of
tool
consolidation.
That's
the
theme
of
today's
session
is
tool
consolidation.
A
All
right
so
moving
on
so
get
lfs
is
something
that
we
hear
about
from
time
to
time,
and
I
just
want
to
talk
about
the
story
of
get
lfs
so
around
10
years
ago
there
was
a
lot
of
different
version,
control,
softwares
subversion
and
mercurial
that
were
more
widely
used.
We
didn't
really
know
who
the
winner
was
going
to
be,
and
then
what
ended
up
happening
is
that
the
market
started
consolidating
on
git.
A
It
was
made
by
this
really
famous
person,
and
then
people
decided
that
this
was
the
solution
that
they
wanted
to
go
with.
The
problem
was,
however,
that
git
is
really
really
good
for
cern
types
of
files,
but
for
large
files
it
is
actually
bad
at
so
our
customers
that
are
producing
movies
that
are
designing
video
games
that
because
they're
working
with
like
these,
like
4k
video
files,
like
they
wouldn't
use
a
git
based
solution,
simply
because
that's
just
what
git
is
bad
at
right.
A
So
around
four
or
five
years
ago
there
was
many
different
solutions
that
were
trying
to
being
created
to
basically
fix
this
and
git
lfs
was
one
of
these
solutions
that
was
created,
and
so
this
isn't
something
that
only
gitlab
offers
github
actually
offers
this
too,
and
you
can
actually
get
get
lfs
outside
of
either
of
those
offerings.
You
don't
need
github
or
gitlab
to
use
git
lfs,
it's
something
that
you
can
create
on
your
own.
A
So
the
good
thing
about
this
is
that
this
is
just
another
example
of
tool:
consolidation
right.
So
if
someone
were
creating
their
own
git
server,
they
wanted
to
have
get
lfs,
that's
more
integration
and
things
to
worry
about
if
they
want
to
use
it
with
git
lab.
It's
all
now
centralized,
there's
one
ui
in
which
you
can
look
at
everything,
and
it's
just
another
example
of
how
we
have
functionalities
to
serve
more
customers.
Now,
all
of
a
sudden,
we
can
serve
these
media
production
and
video
gaming
companies.
A
All
right
can
I
help
clarify
any
questions
about
any
of
the
package
stuff,
but
in
general
the
theme
is:
this
is
how
we
differentiate
ourselves
right.
We
know
about
scmci
security
issues.
All
this
other
stuff
happens
beyond
the
merge
request,
and
it
is
part
of
our
fundamental
value
offering
and
articulating.
This
is
how
we
can
differentiate
ourselves
from
some
of
our
competitors.
We
are
better
at
all
this
other
stuff
than
our
competitors
are
right
now.
So
this
is
how
this
is
part
of
our
differentiation.
B
A
C
No,
it's
okay!
I
just
want
to
make
sure
I
understood
basically,
as
when
other
companies
will
have
different
servers
for
the
downloading
of
the
packages.
We
do
it
on
the
same
application.
Is
it
correct.
A
Yeah,
so
in
general,
when
we
talked
about
these
packages,
fundamentally,
businesses
are
creating
apps.
The
apps
are
getting
saved
in
a
certain
type
of
format.
Right
so
just
like
how,
when
I
buy
stuff
off
the
internet,
it's
coming
in
different
types
of
boxes
boxes.
Sometimes
it's
like
an
envelope,
then
the
different
types
of
apps,
a
python
will
come
app,
will
come
in
a
certain
python
package.
A
mac
app
will
typically
come
in
a
dmg
file
right.
A
So
when
I'm,
if
I'm
a
shop,
that's
creating
all
of
these,
I
need
to
store
all
of
these
files
somewhere
and
get
lab.
Does
this
through
our
package
stage?
We
allow
you
to
store
container
images,
helm
installers,
which
is
a
kubernetes
installer.
A
A
So,
in
other
words,
if
I
were
a
business,
I
want
people
to
install
my
stuff.
I
can
put
it
on
docker
hub.
What
we
do
with
gitlab
is
that
we
house
everything
internal
to
the
gitlab
server
and
that's
tool.
Consolidation.
A
Sometimes
we
need
less
servers,
but
the
story
is
that
customers
don't
go
to
our
gitlab
server
and
get
it.
You
still
need
to
set
that
up,
but
it's
so
for
internal
downloading
and
storing
of
software
in
these
packages.
That's
something
that
we
do.
A
Great
okay,
so
we
talked
about
what
happens
after
the
merge
request.
If
one
of
it
is
that
our
software
is
packaged
as
downloadable
packages,
then
that
needs
storage
somewhere.
We
can
store
that
on
the
gitlab
server,
it's
still
an
additional
step
to
make
that
available
to
the
public,
but
at
least
the
immediate
step
of
storing
finding
a
place
to
store
it.
That
is
something
that
gitlab
does
so
now.
Let's
talk
about
option
number
two
and
option
number
three.
A
So
let's
just
say
that
we're
web
designers
fundamentally
we're
working
on
a
web
application,
that's
what
our
business
does
and
we
created
a
new
merge
request
that
merge
request
is
about
updating
our
website.
Now,
there's
two
things
that
we
can
do
with
this
one
is
that
we
can
update
our
existing
web
servers
because
we
will
work
really
hard
at
this
new
feature
on
our
website.
We
think
that
it's
gonna
increase
our
web
traffic
and
we're
gonna
get
more
money
from
it.
So
obviously
we
want
our
customers
to
see
it
right.
A
The
other
thing
that
we
can
do
is
that
we
can
create
all
new
web
servers
and
kill
the
old
ones
so
different
customers.
They
do
option
two
and
option
number
three,
depending
on
their
use
case.
It's
not
like
one
use
case
is
better
than
the
other.
It
just
depends
on
what
the
customer's
application
actually
is
and
what
they
care
about,
but
now,
let's
talk
about
how
gitlab
can
serve
to
help
out
with
both
of
these
two
options.
A
So
this
is
what
we're
talking
about
with
the
release
and
configure
stage
all
this
stuff
down
over
here.
This
is
what
we're
talking
about
we're
talking
about
creating
new
servers,
we're
talking
about
updating
our
servers,
and
this
is
basically
great.
We
got
new
merge
request.
How
do
we
actually
get
this
on
our
website
so
that
now
our
customers
are
happier
or
see
the
business
value
of
our
merge
request.
A
So
it's
important
before
we
dive
into
how
we
do
it
that
we
have
to
understand
how
a
lot
of
our
industry
is
doing
it
so
around
10
years
ago.
The
method
that
I'm
talking
about
was
basically
universally
adopted
and
what
we've
seen
in
really
the
last
three
years
is
that
the
industry
is
adopting
new
ways
of
deploying
software
applications.
A
So
the
old
way
of
doing
it
is
that
there
was
just
just
continuous
loop.
You
had
your
developers,
they
would
they'd
work
on
some
code
right
eventually
what
they
would
do
is
they
get
a
new
server
and
then
put
their
new
code
on
it.
So
that's
the
whole
develop
phase
after
that,
there's
usually
another
team
that
comes
on
verifies
that
everything
works
and
then
so,
if
it's
a
new
part
of
your
website,
they'll
click
on
all
your
buttons
and
things
like
that.
A
The
next
part
is
that
you're
going
to
put
it
into
what
they
call
a
staging
environment
and
what
a
staging
environment
is
that
it's
really
really
really
close
to
being
put
into
production.
All
I
have
to
do
is
flip
a
switch
and
then
it's
into
production
right.
A
A
I
added
a
couple
of
new
web
servers
to
my
fleet,
and
so
the
big
problem
with
this
is
that
typically
there's
one
team
that
develops
there's
another
team
that
tests
there's,
maybe
a
production
team
that
does
staging
and
deploying
and
the
problem-
is
that
every
single
time,
because
there's
different
silos,
this
entire
process
might
take
a
month
and
a
half
to
two
months.
If
someone
goes
on
vacation,
then
the
entire
process
stops
right.
A
So
let's
just
say
that
there's
only
one
person
who
knows
how
to
do
the
final
deploy
step
in
a
small
business,
he
goes
on
vacation.
Well,
all
of
a
sudden,
we
can't
roll
out
our
new
applications
right,
and
so
this
is
the
antiquated
way
of
doing
things.
There
are
a
lot
of
people
who
still
do
this
and
a
lot
of
people
are
trying
to
figure
out.
What's
the
next
best
step
I'll
give
you
an
example
of
this.
A
I've
actually
worked
when
I
was
an
engineer
every
once
in
a
while,
I
would
have
to
upgrade
around
10
servers
and
before
we
had
a
good
solution
for
doing
this.
What
I
would
do
is
I'd
log
into
the
first
server.
A
Do
the
engineering
stuff
needed
to
upgrade
it,
and
then
I
would
check
that
the
wait
for
the
upgrade
to
finish
check
that
it
actually
worked
log
out
and
then
do
the
exact
same
thing.
The
second
server
log
out
do
the
exact
same
thing,
the
third
server,
and
then
basically
it
was
really
stressful
right.
The
entire
thing
was
super
time
intensive.
It
was
prone
to
me
making
mistakes
because,
like
I'd
be
in
the
middle
of
the
third
server,
someone
would
come
to
talk
to
me.
I'd
forget
what
I
was
doing.
A
I
don't
remember
like
exactly
what's
needed
left
right,
so
it's
basically
like
really
really
really
problematic
to
do
things
this
way,
and
unfortunately,
many
of
the
people
that
we
talked
to
still
have
used
this
type
of
rollout.
A
So
the
problem
with
when
people
do
this
manually,
I
think
that
everyone's
checked
a
website
and
they
say,
like
hey,
we're
going
down.
Just
a
warning
that
we're
going
down
like
saturday
at
midnight
for
three
hours
you
can
log
back
in
sunday
at
three
am
right
and
during
that
outage
window
what's
happening
is
that
those
engineers
are
actually
working
on
upgrading
their
website
and
they're,
making
sure
that
everything
works.
A
That's
the
reason
why,
whenever
you
see
something
like
that,
that's
generally
what's
happening,
and
when
people
do
all
this
manually,
one
it's
prone
to
error
right.
If
someone
interrupts
me,
I
go
to
get
coffee.
It's
very
easy
for
me
to
forget
what
I
was
doing.
If
I
had
20
servers,
50
servers,
it
just
becomes
way
more
complicated
right,
it's
hard
to
revert
changes
because
there's
no
automation
in
place,
and
ultimately
it's
not
scalable.
A
A
A
I've
done
this
before
and
also
upgrades
are
released
less
frequently
right
so
from
a
business
perspective,
let's
just
say
that
we
put
20
of
our
entire
budget
into
engineering,
but
because
of
how
much
work
is
involved
into
getting
new
versions
of
our
website
released.
If
it's
this
painful,
then
we're
just
going
to
have
to
do
it
less
right.
A
A
So
let's
talk
about
the
modern
deployments,
and
these
really
have
been
rolled
out
in
the
last
three
years,
so
many
of
our
customers
are
starting
to
adopt
them.
I'd
say
that
if
you're
talking
with
an
enterprise
customer,
they
probably
have
some
solution
in
place
like
this.
Really,
what
we're
talking
about
is
using
a
dedicated
tool
to
manage
upgrades
and
roll
back.
So
what
a
rollback
is
is
it's
like
the
upgrade
didn't
work.
A
Let's
go
revert
all
of
our
machines
right
and
so
ultimately,
some
of
the
key
components
to
all
these
tools
is
that
there's
automation
makes
things
easy,
reduces
human
mistakes.
It'll
include
dashboards
for
monitoring
on
the
bottom
over
here
is
an
actual
image.
A
Screenshot
of
what
gitlab
looks
like
when
we're
doing
a
rollout
and
as
you
can
see,
we
can
show
so
it's
like
before
I
had
a
dashboard
when
I
was
upgrading
these
10
servers
like
I
had
to
go
log
into
each
10
server
verify
that
it
worked
log
out,
but
maybe
there'd
be
one
central
console
that
shows
me
over
here
with
gitlab,
it's
100
complete
how
many
servers
are
updated.
All
10
of
them
right
are
there
any
and
failed
pending?
Are
unknown
states
zero?
All
ten
of
them
are
green.
Therefore,
I'm
done.
A
I
don't
need
to
log
into
ten
servers
check
and
then
log
out
right.
So
that's
what
we're
talking
about
with
dashboards
for
monitoring
and
then
the
next
thing
is
allowing
for
advanced
deployment
strategies.
If
you
are
netflix,
if
you
are
youtube,
if
you
are
facebook,
you
need
to
have
advanced
deployment
strategies,
there's
no
way
that
you
can
be
a
modern
e-commerce
or
e-video
platform.
Unless
you
have
this,
so
it
is
necessary
for
your
business.
A
The
last
component
of
modern
deployments
is
that
they
typically
leverage
the
public
cloud
and
the
reason
why
is
because
the
public
cloud
is
a
this,
like
vast
pool
of
resources
right
so
using
something
like
aws
or
microsoft,
azure
I
can
get
10
50,
100,
10,
000
servers
within
a
couple
of
minutes
and
the
ability
to
scale
up
and
down
quickly
is
something
that
these
enterprises
really
need
right.
So,
let's
just
say
that,
like
there's,
some
huge
release
of
some
blockbuster
film
on
netflix
there's
a
lot
of
people
that
are
watching
it.
A
The
ability
to
leverage
a
public
cloud
is
basically
what
I
need
to
predict
and
anticipate
some
sort
of
and
handle
like
a
event
like
that.
So
let's
actually
talk
about
some
of
these
deployment
strategies.
Now,
first,
one's
called
rolling
deployment.
It's
and
let
me
just
set
the
context
of
some
of
this.
The
goal
of
this
conversation
isn't
so
that
we're
super
technical,
but
the
goal
of
this
conversation
is
so
that
the
next
time
that
you
hear
about
this
in
an
email
or
a
customer
conversation
you
can
say
how
are
your
rolling
deploys
going?
A
Well,
that's
really
great
because
and
then
being
able
to
leverage
and
be
a
thought
leader
right
and
add
more
customer
value
to
some
of
these
customer
conversations.
So
let's
talk
about
a
rolling
deploy.
How
rolling
deploy
works
is
its
sounds
exactly
it's
exactly
how
it
sounds.
So
there's
two
servers
here,
my
environment.
A
We
turn
the
first
server
off,
we
upgrade
it.
Then
we
turn
it
back
on
and
then
once
it's
back
on,
we
turn
the
second
one
off
we
upgrade
it.
Then
we
turn
it
back
on
and
then
we
just
go
down
the
line
right.
So
if
there
were
10
servers,
we
would
do
it
from
the
first
to
the
second
to
the
third
to
the
fourth
all
the
way
down
the
line.
This
is
the
most
popular
way
of
deploying
new
applications
today
and
there
are
advantages
and
disadvantages
to
it.
A
And
let's
talk
about
some
of
the
more
advanced
options
now
and
keep
in
mind
if
you
had
an
automated
tool
of
doing
this,
this
would
have
saved
me
several
hours
like
every
month
and
it
saves
ultimately
engineers
to
be
able
to
do
this
from
an
automated
fashion,
using
a
dashboard
to
just
click.
Things
click
the
play
button,
it's
a
huge
time,
saver
reduces
human
error,
allows
you
to
more
reliably
deploy
the
next
version
of
your
application.
A
A
If
your
facebook
gitlab
does
this,
then
you
are
using
canary
deploys,
and
so
let's
just
say
that,
like
we're
working
on
a
new
version
of
our
app
right,
we're
not
sure
if
our
customers
are
going
to
like
it
more.
So
what
we
do
is
we'll
create
two
environments.
One
is
the
new
version
and
one's
the
old
version.
A
What
we
actually
do
is
that
we'll
make
it
so
that
half
of
our
customers
see
the
new
version
and
half
of
them
see
the
old
version
and
then
we'll
let
it
run
for
a
couple
of
weeks,
we'll
collect
data,
so
has
our
engagement
increased
the
do.
The
number
of
people
who
are
signing
up
for
trials
has
increased.
A
Is
our
web
traffic
increasing?
Are
we
having
more
sales
right,
and
so,
if
we
find
out
the
answer
is
yes,
then
what
we'll
do
is
we'll
increase
it
so
that
now,
all
of
a
sudden,
it's
75,
the
new
version,
25
build
version.
If
things
continue
to
go
up,
then
eventually
we'll
make
it
100
the
new
version
and
that's
how
we
roll
out
our
app
and
so
get
lab.
Does
this
for
our
marketing
like
collateral?
If
we're
rolling
out
some
new
marketing
part
of
our
marketing
website,
we'll
do
it
in
a
canary
fashion?
A
So,
let's
talk
about
modern
method.
Number
three:
it's
called
a
blue
green
deploy.
This
is
something
that
is
really
popular
if
people
use
the
cloud,
but
the
whole
idea
is,
I
have
a
blue
environment.
So
here's
all
my
web
servers.
This
has
version
a
on
my
website
and
now
I
have
some
merge
requests
in.
I
want
to
update
them.
A
A
So
ultimately,
we're
talking
about
is
great.
All
that
stuff
is
cool.
What
do
we
do
from
a
gitlab
perspective?
So
what
we
do
is
we
are
a
great
deployment
solution
if
you
are
deploying
to
kubernetes.
A
A
So
the
av
deploys
the
you
know
the
rolling
deploys
and
stuff,
but
it
takes
a
lot
more
work,
and
so
a
genuine
thing
to
say
is
that
we
have
really
great
functionality
if
you're
deploying
to
kubernetes,
if
you're,
deploying
to
virtual
machines
are
the
vmware
or
something
else
like
that,
then
you
can
still
use
our
monitoring
our
dashboards,
but
you
should
also
consider
using
some
other
tools
instead.
So
let's
talk
about
why
that
messaging
is
authentic.
A
I
talked
to
a
bunch
of
the
essays
here
when
they
actually
advise
enterprise,
customers,
they'll,
say
use
gitlab
for
sem
ci
security
when
it
comes
to
deploys
since
you're
deploying
to
vms
on
aws,
it's
better
to
use
aws's
tool,
we
can
integrate
here
and
then
that
is
like
the
best
way
to
serve
our
customers
to
advise
them
with
something
like
that.
A
And
this
is
really
what
we're
talking
about
here
right.
So
what
we
just
mentioned,
the
rolling
deploys
the
blue
green,
the
canary
that's
what
we're
talking
about
with
advanced
deployments
and
release
orchestration.
So
there's
a
reason
why
we're
half
circle
our
goal
is
to
make
this
a
full
circle,
and
maybe,
within
the
six
to
nine
months,
we
can
have
a
more
a
conversation
where
we
say
yeah,
you
can
switch
off
of
the
aws
stuff,
just
use
gitlab
for
everything
right
now.
It's
a
half
circle
and
it's
important
to
be
authentic.
With
that.
A
All
right,
so
we
just
talked
about
updating
your
servers.
Now,
let's
talk
about
getting
new
servers
right,
and
so
we
have
our
merge
request
done.
We
want
new
servers
that
are
running
the
latest
version
of
our
website.
How
do
we
do
this
from
a
gitlab
perspective?
Well,
the
answer
is
that
we
integrate
with
this
tool
called
terraform.
Terraform
is
the
number
one
tool
right
now
that
is
used
for
cloud
deployments,
and
the
great
thing
is
that,
as
opposed
to
having
another
server
that
is
running
terraform,
that
is
something
that
you
integrate.
A
You
can
just
use
git
lab.
It's
you
don't
need
an
additional
server
and
now
everything's
already
integrated
for
you,
so
your
engineers
don't
have
to
spend
a
lot
of
time
writing
out
the
integration.
So
it's
a
great
way
to
save
time.
Money.
Business
value,
allow
your
engineers
to
work
on
something
else.
A
A
So
if
you
don't
want
to
use
terraform
like
something
like
ansible,
we
support
that
too,
and
there's
a
lot
of
blog
articles
that
you
can
send
to
our
customers
and
let's
just
say
that
you
want
a
new
kubernetes
cluster
gitlab
is
really
great
for
kubernetes
we're
trying
to
build
a
lot
of
features
around
kubernetes.
We
allow
you
to
do
that
too,
whether
or
not
you
want
it
in
google
cloud
or
aws
cloud.
We
actually
allow
you
to
create
new
kubernetes
clusters
through
git
lab,
so
that's
something
that
we
also
should
know
about.
A
B
Chris,
I
have
a
quick
question
around
you
mentioned
the
old
type
of
rollout.
Does
it
have
an
umbrella.
A
A
Not
that
I
know
of
it's
something
like.
I
think
that
in
general,
like
a
good
question
to
ask,
is
like
what
does
deploying
to
production
look
like
for
you
and
then,
if
they
say
we
have
a
bunch
of
teams
that
they
do
it.
They
update
all
their
servers
kind
of
manually.
Then
that
tells
you
something
if
they
say.
Oh,
we
use
some
sort
of
automated
deployment
tool.
Are
then
that
also
tells
you
something
too,
but
it's
not
like.
B
A
So
yeah,
if
I
were
trying
to
use
this
as
a
selling
point,
we
already
talked
about
scmci
security,
and
then
we
we
asked
a
question
in
the
beginning,
like
what
are
some
of
the
strategic
initiatives
that
you
have
in
your
business
and
they
mentioned
we're
really
interested
in
modern
deployment
methods.
So
we're
investigating
some
tools
right
now.
Generally,
I
don't
hear
that,
but
let's
just
say
that
you
do
hear
a
case
like
that.
Then
we
can
say.
Oh,
are
you?
Are
you
thinking?
What
sort
of
methods
are
you
talking
about?
A
Are
you
talking
about
blue
green,
deploys
canary
I'd,
be
happy
to
walk
you
through
the
pros
and
cons
of
each
and
how
gitlab
can
serve
in
this
capacity
and
then
all
of
a
sudden,
you've
hooked
into
another
fact
of
like
how
we're
differentiating
ourselves
from
a
github
or
something
like
that.
A
All
right,
so,
let's
start
wrapping
some
of
these
things
up,
there's
only
two
additional
things
that
I
want
to
talk
about,
and
these
things
aren't
selling
points
as
much,
but
there's
just
something
that
you
might
see
in
a
customer
email
from
time
to
time.
So
I'm
trying
to
equip
you
with
the
knowledge
so
that
you
can
respond
to
the
emails
quickly
and
save
you
time.
A
The
first
one
is
this
thing
called
get
lab
pages,
and
this
is
a
core
feature.
This
isn't
something
that
we
try
to
sell
on
right,
but
we
will
get
emails
from
it
from
time
to
time
about
someone
who's
interested
in
it.
So
what
we're
talking
about
here
is
that
we
are
going
after
the
simple
website
market
and
what
I'm
talking
about
with
that
is
that
a
lot
of
times,
if
you
want
a
nice
responsive
fancy
website,
you
go
hire
some
contractors
and
you
pay
them
a
hundred
dollars
an
hour
to
go.
A
Do
it,
but
for
most
people
who
it's
like
a
restaurant,
are
it's
a
some
sort
of
like
a
flower
shop?
They
really
don't
need
all
that
fancy
stuff.
They
need
a
really
simple
website.
So,
if
you've
ever
heard
of
like
wix
before
we're
talking
about
something
like
that,
so
what
a
lot
of
people
do
over
here
is,
you
can
see
that
all
of
my
code
is
housed
on
over
here
in
gitlab
right.
A
So,
if
I
go
and
look
at
some
of
these
blog
posts
that
I
have
right,
so
here's
a
bunch
of
automatically
generated
latin,
but
what
gitlab's
actually
done
for
me
over
here
is
that
it's
actually
running
my
website
for
me.
So
literally,
I
don't
need
to
create
a
new
web
server.
Gitlab
is
hosting
this
on
the
gitlab
platform
and
then
so.
This
is
the
website
that
corresponds
with
this
code
that
we
were
just
looking
at.
A
If,
like
I
go
into
the
blog
section,
I
can
actually
find
out
this
text
that
I
was
just
looking
at
over
here.
This
file
corresponds
to
this
portion
of
the
website.
So
if
I
were
to
go
into
here-
and
let's
just
say
like
if
I
click
this
edit
button,
I
can
edit
all
this
code
and
then
I
can
make
it
so
that
gitlab
can
just
update
my
website.
For
me,
that's
how
simple
it
is.
A
So
why
do
we
care
about
this,
because
this
is
a
core
feature
and
part
of
the
reason
why
we
care
about
this
is
because
github
does
this
too,
so
if
they
do
something,
we
need
to
do
it
as
well,
but
the
other
part
of
it
is
just
take
a
look
at
this
web
address
right,
so
pages.getlab.io
and
so
all
of
a
sudden
there's
now
a
new
website
out
here.
That
is
advertising
the
get
lab
name
right
and
then
so
more
time
people
see
gitlab
hear
about
gitlab.
A
That
ultimately
is
going
to
relate
into
more
conversions
for
us
and
just
more
visibility
on
the
internet.
So
this
is
obviously
one
way
to
help
out
our
business.
That
being
said,
if
you're
using
gitlab
pages,
do
you
need
to
have
a
web
address
like
this?
No,
you
can
change
it,
but
do
a
lot
of
people.
Are
they
lazy
and
they
just
keep
they
get
lab.io
in
there?
Yes
right,
and
so
it's
just
good
visibility
for
our
platform.
A
So
that's
what
we're
talking
about
with
gitlab
pages,
if
you
ever
hear
things
like
someone's
using
gatsby
or
hugo
or
middleman,
that's
what
we're
talking
about
and
so
get
lab's
really
good
at
this,
and
this
is
something
that
github
does
as
well.
And
the
last
thing
I
want
to
talk
about
is
feature
flags,
and
so
I
personally
as
engineer,
I
don't
like
feature
flags.
Some
people
really
like
feature
flags,
so
we
have
to
have
that
functionality
for
it
them
right.
A
A
One
is
that
we
need
to
update
our
servers,
and
one
is
that
we
want
to
create
new
servers
right.
So
that's
a
little
bit
of
a
lie.
There's
a
new
methodology
of
pushing
out
changes
into
your
servers
and
that's
what
we
call
feature
flags
in
practice.
Less
than
one
percent
of
the
market
uses
feature
flags,
so
most
people
don't
know
about
it.
Most
people
don't
care
about
it
me
personally.
A
As
an
engineer,
I
don't
like
it,
but
the
whole
idea
with
it
is
that
it's
a
lot
of
work
to
do
a
deployment
right,
so
you
need
a
tool
for
it.
You
need
to
do
all
this
canary
stuff.
You
need
to
do
a
rolling
deploy
with
a
feature
flag.
You
actually
write
your
application
in
a
way
so
that
you
can
actually
switch
new
portions
of
your
site
on
and
off
and
then
so.
A
They
can
see
this
change
right
and
then,
if
we
find
out
there's
some
problem
with
this
code,
I
can
just
click
this
off,
and
so
that
being
said,
there's
a
couple
of
components
to
this.
Gitlab
gives
you
the
nice
ui
in
which
you
can
just
go
into
the
feature
flag,
section
and
then
toggle
on
and
off,
but
you
actually
have
to
write
your
applications
in
a
way
to
use
this
functionality,
so
your
engineers
actually
have
to
create
your
applications
around
this
functionality.
A
My
personal
preference
as
an
engineer
is
to
not
use
this,
but
there
are
some
people
that
will
ask
about
this
so
and
then,
ultimately,
why
do
we
care
about
this?
Is
that
to
reduce
risk
right?
So
it's
a
lot
of
work
time
to
do
a
deployment
method.
Even
if
you
have
an
automated
deployment
solution,
then
that's
still
going
to
take
some
time.
If
you
have
ten
thousand
a
hundred
thousand
servers
right.
A
But
if
you
have
feature
flags
you
just
have
to
toggle
the
switch
and
then
the
net
your
website
will
update
automatically
for
you
and
then
so
that's
why
some
people
are
moving
to
feature
flags,
so
that's
to
and
just
sort
of
like
bringing
everything
home
right.
So
we
talk
about
how
we
are
one
tool
for
the
entire
devops
life
cycle
and
we
talk
about
license
consolidation
and
we
also
talk
about
less
integrations.
A
So,
let's
just
talk
and
review
about
how
we
did
that
today,
things
that
we
discussed
as
leaving
servers
to
have
serve
as
package
managers
either
a
server
are
having
an
account
on
some
other
sas
for
your
container
images.
Your
helm,
charts
additional
servers
potentially
for
get
lfs
clusters
talking
about
provisioning
tools
right,
so
something
like
terraform
deployment
tools
and
also
like
generating
simple
websites.
So,
literally
what
we
were
talking
about
here
when
we
say
that
we
are
one
tool
for
the
entire
devops
life
cycle.
A
These
are
engineering
attempts
for
us
to
actually
make
good
on
that
and,
as
opposed
to
now
eating
five
different
tools.
Five
different
accounts,
five
different
environments,
five
different
integrations
now
I
can
just
have
git
lab,
which
saves
me
time.
Money
allows
my
engineers
to
go:
do
something:
that's
higher
value
for
the
organization.
A
So
that's
basically
what
we're
talking
about
today.
So
that's
the
end
of
today's
session.
If
you
want
credit
for
a
class
today
fill
out
the
test.
That's
going
to
be
generated
for
you
momentarily
and
if
anyone
needs
to
hop
off
thanks
for
coming
today,
but
I'll
stick
around
for
another
couple
of
minutes
for
some
questions.
Thank
you
all
for
coming
today,
thanks.