►
From YouTube: FE Pairing - 20210604 - It's time to get Danger-esque!
Description
In this session we pair up on creating a Danger rule for a recently added job with a quirk. Here's the MR we worked on https://gitlab.com/gitlab-org/gitlab/-/merge_requests/63234
B
Yes,
I
was
trying
to
see
it
like
yeah.
Do
I
need
to
add
this
to
some
sort
of
entry
point
and
I
couldn't
find
anything
like.
A
A
D
There
is,
let's
see,
break
danger.
D
Yeah,
so
if
you
do
bin
rake
danger
underscore
local.
However,
I
imagine
you'd
probably
need
to
explicitly
set
this
as
a
local
reg
task
somewhere,
but
this
is.
This
is
going
to
be
reading
from
like
the
mr
title,
so
I
don't
think
it's
going
to
work.
We'd
have
to
stub
out
those
things.
B
A
B
D
Oh,
it's
it's
the
zooms
like
toolbar,
getting
in
the
way,
which
is
annoying.
No,
it's
fine.
I
can
see
it
now.
It's
gone
away,
yeah,
so
that
should
run
it.
The
local
tasks
anyway,.
B
B
I've
noticed
like
if
I
run
left
hook,
it'll
run
danger
locally.
Is
that
what
this
is
doing.
E
D
B
Yes,
let's
add
that,
let's
see
what
happens
like
that,
and
it
should
blow
up
because
it's
like
trying
to
do
mrt,
presumably
yeah,
here's
the
other
crazy
idea.
The
idea
is,
if
we
make
a
change
to
a
startup
css
file,
we
want
to
run
both
jobs,
the
as
if
foss
job
and
the
other
job,
rather
than
danger.
We
could
try
to
solve
this
from
the
ci
perspective,
yeah,
which,
which
I
tried
to
do
originally,
but
failed.
A
B
B
I
I
clearly
don't
know
what
I'm
doing.
B
Sorry,
yeah
no
you're
good,
so
I
wasn't
here
and
I
am
in
so
I'm
gonna
say.
A
B
E
Not
do
anything
yeah.
D
A
I'm
joking,
so
I'm
like
I'm
trying
to
look
for
it.
I'll
change
files.
C
The
other
thing
I've
done
too,
when
working
on
danger
files
is
that,
if
you
don't
want
to
run
it
locally,
you
can
just
edit
the
pipeline
to
only
run
the
danger
job
and
then
at
least
the
pipeline
is
pretty
quick
because
it
you
still
have
to
push
in
between
the
tests.
But
if
we
can't.
B
D
C
A
So
it
does
look
like
there's
a
local
implementation
for
that
I'll
change
files
underneath
like
it
knows
that
it
can
run
locally.
I
just
can't
find
it.
B
It
include,
does
it
include,
removed
and
added
files.
B
Yeah,
so
it
includes
all
this
stuff-
okay,
that's
great,
so
yeah.
I
guess
I
guess
we
could
try
to
try
this
out.
I
guess
probably
the
issue,
maybe
was
I
wasn't
adding
this
to
the
right
entry
point.
Maybe
I
need
to
put
in
a
ci
when
any
rules
or
something
is
that
I
wasn't
adding
it-
is
that
the
issue
yeah.
That's.
B
B
Just
somehow
double
check
that
both
files
have
changed,
or
I
don't
know-
I
really
don't
know,
because
the
main
output
of
this
rule
is.
B
We
want
to
warn
or
not
warrant,
we
want
to
actually
change
the
mr
title
to
run
both
jobs
when
one
is
changing.
A
B
Duplicate
yarn
is
whoa,
so
maybe
maybe
the
all
change
files
has
a
different
implementation.
If
it's
a
merger,
class
or
local.
A
B
Yes,
I
think
we
could
have
it
run
in
both
because
look
here's
a
little
thing,
that's
saying
like
helper,
are
we
in
ci,
so
we
could
do
just
a
warning
if
we're
not
in
seat
like
we'll,
do
a
warning
if
we're
not
in
ci
or
something
saying,
hey,
make
sure
you've
you've
looked
at
both.
You
want
to
do
that.
D
I
like
it
because
this
is
going
to
be
run
by
left
hook,
pre-push
right
same
yep.
A
A
So
yes,
karma
at
least
is
in
local
rules
and
it
uses
all
changed
files
and
others.
B
A
B
A
D
B
E
B
B
I've
been
watching
a
lot
of
rick
and
morty
for
I've
been
having
it
on,
while
I'm
like
waiting
for
r,
spec
and
stuff.
So
it's
I,
it
kind
of
helps
my
productivity
watching
something.
While
I
wait
for
things
to
look,
it's
better
than
me
getting
distracted,
often
something
else
anyways.
B
I
want
to
change
a
file,
so
we
can
actually
see
if
we've
got
here.
So
let
me
open
up
a
style
sheets.
Startup
thing.
A
D
B
A
B
Couldn't
it
I
couldn't
agree
more
with
you
chat,
that
was
that
was
chad's
first
thing.
That
was
that
the
first
deliverable
tasks
that
you
were
working
on
and
a
gitlab
yeah
and
it's
and
it
still
doesn't-
have
one
chad
quickly
learned
all
of
the
obstacles
and
our
code
base,
specifically
with
the
id
and
merge
reviews.
That's
the
way
the
new
goes
all
right,
so
this
is
working.
That's
great!
B
I
just
didn't
add
it
to
this
thing,
man.
I
thought
I
knew
there'd
be
some
sort
of
entry
point.
Okay,
that's
great!
So
now
we
just
think
of
an
actual
warning
for
this
right.
D
B
B
B
And
you're
adding
or
removing
a
feature
flag.
Oh
wait!
That
message
is
bad.
You
are
changing.
Startup
css
files.
B
A
A
A
file
that
says
check
some
other
files,
but
then
there's
a
bug
in
the
logic
to
check
the
other
files.
You
want
to
be
able
to
commit
a
change
to
that
file
and
then
have
it
start
doing
the
right
thing
because
then
you're
like
oh,
I
have
to
make
another
branch
to
do
this
other
thing
and
do
other
stuff.
I
don't
know
if
that's
a
pattern
for
these,
but
yeah,
I
think
about
that,
would
be
interesting.
I
don't
know.
A
D
So,
coming
back
to
the
the
warning
at
the
bottom,
there
please
make
sure
you
update
and
check
both
c
and
e.
Well,
if
you
do
push
with
these
changes,
you've
made
changes
to
startup
css
and
you
do
push
this
very
danger
file
is
then,
going
to
modify
your
mr
to
make
sure
that
foss
run
as
if
foss
is
done.
D
B
Maybe
and
that's
a
good,
that's
a
good
point,
because
because
the
reason
why
I
I'd
rather
have
this
like
multi-leveled,
like
we
make
sure
we're
having
oversight
here,
is
because
this
these
api
updates
could
fail
and
then
we
wouldn't
be
able
to
hold
their
hand
and.
A
B
Oh
yeah,
don't
don't
danger,
don't
make
me
nervous?
B
B
B
You
know,
maybe
I
don't
know,
let's
see
what
happens.
Wait
for
danger
to
run
then
cancel
the
pipeline
all
right.
I
am
going
to
push
this
as
a
fix
up
to
this
one.
B
Okay,
let
me
go
ahead
and
also
rebase.
A
A
B
B
B
B
So
I
have
a
stash
to
just
use
echoes
here
and
stuff.
Do
you
think
that
would
be
a
good
thing
to
do
on
its
own
tomorrow
or
would
you
would
you
show
me
an
answer
here?
Do
you
think
that's
I
think
it's
small
enough
to.
B
C
B
C
Does
the
warren
get
printed
in
the
mr
that
block
that
danger?
Does
I
think
it
does?
That
would
be
nice,
it
would
be.
It
would
be
kind
of
nice
to
for
them
to
know,
because
I
remember
when
the
feature
flag,
one
started,
everyone
was
asking
in
slack
like.
Why
did
my
mr
title
get
we'll
get
changed
because
that
feature
flag?
One
doesn't
right,
but
I
don't
think.
B
Yeah,
you
didn't
that's
a
that's
interesting
anyways,
all
right!
This
is
taking
a
little
longer
than
I
was
hoping,
probably
because
we're
running
all
these
other
jobs.
Let
me
cancel
some.
B
This
is,
I
think
this
is
pure,
like
taking
snake
oil,
placebo
bills,
you're.
D
C
B
I
have
noticed
gitlab
ci
is
really
fast,
not
on
the
gitlab
project,
like
I'm,
I'm
always
impressed
with
I
push
and
like
if
I'm
using
pages,
it's
like
odd.
It
deploys
like
almost
immediately
I
like
that.
We've
separated
our
heavy
heavy,
build
runners
like
our
heavy
project
from
the
rest
of
gitlab.com,
because
it's
the
rest
of
gitlab.com.
So
it's
pretty
nice.
A
Yeah,
you
can,
I
think,
it's
just
based
off
of
your
runner
pools
and
you
can
assign
different
things
to
different
pools.
So,
whatever
you
have
in
the
pool
that
will
use.
B
B
A
B
The
summer
of
2020.,
that's
it's
a
it's
a
big
deal.
Ours
has
gotten
a
little.
I've
noticed.
Sometimes
ours
finishes
sooner
than
I
would
think
it
would
be.
A
Like
2019,
there
were
periods
where
it
it
got
to
like
30
minutes
and
then
we
like
chiseled
it
down,
and
I
got
it
under
10
right
before
cool.
They
disbanded
that
and
put
me
on
the
editor
team.
But
now
it's
like
creeping
back
up
for
some
unknown
reason,
because
I
tried
hard
for
months
to
get
the
right
metrics,
but
yeah.
C
B
B
I've
seen
I've
seen
I've
seen
some
charts
for
our
pipeline
jobs.
A
B
B
This
will
be
fun,
there's
so
much
to
do
with
gitlab.
If
we
ever
have
a
pairing
session,
we're
like
I'm,
not
sure
what
to
do
remind
me
that
this
thing
exists
and
there's
always
thanksgiving.
B
There's
a
lot
of
ide
tests
on
here
so
yeah.
If
it's
slow,
it
just
means
you're
testing
something
important.
That's
right!
B
B
Oh,
let's
see,
let's
take
a
question:
I'm
gonna
recrush
that
I'm
gonna
say
no.
D
A
A
B
D
So
but
if
you
go
to
the
danger
file
for
the
startup
css,
the
api
post,
that
one
yeah
it's
it's
posting
to
pipelines,
the
pipelines
api,
which
I
think
starts
a
new
pipeline,
or
at
least
it's
request
to
start
a
new
pipeline.
Let's,
let's
have
a
look
at
that.
A
D
Danger,
startup
css
slash,
danger
file.
Why
don't
I
see
that
okay?
So
if
you
post
according
to
this,
if
you
post,
which
I
think
is
what
the
script
is
doing,
it's
posting
to
project
slash
id
slash
pipeline.
Oh
no!
It's
not,
though,.
B
Maybe
we
don't
need
to
start
a
new
pipeline
because
maybe
we
can
just
bail
danger,
we
can
update
it,
but
then
fail
it
and
say
we
updated
this
for
you,
but
you
need
to
you
need
to
restart
the
pipeline
because
we
ran
this
and
we
noticed
you
didn't
have
this
in
the
title.
A
But
you
can
do
it
like
the
future
flag,
one
does
it,
but
maybe
it
doesn't
do
it.
I
don't
know
like
it.
Does
I'm
looking
at
it
well.
B
B
Yeah,
I
don't
know,
let
me
let
me
curl
this,
how
do
you
make
a
post
request
in
curl.
B
B
D
D
In
the
chat,
I've
posted
the
the
path
you
want.
Oh
it's
just
that,
but
yeah
exactly.
B
Part
of
me
thinks
the
safest
thing
to
do
would
be
to
fail
the
pipeline,
but
maybe
I
don't
know,
maybe
that's
not
the
safest
thing
to
do.
D
So
you
can
actually
I
learned
the
other
day.
You
can
do
just
project
parts.
So
if
you
do
gitlab.org
but
then
percent
to
f
for
slash
and
then
gitlab
there
you
go
that
should
work
yeah,
okay,.
B
B
B
Oh
me,
oh,
do
we
have
we
don't
have
any
in
one
password?
Do
we
don't
have
like
a
the
bots
token?
Do
we?
We
don't
do
that
anymore.
B
B
D
So
what
you
want
to
do
so
it's
double
dash
header
and
then
quotes
private
dash,
token
colon
and
then
your
token.
B
Okay,
I
can
I
can.
I
could
share
my
screen
for
a
second,
because
I've
I've
cleared
it
out
boom
boom.
Although
part
of
me
wonders
if
zoom
is
always
looking
at
my
screen,
double
dash
header.
A
B
A
B
B
B
So
I
I
would
like
to
we
do,
let's
do
the
update,
but
we
will
fail
on
saying
if
you
are
updating
startup
css.
Your
mr
has
to
include
this.
B
B
And
then
and
then
it
all
still
passed
and
it
looks
like
it's
good
to
go.
That
would
be
the
concern
because
there's
there
is
some
race
conditions
here,
but
also
here's
the
other
thing.
If
we
run
as
if
foss,
if
I've
only
changed
ee
and
we
run
as
a
foss,
it's
gonna
fail
anyways
because
I
haven't
updated
the
ce
one.
B
B
B
B
A
A
A
B
A
B
A
A
B
I
know
I
I'm
glad
you
brought
it
up.
This
is
so
much
better.
How
do
I,
how
do
I
blow
things
up
in
danger?
I
feel
like
danger
would
be
really
good
at
this.
D
D
B
Nope,
not
error,
die,
I
mean,
am
I
maybe
I'm
not,
including
all
the
danger
files
here?
Oh
did
nathan
have
to
hop
up
which
one
does
actually
blow.
A
B
A
B
B
Maybe
we
should
think
of
a
a
name
for
it,
her
name
for
danger.
Is
it
danger
bob
danger
bob
tried
to
do
this,
for
you.
B
Yes,
which
is
what
caused
the
original
run,
I'm
canceling
all
the
pipelines
and
I'm
gonna
undo
my
title.
We
could
try
the
we
could
try
the
positive
case.
Oh
no,
I
don't
want
to
retry.
A
That
makes
as
soon
as
you
do
it
I
have
another
thought.
Oh.
B
My
gosh
I
get
so
click
happy
sometimes
do
we
want
to
remove
the
run
as
a
foss
here
or
do
you
want
to
try
the
the
happy
path
or
the
blow
up
path.
B
A
A
B
B
A
That
should
work,
and
I
would
say,
on
online
21,
make
sure
to
update
like
instead
of
to
update,
I
would
say,
add,
run
as
if
to
the
mr
title.
D
You've
got
haste
instead
of
have.
Thank
you.
B
It
is
required
to
update
that's
that
sounds
like
the
messenger.
The
message
I
can
see
it's
about
jam
stuff
all
right.
Let
me
commit
this.
B
Okay,
great,
let
me
I'm
going
to
go
ahead
and
do
the
I
won't
I'll
rebate.
B
It'll
it'll
automatically
make
it
a
draft.
That's
one
of
my
least
favorite.
I
would
love,
I
can't
wait.
I
know
it's
going
to
be
solved
and
I
can't
wait
for
it
to
be
solid
gitlab.com.
When
you
push
a
fix
up,
commit
it
won't
automatically
put
it
as
draft
that'll,
be
pretty
sweet
right
now.
It
automatically
puts
it
as
draft
and
it
gets
a
little
annoying.
D
B
But
if
that's
what
you're
wanting
to
do
like,
maybe
it's
easier
to
just
do
all
that
I
don't
know
so
we're
going
to
test
the
happy
path
we
have
this
on
it.
Let
me
mark
as
ready.
B
So
this
this
comes
at
a
good
time,
because
this-
I
I
woke
up
this
morning
to
fast
breaking
because
because
of
this,
which
is
unfortunate,
so
this
is
going
to
be
really
sweet.
I'm
glad
that
we're
able
to
get
this
on
while
the
pie
plane
is
running,
I
it
might
be.
Do
you
think
it'd
be
interesting
to
to
share
the
extractor
stuff
that
that
you
and
I
ran
into,
and
then
we
ran
into
it
again
mark.
B
So
since
this
thing
launched
it's,
it's
failed
a
couple
of
times
as
kind
of
expected,
but
since
it
launched
there's
a
couple
of
things
that
are
hardening
it
quite
significantly,
so
that
it
should
be
safe
or
or
at
least
a
lot
stronger
and
less
fragile
and
one
significant
change
has
to
do
with
the
startup
css.
B
Previously
we
just
used-
and
you
left
a
really
good
question-
do
we
even
need
this?
Previously?
We
just
used
this
extractor,
which
takes
a
file,
and
it's
just
gonna
look
for
words,
which
are
this
combination
of
characters,
dashes
lowercase,
word
letters
and
exclamation
marks.
B
This
was
a
gross
oversight
on
my
part,
where
clearly,
more
words
than
are
needed
are
there,
which
I
thought
well,
that's
negligible.
Let's
be
fine,
but
also
it's
non-deterministic.
What
words
can
be
there
and
one
of
them
was
like.
We
have
a
nonce
that
that
gets
generated
in
our
fixtures
and
then
included
some
characters
like
sometimes
it
would
just
include
the
the
letter
p
and
it
meant
we're
getting
the
paragraph
tag,
and
that
was.
D
B
B
B
This
has
been
wildly
helpful
because
I
clearly
did
no
idea
what
I
was
doing,
I'm
so
glad
we
were
all
able
to
collaborate
on
it
and
implementation
time.
I
think
the
result
is
a
very
nice
developer
experience
and
is
going
to
help
solve
issues.
B
D
It
would
pass
because
the
mr
title
has
run
as
if
us.
B
What
if
so,
these
these
ci
jobs
have
rules,
meaning
they
only
run
under
certain
changes
or
other
kind
of
conditions?
So
what
if,
when
we
ran
for
this
one,
the
startup
css
check
as
its
foss
we're
using
this
default
front-end
jobs.
B
B
This
one
follows
the
same
rule.
There's
our
spec
front-end
fixtures
as
a
foss
thing
right.
So
if
we
do
it,
we'd
have
to
keep
an
eye
out
for
like
the
parents
of
what
what
their
rule
set
is
and
but
it
would
be
sweet
like
it'd,
be
all
baked
into
ci
like
we
wouldn't
have
to
do
this
whole
danger,
but
I
think
danger
is
a
nice
solution.
Right
now.
This
would
definitely
complicate
what's
already
pretty
complicated.
D
Yeah
still,
how
did
that
go?
It
failed,
oh,
no,
for
a
wrong
way,
not
the
other
failure.
B
But
I'm
going
to
treat
it
as
that,
so
yeah,
I've,
gotta
I've
gotta
hop
off.
I'm
gonna!
Try
it
both
ways:
I'll
ping,
you
all
that
that
hopped
on
on
this
mmr
and
then
hopefully
we
can
get
it
merged
and
figured
out
so
good
stuff.
Thank
you
paul.
Thank
you
mark.
Thank
you,
yannick
for
for
hopping
on
and
everyone
else
that
I
had
to
hop
off
I'll
catch
you
all
later.
Bye
speed
have
a
good
one.