►
From YouTube: Jenkins GSoC Q&A for students. Mar 20, 2019
Description
B
A
B
B
A
A
A
Little
bit
Devil's
knot.
Yes,
yes,
okay,
so
I
just
want
you
to
ask
that
this
new
item
section
that
was
here
when
the
promoted
that
the
new
plugin
is
implemented,
then,
where
would
it
be
placed
like
like?
Will
it
be
placed
alongside
these
projects
freestyle
projects?
There
will
be
something
like
promotion
promotion
of
artifacts.
Would
it
be
placed
at
this
particular
place
or
like
a
the
job?
We
were
actually
creating
the
job.
B
B
So
there
are
two
parts
of
the
question:
one
is
how
it's
being
defined
another
one.
Oh
it's
being
so
yeah.
It
would
be
great
if
we
could
define
promotions
and
promotion
logic
directly
pipeline
definitions
or
in
declarative
pipeline
special
sections,
but
you
mind
listening.
It
would
still
appear
as
a
separate
job
type
management
page,
since
this
is.
A
Being
mentioned
that
there
should
be
a
squad
on
standalone
plugin
right,
so
it
should
see
in
this
piece
and
next
question
would
visa
like,
whenever
I
go
inside
a
certain
project
and
go
inside
a
particular
bill
right
so
inside
the
computer
section,
we
have
this
section
right
for
bills
when
this
section
this
will
be
migrated
to
that
job
right.
The
new
job.
A
B
You
can
define
it
in
both
ways,
depending
on
the
preference
you
can
define
it
inside
existing
pipeline
is
a
property
like
flow
suggested
or
is
a
special
clothes,
for
example
in
the
credit
pipeline
or
you
deployment
in
external
job.
So
it's
a
matter
of
definition,
and
you
know
they
expect
you
the
student
to
come
up
with
proposal.
They're.
Both
options
are
technically
possible
and
both
options.
Many
year
find
some
users.
B
B
C
B
Right
but
inside
it
will
be
still
a
pipeline
code,
it
would
be
still
executed
as
a
separate
job
entity
or
maybe
as
a
separate
run
entity
depending
upon
how
we
implement
that,
but
it
would
be
just
a
part
of
third
party
such
thing
definition
as
I
tried
to
say
it
may
be
different.
So
the
finish
of
promotional
logic.
It
may
be
set
your
original
job.
It
may
be
defined
in
external
job.
It
depends
on
how
I.
C
B
A
So
my
next
question
is
like,
as
your
guidance
I
went,
I
read
the
release
blog
plugin,
since
it's
compatible
with
the
pipeline,
so
I
just
read
through
all
the
codebase
and
what
I
found
is
one
in
one
of
those
classes
inside
the
release,
plugin
like
the
released
promotional
conditions
or
Java
in
this
class.
What
it
does
is,
it
extends
a
promotion
condition
which
is
which
happens
to
be
the
class
of
promoted
pipe
promoted,
build
plugin.
A
A
Okay,
like
promotion,
dot,
java
promotion
process,
dot
java
job
property.
These
are
not
compatible
because
they've
got
abstract
classes
like
abstract
builds.
That's
why
you
know
migrate.
Ok,
so
that's
right!
Ok!
Ok!
Next
question
is
like
if
abstract
builds
are
not
supported
by
pipelines.
If
abstract
projects
are
not
supported
by
pipelines,
then
what
are
the?
What
is
the
actual
project
type
which
is
compatible
with
pipeline,
which
is
supported
by
pipeline.
B
B
Okay,
so
job
is
kind
of
top-level
entity
for
executable
types,
so
job
has
methods
like
so
yeah
it
generally
contains
runs,
and
this
runs
somehow
they
been.
So
there
are
many
implementations
of
jobs.
If
you
see
here,
you
may
see
that
there
is
abstract
project
which
is
a
part
of
job.
So
it's
one
of
the
communications
of
jobs.
Another
implementation
is
pipeline,
so
on
the
same
level,
there
are
other
project
types,
for
example,
inhabitants,
project
or
other
projects
which
inherit
the
job
type.
B
Pipeline
because
pipeline
is
a
Septon
job
type.
Okay,
if
you
see
a
use
keys
for
supporting
jobs
in
general,
so,
for
example,
supporting
freestyle
job
as
a
promotion
logic
for
verifying.
Then
you
can
definitely
do
that
in
your
proposed.
If
you
feel
it's
reasonable,
but
yeah
expectation
would
be
that
at
least
pipeline
promotion
logically
supported.
A
A
Next
question
is
there's
in
the
in
the
project
proposal
its
mentioned.
It
has
mentioned
that
detach
detached
the
existing
promotion,
condition.
Extension
point
and
implementations
from
promoted
builds
plug-in.
What
does
that
mean
so
like
getting
rid
of
all
the
existing
extension
points
of
the
plugin?
Well,
so.
B
What
it
means
is
it
been
common
knowledge
except
she
think.
If
it,
there
are
many
EPIA
plugins,
so
plugins,
which
provides
shade
functionality
and
being
reused
by
other
plugins,
for
example.
Promoted
bills
already
includes
extension
points
for
defining
promotion
conditions,
example,
manual,
promotion,
condition
when
somebody
quits
a
button
or
dependents
or
whatever
other
event
and
Jenkins.
There
are
maybe
a
dozen
of
implementations
for
this
promotion
condition,
so
they
do
this
line
in.
B
But
if
you
create
a
API
plugin
and
if
you
move
for
very
usable
functionality
out
of
the
promoted
deals
when
other
plugins
and
consumed
its
functionality
without
including
the
rest
of
the
promotion
fields
code.
So
the
idea
of
this
body
that
very
you
just
detach
the
plugins
then
effectively
reuse
the
usable
components
of
existing.
A
So
for
the
for
the
for
the
code,
part
which
is
to
be
implemented
by
the
pipeline,
I
should
mention
the
extension
point
in
it
right
like
in
a
file
booth,
the
class
which
is
along
with
the
at
the
rate
extension
point.
It
is
read
by
the
pipeline.
That's
the
exact
mechanism
of
how
pipeline
works
right,
sir.
B
A
So
last
questions
are,
like
you
mentioned
in
a
vision
in
a
vision
that,
in
the
properties
section
we
must
include,
we
can
improve
the
environment
like
where,
where
build
is
going
to
be
deployed,
and
can
we
do
that
by
using
the
existing
fingerprint
that
is
being
used
in
the
promotion?
Build
already
me.
A
B
A
So
last
question
last
question
is
like
what
you
like:
if
I
need
to
refactor
the
codes,
the
classes
which
are
not
compatible
to
buy
things,
what
would
what
should
be
made?
What
should
be
my
general
approach?
What
should
be
my
general
approach
to
refactor
them
so
that
I
can
make
them
compatible
with
the
pipeline,
like
abstract,
like
I,
need
to
replace
that
with
some
other
build
type
or
like
promotion?
Job
I
need
to
change
that.
What
should
be
my
general
approach
to
refactoring
those
codes,
yeah.
B
So
again,
general
practice,
this
project
that
we
interested
to
retain
compatibility
where
possible.
So
if
you
see
that
we
need
to
perform
it
into
the
factory,
there
are
ways
to
written
binary
compatibility.
There
are
special
week
page,
which
explains
how
to
do
that
and
if
you
work
on
any
project,
and
if
you
need
to
do
a
massive
change,
it
might
be
a
place.
B
You
want
to
start
from
so
Jenkins
binary
compatibility,
I
believe,
let's
see
an
actual
inside
retaining
working
silicon,
so
this
would
be
one
of
the
starting
pitchers
from
for
you,
because
it
references
several
rejected,
specific
ways,
making
a
trivet
number
one.
You
change
the
detail
when
you
remove
a
few
to
remove
a
method
but
yep.
If
you
see
any
significant
change
in
P,
is
definitely
something
which
will
require
significant
design
and
before
doing
that,
yes
see
whether
there
are
alternate
options,
it
doesn't
apply
to
only
this
project.
It
applies
to
all
projects.
A
Like
in
one
of
the
tutorials
in
the
plug-in
development,
I
came
across
the
fact
that
variable
substitution,
that
is
not
enabled
by
plugin,
so
there
was
an
idiom
that
was
given
so
by
including
that
it
can
be
made
compatible
with
both
form
of
projects
from
from
pipeline
and
freestyle.
It
mentioned
something
like
that
about
the
idiom
of
extension
points.
I,
so
would
that
be
the
exact
tutorial.
B
So
yeah,
when
you
have
a
specific
question,
you
may
see
that
it's
not
really
effective
to
ask
for
them
on
the
call,
because
sometimes
it's
hard
to
express
what
you
need
and
that's
why
we
recommend
using
maybe
increase
or
give
her
shots
for
that,
because
it
may
be
more
effective
in
many
cases.
Okay,
thank
you.
Thank
you.
So
what
I
propose
to
just
take
it
offline
because
yeah
we
have
a
limited
time.
A
A
D
D
So
actually
it
is
highly
integrated
with
the
existing
in
our
us
easy
to,
and
the
second
one
is
I
think
either
this
once
their
user
mom
Mary
EFS
too
easy
to
actually
when
I,
when
I
create
an
ec2
instance
and
I
only
need
to
run
one
command
line
to
one
of
those
what
ifs
to12
Jenkins
do
the
job
for
the
user.
It
might
be
much
harder
in
the
users
do
itself,
so
there
might
not
be
much
benefits
to
the
user
if
they
have
to
use
engine.
B
Talk
about
use
kiss
when
you
provision
an
engine,
an
engine
fails
efis
out
of
the
box.
Then
yes,
you
probably
don't
mean
to
implement
something
specific,
but
imagining
doing
it.
Provisionary
efis
on
the
month
within
pipeline,
for
example,
via
pipeline
richards,
whatever
my
step,
testing
state
stage
of
coverage
and
then
needs
on
data
in
such
case,
you
can
use
if
se
here
is
with
more
data
on
a
machine,
but
it
in
traditional
these
pieces.
Another
use
case
is
still
the
same.
We
face
instances
between
machines
can
be
also
done
a
inside
workspace
panel
for
you.
B
A
B
D
Yes,
actually
I
have
to
discard
through
something
interesting
during
the
exploration
of
the
universe,
yet
so
I
think
that
it
is
doable
for
AWFS
and
there
are
an
existing
ýÃ
FS
support
that
a
is
that
easy
to
plugging
so
basically
I
think
the
most
hard
the
hardest
part
of
implementing
the
EFS
support
is
I
need
to
get
access
to
the
users.
Access
rights
right,
I
need
to
make
my
Jenkins
as
a
user,
so
I
need
the
credit
user
user
names
or
something
like
that
to
log
into
their
console.
D
I
think
this
is
most
difficult
part,
but
it's
already
done
in
the
ec2
plugins,
it's
just
in
the
easy
to
blogging.
This
is
one
we
used
plugin.
So
in
this
is
a
plugin.
It
has
already
implemented
a
ways
to
get
access
to
the
console
and
then
sure
that
console
we
can
send
the
API.
We
can
send
in
a
request
AWS,
and
so
that
includes
create
an
ec2
instance,
long
changes
and
maybe
do
other
things
that
a
normal
user
can
do.
So.
D
B
Justly
you
may
want
to
deploy
dependency
on
easy
to
plug
in
directly
so
yeah,
as
we
discussed
before.
There
are
extension
points
and
Jenkins.
This
extension
points
may
be
mandatory.
They
may
be
optional,
so,
for
example,
you
can
declare
optional
dependency
from
UC
to
plug-in,
with
optional
extension
upon
documentation
so
that
you
can
still
use
external
workspace
manager
plug-in
without
easy
to,
if
needed.
B
D
B
D
Okay,
so
actually
this
another
idea
here,
if
that
I
think
that
I'm
every.
If
you
want
to
support
two
different
cloud
service
providers,
we
need
to
offer
an
API
plugin
for
those
of
all
the
for
each
of
the
cloud
providers.
I
think
that
is
a
better
practice.
Better
line
hey
if
any
other
plugins
wants
to
use
if
I
might
just
need
to
access
the
cloud
providers.
D
D
B
D
So
here
is
a
discussion.
Is
over
I
like
to
want
solid
ad,
on
which
one
we
really
want
to
do,
because
in
the
proposals
I'm
not
sure
which
one
is
a
better.
So
if
anyone
can
give
me
some
suggestions
like
how
do
I
gonna
implement,
for
example,
AWS
EFS
support
in
the
external
space
manager
and
from
the
choice
is
a
mission
above.
B
D
Basically,
there
is
a
to
waste.
You
support
it
obvious.
If
support
the
first
one
is
I.
Do
I
write
the
code
that
I'm
logging
to
the
cloud
service
provider
that
is
I,
become
Oh,
a
user
of
the
ADA
base
and
write
this
part
of
code
in
external,
your
base
and
that's
design?
But
if
we
want
to
support
multiple
cloud
providers,
the
cloud
base
of
the
external
expenditure
will
become
large
and
the
other
solution
is
I.
First
write
a
like
aw
as
I,
see
it
abyss
or
some
providers
API
plugin.
D
E
I
also
agree
with
you,
I
think.
The
second
one
is
clear
because
you
actually
decouple
the
logic
from
from
the
xws
plug-in
with
the
actual
login
and
/
and
credentials
and
stuff
like
that
in
in
another
plugin,
but
I'm
wondering
if
you
can
integrate
this
somehow
with
what
oleg
mentioned
earlier
with
the
AWS
credentials,
plug-in
or
stuff
like
this
I'm,
not
very
sure
if
they
can
be
integrated
together
somehow
so
so
so
that
you
don't
need
to
actually
write
another
plugin.
D
Yes,
pretty
obvious:
yes,
I
might
have
already
an
existing
plugins
to
use,
but
for
other
cloud
providers
we
value
Bob,
Emilia
zero
or
something
like
that.
I
might
need
to
write
for
write
different,
maybe
I
need
to
write
different
plugins
or
the
one
that
the
Oracle,
what
I'm
not
sure
what
is
ever
just
as
automation.
It
looks
like
a
bee
camera
a
uniform
and
if
you
had
to
use
all
the
cloud
service
providers,
so
I
think
that
would
be
after
investigation.
D
E
That
you
should
write
in
the
same
document,
but
maybe
Orlick
knows
how
this
should
be
done
best,
but
you
could
write
like
your
ideas
and
say
that,
okay,
if
we
want
additional
cloud
storage
with
different
providers,
then
we
can
perform.
We
should
write
this
plug-in
and
then
you
write
details
about
the
plug-in
you
would
like
to
additionally
implement
that's
what
I
would
say
so
I
would
say
it
should
be
in
the
same
document
but
I'm
I'm,
not
very
strict.
With
this.
B
I
think
with
such
multiple
ideas
in
your
project
proposal,
so
what
we
need
is
to
actually
understand
what
would
be
your
approach.
For
example,
how
you
start
the
exploration,
how
you
make
decisions,
for
example,
you
can
say
that
even
the
community
bonding
and
Trust
building
phase
you
increment
something
genetic
and
then
you
have
a
decent
maintained
point
where
you
decide
to
be
special,
or
should
we
proceed
so
as
long
as
it's
traceable
as
a
project
is
perfectly
fine
for
optional
conditions
in
the
proposal.
D
Okay,
so
if
maybe
likely,
if
time
permits
and
gotten
to
do
this
sort
of
stuff-
yes
right-
and
it
is
a
good
part-
so
I
really
help
you
a
lot,
because
I
really
don't
know
which
one
to
I
don't
know
how
to
connect
concretely
ideas
in
my
mind,
so
it
is
so.
If
anyone
has
got
me
a
lot
of
questions,
please
call
I'm
done
with
my
questions.
A
B
G
So
like
in
the
previous
question,
one
doubt
was
created
regarding
this
point
that
better
by
implementing
this
point,
can
we
you
know
discard
both
box
position
builds
or
we
can
only
just
discard
the
builds
only
by
using
the
information
through
fingerprinting,
so
I
think
I
and
Martines
about
discussing
and
like
we
would
like
I
was.
You
know
a
little
bit
confused
regarding.
E
E
A
E
G
I'm
saying
yeah,
it
definitely
made
sense,
but
I
think
like
wrong,
so
you
know
getting
the
workspace
bad
and
all
that
we
can
also
get
some
information
about.
The
builds
like
the
build
information
right
so
like
what
my
vision
is
that
enemies
discard
abusing
the
information
or
we
need
to
go
through
another
path
for
is
cutting
them
bills,
which
are
going
one
in
these
multiple
workspaces.
E
G
Yes,
so
like
I,
just
given
over
you
that
that
delete
method
which
is
currently
used
by
this
log
reader,
what
is
a,
what
does
it
do
is
like
it.
First
of
all
path
is
the
path
of
the
root
directory
and
by
getting
the
root
directory,
it
uses
some
logic
and
interest
discards
the
builds.
So
what
I
thought
is
that
by
the
fingerprinting
we
can
definitely
discover
places,
but
we
can
also
get
the
path
of
each
route
directly
and
by
using
that
we
can.
E
B
Only
disturbing
workspaces
and
table
yields,
it
should
be
the
end
ho.
So
when
something
just
decides
to
discuss
the
build,
the
process
happens
and
then
they
will
be
stopped
in
bottle
spaces,
as
we
discussed
before
is
a
listener,
and
then
you
will
be
discussing
in
this
pendant
workspaces
as
a
particle
to
discuss
procedure
but
yeah.
If
you
talk
about
specific
part
or
external
workspace
manager,
integration
I
would
expect
it
to
be
managing
on
the
workspaces,
because
the
duration
will
be.
G
Okay,
so
like
for
a
specific
implementation
with
the
external
access
manager,
you
suggest
of
discarding
only
the
workspaces
not
built
right
now,
yeah,
it
can
be
done,
but
at
a
higher
level
right,
yes,
okay,
so
I
just
include
the
so
okay
so
like.
According
to
this
point,
the
workspaces
will
be
discarded
according
to
the
user.
So
I
think
this
point
is
much
more
clear.
G
G
You
know
where,
if,
if
due
to
some
user
mistakes,
a
few
of
the
bills
can
discarded
which
were
important
but
and
now,
if
once
they
discarded
and
if
a
particular
user
want
some
information
regarding
that,
so
you
know
by
adding
this
feature,
it
can
be
accessed
so
yeah.
So
definitely
I
have
written
that
if
time
permits
and
if
all
my
other
features
gets
completed,
then
I
will
try
to
implement
this.
So
you
know
so
like
here.
You
have
just
commented
that
it
might
be
preferable
to
have
it
on
a
higher
level
outside
this.
G
C
G
Yeah
so
like,
and
that
works
this
would
be
get
it
but
like
what
I
am
stressing
it
like
a
PT
like
press
mean,
you
know
where,
for
some
of
us,
some
details
of
the
discarded
bills
of
workspaces
can
available
for
the
users
alike,
in
any
usual
case
of
emergency
or
like
due
to
some
enter
like
using
any
mistake.
If
anyone
wants
of
any
information
regarding
that,
then
you
know
we
can
just
go
where
the
user
dead
facility.
C
C
C
G
C
Current
day,
plugin
will
use
the
workspace
for
appalling,
the
or
fetching
from
the
remote
server
in
order
to
figure
out.
If
there
is
a
new
commit,
for
example,
if
your
and
then
it
will
also
trigger
if
it
doesn't
have
workplace
so
the
first
time
you
configure,
it
will
actually
restore
our
workspace.
So
if
you're
then
deleting
it,
then
basically
your
keep
infinite
loop
of
bills.
G
Okay,
yeah
yeah,
okay,
I,
just
gotta,
do
yoga
so
like
I,
just
have
a
look
on
it,
one
to
one
and
oh
yeah,
one
more
thing
terrified
with
elixir
that
he
has
committed
you're
dead.
Why
I
haven't
indicate
a
structures
point
in
the
proposal,
so
only
so
what
I
mind
or
that
you
know.
Most
of
all,
you
know
yeah
so
like.
B
G
Yeah
so
like
so
like
I,
you
know
just
mention
like
there
are
few
changes
needed
opposition
like
I.
Just
do
it.
You
know
by
by
one
or
two
days
and
then
I'll,
you
know
just
add
a
message
in
the
Gita
chatroom
of
that
she
saw
bill
discarded
to
you.
Don't
forgive
you
so
at
that
time
you
can
give
you.
You
know,
Bob
the
latest
proposal
of
mine,
okay
and
one
more
doubt
that.
G
B
And
so
yeah,
if
you
want
to
ask
something
specific
to
development,
the
best
way
to
do
that
is
das,
converging
to
developer
memories,
or
if
you
have
specific
questions
not
related
to
your
project
directly
and
the
results
Jenkins
guitar
channel
there
is
IRC
channel.
So
you
can
use
these
generic
resources
on
how
to
do
ask
common
questions.
It
would
be
my
recommendation
if
you
want
more
people
participating
in
the
review.
G
Yeah,
okay,
sure
so
like
I,
just
post
my
link,
you
know
like
after
my
final
proposal,
you
know
after
your
one
or
two
reviews
and
after
all
the
changes
I
just
post
the
link
in
the
or
meaning
list.
One
will
be
the
g-shock
open
for
all
these
minimis
and
second
will
be
the
developer
of
military,
so
that
the
mentors
or
the
community
you
know
can
just
go
through
the
booze
and
I
can
get
more
and
more
reviews
exactly
yeah
sure.
Thank
you.
B
B
If
it's
just
sitting
in
my
little
chat
because
as
I
said
in
the
chat,
I
will
think
how
to
improve
the
communication
and
these
Connie
meetings,
because
here
reviewing
it
somehow
10
box.
So
the
questions
are
here.
We
should
really
do
the
most
of
technical
discussions
in
the
many
lists
or
negative
channels,
because
you
know
it
may
be
complicated.
G
The
answer
and
relation
one
more
because
that
sound
like,
if
you
you
know
just
see
that
any
other
section
needs
to
be
a
present
in
my
proposal.
Then
please
just
inform
me
so
that
you
know
I
can
add
that
section
like
like
in
my
proposal.
I
am
taken
care
for
most
of
the
sections.
You
know,
like
my
personal
information
and
synopses
project,
description
timelines
and
all
that,
but-
and
you
know
my
working
time
commitments
and
all
that
but
like
if
you
you.
B
G
B
The
15
pages,
we
don't
really
want
to
submit
proposals
in
several
editions.
Oh
I
think
on
critical
sessions
addressed
there.
If
you
want
to
add
something,
it
would
fit
to
do
it
but
yeah,
as
I
said
before,
usually
proposals
from
two
to
five
pages.
So
when
you
go
beyond
yeah
most
likely
it's
about
additional
information,
you
put
appendix
yeah.