►
From YouTube: Discussion about cleaning up stale environments
Description
Discussing https://gitlab.com/gitlab-org/gitlab/-/issues/19724#note_313679002
Releaase:Progressive Delivery
A
Okay,
so
a
little
bit
of
history
of
what
we're
talking
about
and
then
you
can
see
this
is
in
the
backlog.
So
this
isn't
something
that
needs
immediate
attention,
but
it's
definitely
something
that
we
need
to
talk
about,
because
we
have
a
lot
of
pressure
internally
to
get
this
done
and
I
I
want
to
make
it
lab
employees
happy.
A
So
if
we
do
come
up
with
a
plan,
I
would
like
to
schedule
it
right
now.
It's
humongous
and
we
can't
do
anything
with
it.
So
this
is
the
point
of
what
we
want
to
discuss.
So
the
idea
is
providing
a
mechanism
to
clean
up
stale
environments,
and
this
was
opened
by
our
Docs
team.
Okay,
and
if
you
can
see
the
motivation
to
this
is
that
we
currently
have
500
environments.
A
95%
of
them
don't
actually
have
a
deployment
and
they
want
it,
which
means
their
dude
they're,
doing
nothing
they're
stale
and
we
want
a
way
to
clean
it
off.
So
that's
the
motivation
of
why
this
is
important
and
we
have.
We
have
done
some
work
around
this
in
previous
milestones.
So
in
12.4
we
provided
an
API
that
allows
you
to
delete
environments
and
basically
anyone
with
some
technical
scripting
knowledge
can
create
a
script
that
will,
you
know,
go
one
by
one
and
delete
it.
In
addition,
I
think
I.
B
B
Stopping
a
memory
and
actually
cleaner,
cleans
up
in
Berman's
board
deletion
is
actually
like
a
remove
the
database
record
completely
better.
Stopping
is
just
like
showing
in
different,
so
I
think
it's
a
I
think
it's
enough
for
them
at
least
because
nobody
cares
if
the
record
exists
or
not
as
long
as
the
available
environment,
the
index
page
is
clean,
I
think
it's
enough
for
them.
I
guess:
okay,.
C
Just
just
so
there
surely
are.
We
talked
about
the
the
one
like
the
record
on
the
database
off
get
lab,
and
then
you
have
the
actual
environment
on
the
line.
Deployment
server
right,
those
are
not
being
created
like
the
last
one
is
not
being
created
by,
for
example,
manual
job
right.
That
is
it's
just
a
record
that
is
being
created
and
that's
being
stale.
Yes,
gotcha.
A
B
So
basically,
the
idea
to
approach
this
problem
is
that
let's
create
an
a
future
to
set
out
of
also
the
experiment
or
to
the
existing
records.
It's
all
the
records,
it's
really
easy,
and
so
yeah
actually
I
have
a
proposal
to
this
issue.
I
can
talk
that
later
then
yeah.
Basically,
the
idea
is
just
setting
X
parallel
pillared
to
the
existing
records
and
yeah.
A
C
B
Yes,
yes,
so
here
we
are
saying
that
wwe.com,
which
is
a
problem
problematic
project
today
right
and
the
problem,
is
that
under
the
review
folder,
there
are
so
many
no
deployment
empty,
empty
environments
like
this
one.
How
about
this
one-
and
this
query
dog
team-
wants
to
clean
up
these
records
right.
They
don't
want
to
see
this
one
in
available
page,
but
we
can
just
move
it
a
way
to
stop
the
one
because
I
nobody
cares.
You
know
what
existing
is
stopped
and.
B
The
basically
in
my
proposal
is
that,
let's
let
allow
users
to
set
X
parallel
appeared
to
these
no
no
deployments
yet
environments
empty
environments.
So
maybe
we
could
bought
down
here
or
something
I,
don't
know
they.
You
access
up
to
give
me
to
you,
but
we
have
a
button
here
and
there
like
schedule
schedule
or
to
stop
in
one
week,
two
empty
environments
or
something
like
that.
It's
just
just
like
one
button.
B
B
C
B
A
C
A
we
can
essentially
create
a
call-out
that
appears
once
certain
requirements
are
found
within
the
project.
Like
hey,
you
have
like
a
+10
and
no
deployments
yet
review
environments.
If
that
is
the
case,
then
we
show
a
call
out
towards
the
user.
It
says,
hey
seems
you
have
a
lot
of
unused
environments
and
you
might
want
to
consider
stopping
them
and
move
them
to
the
stop.
You
know
like.
B
B
Maybe
that
phosphate
Edition
is
just
creative
man
you're
a
lot
like
one
click,
one
one-off
action
button
somewhere
and
the
next
we
can
just
have
like,
like
Demeter,
said
like
automatically
detect.
If
empty
environments
are
powered
up,
we
can
just
say
like
coal
out
and
then
like
let
users
to
clean
up
the
things.
A
C
A
A
C
B
C
Let
me
rephrase
yes
so
alright,
just
asked
like
hey
there's
the
idea
to
be
iterative
here,
first
place
a
button
and
then
afterwards,
in
the
second
iteration
place
the
call
out
message
and
make
the
button
only
appear
if
certain
requirements
are
met.
My
question
towards
that
is,
why
would
it
be
necessary
because
the
first
option
would
create
you,
except
as
in
we
create
a
permanent
UI
action
button
which
is
not
useful
to
99%
of
our
users,
where
the
second
one
will
be
contextual
right
like
if
it?
C
B
C
B
B
We
released
two
months
ago
and
if
user
properly
can
configure
cell
review
app
with
this
new
keyword,
basically
the
number
of
stale
review
app
no
empty,
but
no
people
and
all
emitter
empty
environments.
The
number
of
empty
environments
won't
increase
because
all
ever
means
is
gonna
have
our
expel
appeared.
So
all
of
them
is
going
to
automatically
stopped
and
removed
from
this
available.
Tough.
So.
B
Let's,
let's
consider
that
if
user
created
a
new
project
and
then
they
set
this
keyword
from
the
beginning,
they
don't
need
this
button
at
all,
because
the
reviews-
yes
whatever
it
is,
it's
going
to
be
stuck
automatically
at
this.
The
problem
exists
for
only
existing
future,
and
that
is
a
forgot
to
set
this
keyword
or
it
did
exist
when
they
configure
maybe
app,
and
so
basically,
this.
B
B
B
C
B
B
C
C
So
the
question
the
question
is:
I
think
the
remaining
question
is:
can
we
do
that
in
the
first
iteration
create
the
call-out
message
with
the
button
and
the
instructions
how
to
do
that
in
the
scenario
that
we
recognize
towards
the
user?
It
is
relevant
for
them
to
do
so.
So
can
we
implement
this
button
and
only
show
it
when
certain
requirements
are
met
so
where
it
makes
sense
to
what
to
use.
B
C
A
C
Your
explanation,
in
terms
of
like
hey,
if
no
out
updates
Amal
is
said,
you
know,
then
we
can.
We
see
that
from
the
back
end,
like
hey,
give
me
all
environments
that
are
currently
stale
that
are
created
with
a
yeah
mode
that
didn't
include
auto
update
syntax
and
if
those
exceed
a
number
of
say
ten,
then
we
show
this
option.
B
A
B
Possible,
yes,
the
tricky
point
is
that
how
we
define
which
involvement
I
did
still,
but
we
can
creator
I,
don't
know
whatever
condition
like
if
the
environment
doesn't
have
any
deployments
and
it
exists
for
like
a
month,
then
we
consider
it
as
a
still
something
like
this
condition
is
required.
But,
yes,
it's
technically
possible.
So.
B
B
A
Have
a
few
conditions
that
have
to
be
met
and
I
think
it
really.
We
need
to
be
very
specific
here
so
that
we
don't
mean
production,
so
hey
I
wouldn't
want
to
do
that.
Any
work
on
protected
environments,
I
think.
Second
of
all,
we
have
to
have
no
deployments
yet
so
I
assume
production
would
have
some
kind
of
deployment
to
it
and,
third
that
it
had
not
been
updated
in
the
last
I.
Don't
know,
yeah.
C
A
C
Good
so
in
this
case,
only
in
a
very
specific
instances,
this
call-out
will
be
shown.
We
will
instruct
the
user
to
you
know,
fix
this
situation
for
now
that
is
a
temporary
fix
that
will
fit
just
the
current
situation
and
instruct
them
how
to
fix
that
in
the
future.
So
there's
a
there's
a
like
to
two
parts
to
this
call-out.
A
B
A
A
C
Yeah,
so
will
there
be
records
and
is
the
iteration
or
this
talking
about
or
please
correct
me
if
wrong?
It's
like,
instead
of
having,
for
example,
in
this
case,
we
have
three
three,
nine
thousand
or
almost
four
thousand
review.
Apps
say
that
you
click
the
button.
It
will
remove
three
thousand
of
them.
Instead
of
praying
three
thousand
records,
it
will
just
create
one
which
states.
You
know
this
user
deleted
three
thousand
environments.
If
you
want
more
information,
this
is
the
list
I.
C
B
The
initial
purple
cell,
like
this,
is
like
in
this
proposal.
I
have
a
strong
concern
on
performance,
but
since
we
like,
we
just
said
expelled
instead
of
just
deleting
now,
we
can
just
say
like
let
we're
gonna
schedule,
deletion,
we're
gonna
schedule
to
stop
Berman's.
So
it
doesn't
like
background
worker
there's
a
background
worker
to
stop
all
like
environments,
they
expert
environment,
so
it
it
actually
can
handle
a
bunch
of
Umbra
meds
in
scale.
So
they're
no
concern
on
performance
is
this
approach.
A
A
B
C
B
B
Don't
know
a
few
days
so
like
one
week
is
the
basically
safer
option
for
them
like
at
least
if
your
environment
is
going
to
get
deployment,
it
should
happen
within
a
week
at
least
and
otherwise,
because
that
is
as
a
still
so
there's
the
reason.
We
cannot
immediately
start
the
process.
Otherwise
it's
going
to
mess
up
the
usual
continuous
deployment
process.
B
C
By
the
way,
thinking
of
one
additional
thing
that
might
be
needed,
that
does
not
include
or
increase
scope
by
too
much
in
terms
of
front-end.
This
I
think
the
button
when
pressed,
does
need
a
modal
to
reconfirm
by
the
user
that
they
actually
wanted
to
leave.
You
know
3,000
models
unless
but
I
have
to
look
into
that,
because
it's
an
action
scheduled
a
week
from
now
it
is
like.
Alright,
this
action
has
been
scheduled
a
week
from
now.
C
Then
it
will
happen,
the
user
might
be
able
to
cancel
it
again
like
is
it
if
it's
an
immediate
action,
a
model
might
be
needed.
If
it's
not,
then
the
the
UI
will
update.
Like
hey
somebody
pressed
this
button.
If
it's
the
current
user,
it's
occurring
to
use
it,
but
also
might
be
another
user,
so
we
don't
get.
You
know
multiple
of
the
same
thing
scheduled
like
for
example,
say
that
300
users
use
the
same
project
and
300
users
push
this
button.
C
C
C
B
Do
I'll
train
you
like
it
and
do
you
know
this
problem
is
basically
doc
team's
concern
right,
the
very
specific
team
and
then,
like
the
other,
guys
like
I,
don't
know
somewhere
somewhere
outside
of
Rome.
The
duct
teams
do
not
really
care
about
like
what's
going
to
happen
home
the
environments
right
so
I
think
that
showing
the
deletion
progress
were
I,
don't
allow
it
to
the
other.
Members
could
be
here,
I,
don't
know
just
disturbing
them
or
it
could
be
noise
because
it's
just
you
know,
stop
being
here
empty
environment,
so
it
doesn't.
B
They
don't
need
to
pay
edition
Oh.
Well,
that
is
up
to
you
UX
decision,
but
it's
just
my
opinion.
Yeah.
C
I
see
what
you
mean,
so
you
say
like
instead
of
informing
environments
and
every
page
that
if
there
are
no
employments
yet
and
this
action
has
been
pressed,
if
we
do
this,
then
we
inform
them
in
all
those
places
that
you
know
this
environment
will
be
deleted
if
it
does
not
get
any
new
deployments
which
might
be
unnecessary.
Well,
so
there's
there's
two
things.
C
I
think
I
would
like
to
inform
users,
at
least
in
some
way
that
this
button
has
been
pressed,
and
this
action
is
in
progress
in
one
way
doesn't
really
matter
too
much,
but
the
other
one
is.
Do
we
need
to
inform
users
of
specific
environments
that
are
scheduled
to
be
the
leader?
Yes,
now,
if
the
second
one
is
not
true
like,
if
that
is
not
per
se,
you
know
requirement,
then
I
would
say
a
mass
like
I'm,
just
a
message
that
the
process
is
in
progress
should
be
enough.
As
far
as
I
see
it.
A
C
Yes
seems
good,
let
me
see
last
thing
is
I
want
to
have
want
one
thing:
clear
say
that
we
do
that
say
that
somebody
pressed
the
button-
let's
let's
walk
through
this.
So
if
this
call
out
message
informs
the
user,
hey
your
stale
environments,
would
you
like
to
stop
them
and
also,
if
you
want,
you
can
update
your
CI
llamo
file
with
the
following
confirm
your
configuration.
C
You
know:
stop
this
from
happening
in
the
future,
not
needing
to
clean
up
by
yourself.
Then
the
user
clicks
the
button.
What
happens
next
right,
like
they
click
the
button,
and
then
we
inform
them
in
some
way
that
this
thing
is
in
progress.
Also,
do
we
inform
others
of
this?
Will
the
UI
updates
for
everyone
I
think
it
should
I
would
say
what
I
expect
to
happen
there
is
we
press
the
button,
the
model
or
the
call
out
message
updates
and
it
states
hey?