►
From YouTube: 2021 02 15 Docs Office Hours
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
All
right
welcome
to
jenkins
documentation's
office
hours,
so
proposed
agenda
topics
how
to
contribute
a
pipeline
documentation
example
to
a
plugin.
A
This
is
a
little
different
than
the
typical
documentation
workflow,
so
I
wanted
to
show
it
and
we
may
use
the
recording
and
host
a
subset
of
the
recording
on
the
jenkins
youtube
channel
so
that
we
can
point
people
to
it
when
they
have
a
question.
How
do
they
do
this
then
contributor
summit
is
a
topic
wiki
migration
plan,
pull
request,
progress
and
new
contributors.
Any
other
topics
we
should
add
to
the
agenda
looks
good,
okay,
cool.
So
then
let
let
me
first
give
an
overview
of
what
the
challenge
is
so
pipeline
documentation.
A
A
I
want
to
do
such
and
such
a
thing,
but
I
would
really
like
an
example,
because
we
learn
very
much
better
by
examples
than
we
do
by
anything
else,
and
so
one
user
had
said:
hey
here's
an
example:
they
were
using
the
jacoko
plugin,
and
so
I
am
going
to
look
for
the
jococo
plugin
here
on
the
pipeline
steps
reference
page.
So
this
is
reference
documentation
on
the
jacoco
plugin.
A
Delta
class
coverage
type
string
is
optional,
but
no
explanation
of
what
that
is
or
what
it,
what
how
it
applies
or
how
it
does
not
apply,
etc,
and-
and
it's
tough
to
know
where
to
look
for
that
information,
because
it's
not
here
and
some
of
them
are
not.
For
instance,
class
pattern
to
me
is
not
immediately
obvious
what
it
means
or
the
one
that
the
original
submitter
said
was
hey.
I
don't
understand
the
meaning
of
minimum
branch
coverage
and
here's
what
it
says.
A
It
says
it
is
an
optional
argument
of
type
string
and
that's
it
so
so
correctly.
The
the
author
of
this
problem
said
hey.
I
need
to
know
what
this
means
did
some
searching
and
found
this
stack
overflow
article
that
actually
described
what
it
means,
but
now
how
do
we
get
that
into
the
this
page
and
how
do
we
get
it
to
jenkins
users?
So
it's
not
only
that
it
needs
to
go
into
this
page.
It
also
needs
to
go
into
a
jenkins
installation
so
because
online
help
is
available
for
for
jenkins
installation.
A
So
if
I
look
here
as
an
example,
if
I
look
at
the
pipeline
syntax
link
here
and
do
something
with
jacoko,
so
the
step
is
called
jococo.
I
think
I've
got
it
installed.
I
do
so
when
I
click
jacoco
here
here
are
a
bunch
of
fields
but
notice.
The
the
question
mark
over
here
on
the
far
right
does
not
exist
for
the
path
to
class
directories
right
or
for
the
always
run
coverage
collection,
and
so
the
the
absence
of
help
here
also
hurts
the
user
experience
because
they
come
into
this
place
and
they
say.
A
Oh,
I
don't
know
what
this
means.
Okay,
what?
If
I
disable
that
all
right
here,
there's
help
for
that,
but
there's
no
help
for
always
run
coverage
collection,
even
if
build
is
failed
or
aborted,
and
these
things
it's
like.
I
don't
know
what
those
fields
mean
so
so
there
are
lots
of
places
where
we
could.
What
can
we
do
to
help
the
user
and
the
nice
thing
is
when
we
add
help
to
this
page?
A
So
so
the
there's
a
plus
there.
If
we
can
get
help
into
the
on
this
online
page,
we
can
get
help
also
into
the
jenkins.io
docsite
page.
Okay.
The
help,
though,
comes
from
the
plugin
source
code
itself,
so
ins,
whereas
I'm
you
I'm
accustomed
to
writing
documentation
for
www.jenkins.io
in
this
case.
In
order
to
get
something
into
this
page
on
the
jenkins.io
site,
I
have
to
go
edit,
a
plugin,
not
edit
a
not
edit
a
page
on
the
jenkin.io
github
site.
A
A
A
A
A
A
A
A
This
thing
what
you'll
see
is
allows
to
configure
ver,
ask
various
aspect:
aspects
of
jococo
code
coverage,
so
here
is
the
online
help
for
that
in
this
directory,
so
it's
in
source
main
source
main
resources,
hudson
plug-ins,
jacoko,
jococo
publisher.
How
did
I
find
it?
I
just
searched
for
it
using
using
my
ides
search
utilities
right
so,
whether
that's
visual
studio
code
or,
let's
see
intellij
or,
in
my
case
emacs
or
vi
any
one
of
them.
You
can
just
use
whatever
tools
you
have
to
search
and
find
an
existing
example
of
a
help
file.
A
A
A
A
If
coverage
is
below
this
minimum
comma,
the
bill
fails
and
we
like
sentence
per
sentence
per
line
because
it's
easier
to
code
review.
If
the
coverage
is
below
the
maximum.
A
A
Right,
okay,
so
is
below
this
minimum
the
build.
If,
if
the
coverage
is
below
the
maximum,
how
would
we
say
it's
specified
by
and
now
we
go
get
the
other
variable.
A
A
If
the
coverage
is
below
the
maximum
specified
by
maximum
branch
coverage,
the
build
is
unstable.
B
First
of
all,
let's
go
if
we're
gonna!
Why
don't
we
put
in
front
of
below
this
minimum?
Why
don't
we
specify
minimum
branch.
A
A
B
A
A
A
A
B
A
If
the
coverage
is
above
maximum
branch
coverage
yeah,
so
for
me
it's
the
the
parameter.
The
names
of
those
variables
is
a
little
surprising,
but
let's,
let's
assume
that
this
is
accurate
and
we
there
are
some
more
steps
we
need
to
take
to.
To
assure
this
is
actually
working.
So,
okay,
all
right,
so
we've
done
we've
attempted
to
add
help
for
minimum
branch
coverage.
B
A
A
A
Okay.
So
now
back
to
where
we
were
we're
going
to
say,
maven
clean
and
we're
going
to
say,
hpi
colon
run,
and
I
think
what
this
will
do
is
take
the
jococo
plug-in
with
our
changes,
compile
it
and
start
at
jenkins
that
loads
that
jacoco
plug-in.
So
we
can
look
at
it
with
the
use
from
the
user
interface
and
see
if
it
has
the
has.
A
Right
now,
I'm
not
sure
where
it's
going
to
appear.
So,
let's
go
looking
to
see
if
we
can
figure
out
where
it's
going
to
appear.
So
here
is
oh
and
I
just
stopped
my
other
process,
so
we'll
have
to
look
at
a
different
jenkins
server.
Okay.
So
how
about?
Let's
look
here
at
pipeline
checks,
bin,
so
pipeline
syntax
is
here.
A
A
A
A
A
A
A
A
A
It
is
oh
meg,
I'm
so
proud,
that's
good!
Okay!
So
what
we
see
here
is
I'm
running
a
tunnel
to
jenkins,
in
this
case
2.164.3
and
let's,
if
we
look
at
the
list
of
plugins,
we
should
see
manage
plugins
installed,
jacoko
there.
It
is
good
and
it
notice
it's
got.
This
snapshot
private
m
weight
stuff
on
it.
So
we
were
successful.
We
have
built
the
jococo
plug-in
from
from
my
little
repository
there
and
have
have
it
running
now.
So
now
we
need
to
create
a
new
item
and
oh
that's
no
help.
A
A
A
B
A
B
A
Okay,
here
this
one,
okay,
here
we
go
so
let's
reload.
A
This
is
such
an
old
version
of
jenkins.
It
can't
do
it.
I
am
just
stuck
so
we're
going
to
have
to
do
this
with
a
freestyle
job.
So
that's
that's
unfortunate
in
this
case,
but
that's
just
the
reality
of
it.
So,
let's,
let's
create
a
freestyle
job
and
look
at
the
online
help
with
a
freestyle
job
and
see
if
we
can
confirm
it.
If.
B
A
B
A
Actually,
let's
go:
go
grab
the
the
text
from
the
original
document
that
the
came
from
this
one.
So
if
we
grab
this,
let's
go
find
that
in
the
source.
A
A
A
So
if
we
look
at
this
thing,
it
says
let's
look
at
get
minimum
branch
coverage
and
we
should
see
here
yet
here
is
a
public
getter,
and
this
thing
so
it
says
there
must
be
by
by
convention
a
field
named
minimum
branch
coverage,
because
there
is
a
method
called
get
minimum
branch
coverage
that
can
return
its
value.
A
B
A
A
Let's,
oh
this
thing
right
here
should
appear
on
the
resource
file
on
the
resource
page.
Okay,
this
thing,
because
what
maven
the
build
tool
that
we
use
for
plugins
likes
to
do
things
by
convention
right,
so
what
they
say
is
hey
put
put
your
things
in
this
location,
we'll
find
them
automatically,
and
so
in
this
case
anything
in
this
page.
A
That
starts
with
help
dash
gets
used
as
online
help
for
fields
for
for
things.
A
A
A
A
A
File
for
this,
and
no
because
the
so
if
we
look,
for
instance
at
it's,
it
doesn't
go
in
config.jelly.
It
goes
in
another
file
but
then
gets
loaded
when
the
user
presses
the
question
mark.
So,
for
example,
taking
that
exact
one
fail,
the
builder's
coverage
degrades
when
I
click
the
question
mark
it
brings
up
come
on.
A
A
A
B
A
A
B
A
A
So
let's
do
a
maven
clean,
skip
tests
install
and
I'm
going
to
do,
I'm
going
to
use
a
trick
for
me
to
give
it
give
me
access
to
it
in
a
large
scale
environment
very
quickly.
We
won't.
We
wouldn't
do
this
for
a
demo
for
anybody
else,
because
they
won't
have
this
particular
set
of
tools.
But
okay,
what
we're
going
to
do
is
copy
the
jacoco
plug-in
into
my
place,
where
I
put
all
of
my
jenkins
set.
A
A
A
But
but
okay,
so
when,
when
I
get
around
to
doing
this,
recording
again
to
show
a
cleaner
path
through
it,
some
of
the
challenges
will
be.
How
do
we?
How
do
we
deal
with
an
outdated
jenkins-based
version
and
the
answer
is
you
can
just
compile
it
and
place
it
into
your
own
jenkins,
server,
so
upload
it
to
your
own
jenkins
server,
instead
of
using
maven
hpi
colon
run.
B
A
A
Some
place
disabled
now,
where
was
it
that
we
would
expect
to
see?
Okay
fail,
the
build
if
degrades
yeah.
That's
that's
correct
change!
Build
status
according
to
thresholds.
That's
correct!
Now
what
we
don't?
Oh,
oh!
I
wonder
so
this
one
may
be
really
strange
because
these
fields-
oh
oh,
meg,
this
one's,
a
fun
one,
because
I
don't
think
I
think
this
is
an
example
of
a
case
where
the
online
help
is
not
accessible
to
the
user
because
of
the
plugins
more
sophisticated
way
of
doing
doing
their
user
interface.
A
So
I'm
going
to
say
I
want
to
set
the
the
thing
here
to
45
and
this
one
to
let's
make
it
75..
Now,
when
I
generate
the
pipeline
script
notice,
okay,
I
got
it
backwards.
It's
75
and
the
the
the
sunshine
there
tells
me
okay,
it
will
be
stable,
sunny
if
it's
75
percent
and
cloudy,
if
it's
45
or
above
so,
if
it's
above
75
percent
we're
stable,
we're
we're
success
if
we're
at
least
above
45
percent
we're
unstable,
but
okay,
if
it's
below
45,
it's
a
fail.
A
A
B
B
B
Is
the
help
on
the
always
run
coverage
collection,
even
if
it's
failed
or
done,
but
I
want
that
and
then
I
want
to
see
that
you've
got
all
of
these
things,
that
you
set
a
minimum
and
maximum,
and
this
is
how
it
works
for
each
one
and
they
all
work
the
same
so
which
is
actually
in
a
way
that's
actually
more
useful
than
having
help
on
each
one
of
these
boxes,
just
for
yuck.
So
we've
got
one
two,
three,
four
five,
so
we've
got
six
categories
here.
B
A
B
A
Okay,
oh,
oh,
that's
an
interesting!
Well,
no,
but
see
see
the
problem
here
is
this:
this
alberge
run
collection
is
actually
not
associated
with
these
settings
at.
A
B
B
A
But
but
maybe
maybe
that's
that's
again,
where
should
we
consider
doing
exactly
that
same
technique
here
with
change
build
stats
status
according
to
threshold,
so
yeah.
A
B
A
B
It's
not
exactly
right,
but
this
is.
This
is
talking
about
what
coverage
collections
are.
A
A
Now,
if
I
clear
that
it's
still
set,
if
I
uncheck
that
they
are
still
set
okay,
so
it's
honoring
the
settings-
I
just
don't
know,
I'm
not
sure
I
believe
it.
B
A
B
A
A
Skip
copy,
I
didn't,
I
suspect,
that's
this
one:
disable
display
of
source
files
for
coverage,
yeah.
A
B
B
B
B
A
B
A
And
and-
and
I
this
will
be
a
fun
one,
because
I
think
I
think
I've
got
the
right
interpretation
and
can
I
but
it'll
be
it'll,
be
a
worthwhile
thing
to
to
try
to
prove
it.
I
think
that
right,
in
this
case,
pipeline
pipeline
did
something
really
cool.
They
exposed
internal
variable
names
and
when
the
internal
variable
names
are
poorly
chosen,
those
poorly
chosen
internal
variable
names
are
exposed
to
the
user.
B
A
And
I've
I've
got
a
sort
of
a
classic
example,
a
really
embarrassing
poster
child
example
right
here.
Let's
see
this
one,
not
yet
we
need
checkout,
I'm
going
to
show
you
some
horrible,
terrible
embarrassment.
Look
at
this
okay.
So
this
thing,
oh,
oh,
this
is
my
new
version.
I
gotta
use
the
old
version.
This
is
this,
is
the
one
that's
got
the
fix,
here's,
the
ugly
version.
A
What
the
mistake
I
made
was
made,
the
st
the
mistake
original
jenkins,
get
plug-in
implementers
made
that
I've
never
corrected
until
very
soon
coming
up
in
a
new
release.
Is
this
if
I
say
check
out
and
I
say,
get
and
nothing
else,
I'm
still
I'm
still
on
the
wrong
computer.
Sorry
meg!
You
can
tell
me
what
it
does.
I
trusted
you,
it
just
puts.
I've
got
to
show
it
to
you.
This
is
just
too
fun.
It's
the
the
embarrassment
factor
is
amazing,
because
what
it
does
is
it.
A
A
And
if
a
user
ever
says
true
on
that
thing,
they
will
invoke
code
that
I
have
never
tested
that
has
no
automated
tests
has
no
safeguards
in
it
and
I
expect
you
to
die
a
catastrophic
terrible
horrible
death,
aha,
and
so
so
it's
one
of
these,
oh
whoops.
Somebody
looked
inside
the
git
plug-in
source
code.
The
java
code
did
is
what
did
and
sees.
There
is
a
variable
name
generate
sub
module
can
do
generate
sub
module
configurations
and
they
allow
the
user
to
set
it.
A
A
B
One
thing
I
would
say
back
to
the
beginning
of
this:
for
this,
we
all
the
way
you
talk
about
the
pipeline
gen
the
pipeline
documentation.
I
would
refer
to
this
as
steps
reference.
A
B
Makes
everything
make
so
much
more
sense
and
try
now
we've
got
a
new
writer
trying
to
make
this
stuff
make
sense,
and
it's
like.
So
I
would
say
that
the
other
thing
that
I
would
propose,
after
working
with
you
for
all
this
time,
so
it
looks
like
there
is
a
convention
for
the
html
file
to
have
the
name
of
the
step
in
it.
B
A
Help
is
available
for
every
pipeline
parameter,
pipeline
argument,
pipeline
step
and
pipeline
argument.
That's
a
that's
an
interesting
one.
Yeah.
B
A
A
B
A
But,
but
there
is
the
concept
in
plug-in
development
of
an
injected
test.
This
is
a
test
that
is
inherited
from
the
parent,
and
so
the
the
plug-in
maintainer
gets
it
for
free
and
that
injected
test
does
some
things
that
every
plug-in
is
expected
to
pass,
and
so
this
this,
this
idea
could
be
add
an
injected
test
that
checks
pipeline
arguments,
checks
for
pipeline
help
for
help
for
pipeline
steps
and
arguments.
A
B
That
becomes
a
rule.
They
need
these
html
files
that
include
the
name
of
the
step
or
the
variable
or
whatever.
What
about?
Oh
god,
this
is
gonna,
the
the
the
the
the
what
the
declarative.
A
A
So
that
there
it's
actually
pretty
strong,
the
challenge,
usually,
is
that
at
least
for
me,
it's
not
always
that
it
does
exactly
what
I
want.
So,
for
instance,
I
say
stages
and
then,
if
I
say
add
a
stage
and
the
stage
is
going
to
be
named,
let's
see
get
the
code
stage
will
contain
sequential
stages
and
we're
going
to
add
agent.
One
of
those
stages
needs
to
be
running
on
the
label,
that
is
windows
and
another
one
needs
to
be
an
agent
stage
that
is
running
on.
A
A
That's
a
lovely
face,
absolutely
what
a
marvelous
face.
Here's
to
the
face!
Okay!
So
here
is
the
screen.
A
So
if
we
make
this
large
enough
to
actually
read
so
it's
I
just
added,
I
generated
stages
stage
and
then
one
or
more
stages
to
include
inside
the
sequential
stages
block
and
now
yeah,
but
see
it's
it's
for
me,
the
declarative
generator
is
it
works
really
well
in
those
cases
where,
where
it,
it
hits
what
I
need
there
are
times
when
I
I
seem
to
bump
into
surprises
where
oh,
it
didn't
quite
give
me
what
I
wanted.
So
here's
agent
annie,
here's,
oh
no!
I
would
like
to
be
running
only
on
linux.
B
No,
there
are
some
code
examples
and
well,
but
plugins
don't
add
to
this
to
the
directives
right.
The
directives
are
at
jenkins
level.
A
B
B
B
A
Well,
no,
no!
Actually,
I
think
it's
intentional
that
it's
only
talking
about
declarative,
but
as
a
matter
of
practicality,
we
owe
it
to
the
users
to
point
them
to
to
scripted
syntax
as
well.
So
so
this
says:
okay,
here's
the
pipeline
syntax
page,
and
this
is
entirely
declarative.
No,
it's
not
okay,
so
go.
B
B
A
I
think
so
right
so
so
this
this
should
also
have
a
point
or
two,
because
there
actually
is
a
page
on
on
jenkins.io
that
talks
about
the
snippet
generator
all
right,
and
so
let
me
find
it
because
the
get
plug-in
links
to
it.
So
here
is:
let's
see,
video
no
snippet,
syntax
pipeline,
syntax.
Helper,
oh,
come
on
now!
That's
embarrassing,
because
I
knew
that
I
had
placed
trying
to
persuade
people
to
use
the
syntax
generator,
the
snippet
generator,
and
now
I
don't
know
what
I've
done
with
it.
A
That's
really
sad,
okay,
good,
but.
B
A
No
well,
okay,
so
here
it's
called
snippet
generator
right,
and
but
now
you
see
in
this
context,
what
it's
doing
it's
saying
the
same
thing
as
what
I
get
here
if
I
click
pipeline
syntax,
so
it
really
is
the
snippet
generator
pipeline.
Syntax
gives
me
three
different
choices
for
what
to
do
with
so
there's
pipelines,
there's
pipeline
syntax,
snippet,
generator
same
page
pipeline,
syntax,
declarative
directive
generator.
A
A
B
B
A
B
A
A
A
No,
no,
it's!
Well!
It's
actually
good
in
that.
What
it's
doing
is
generating
the
equivalent
of
that
step.
Reference
page
based
on
the
plugins
I
have
installed.
So
this
is
my
local,
precisely
matched
version.
So
if
I
here
this
is
a
fun
one,
because
now
I
can
check
it
notice
this
time.
Let's
see
if
we
can
see.
No,
oh,
yes,
nope,
okay!
So
I'm
I'm
not
sure.
So.
This
is
another
way
that
we
could
teach
developers
to
check
their
their
online
help.
A
If
they
go
to
pipeline
syntax
and
go
to
steps
reference,
it
will
regenerate
the
it
will
generate
the
help
by
reading
their
their
plugin
and
now
okay.
This
is
all
right,
yeah
look!
This
is
my.
This
is
my
stable
machine,
the
machine
that
I
didn't
install
the
new
plug-in
on
here's,
my
new
machine,
where
I
did.
Let's
go
to
the
steps
reference
and
we're
going
to
look
to
see
that
jacoko
plug
in
got
my
now.
It's
still
generating
the
page,
so
patience,
patience,
patience,
okay!
So
now,
if
we
look
for
jacoko
here,
expand
this.
A
Not
sure
we're
going
to
persuade
other
people-
oh
yeah,
you
should
you-
should
invest
great
large
quantities
of
time
in
creating
online
help.
So
the
interesting
problem
yeah
all
right.
Well,
I
I
apologize.
I
need
to
end.
I
am
going
to
call
us
to
a
stop
excellent,
any
objections.
If
I
post
the
recording
of
this
after
it's.