►
From YouTube: Platform SIG 2019 10 24
Description
Jenkins platform special interest group meeting Oct 24, 2019. Topics include AdoptOpenJDK as a possible replacement for OpenJDK in the Jenkins Docker images, benefits from multiarch Docker builds, AdoptOpenJDK J9 as a possible added alternative Docker image, and plugin installation manager release preparation.
Also discussed the latest results from Hacktoberfest (50+ first time contributors, 200+ pull requests).
A
A
You
this
is
the
platform
speciality
for
Jenkins,
thanks
for
being
here
and
here's
our
agenda
for
today,
Alex
thanks
for
joining
us.
So
we've
got
open
action
items
that
we'll
review.
First,
then,
we've
got
several
topics
around
adopt
open
JDK
one
is
possibly
considering
it
as
the
as
a
replacement
base
JDK
for
the
Jenkins
image
instead
of
relying
on
open
JDK.
The
other
is:
we've
got
a
proposal
right
now
in
the
community
to
add
a
j9
based
image
in
addition
to
the
hotspot
based
image.
A
A
It's
bumping
into
Oktoberfests,
discussion
and
I
think
we
will
delay
the
configuration
is
code
change,
oleg
is
traveling
and
on
vacation
this
week,
so
we'll
likely
delay
that
until
another
meeting
anything
else
that
needs
to
be
added
to
the
agenda,
Alex
good,
all
right,
okay!
So
first,
then,
let's
review
the
open
action
items.
I've
still
got
the
action
item
long-standing
to
open
the
jet
for
the
docker
operating
system,
support
platform,
selection
rules
that
won't
happen,
probably
for
a
month
or
more,
because
I've
got
other
things
that
I
need
to
focus
on
like
hecto
Bertha's.
A
A
Okay,
so
limited
liability
corporation
in
the
US
will
allow
them
to
have
a
legal
entity
which
isn't
tied
to
a
single
person
right.
That's
that's
good,
excellent!
That's
very
good!
Okay
and
the
core
release
automation
project
I
know
that
Olivier
continues
working
on
that
right
now
that
I
believe
the
biggest
sticking
point
still
is
the
code
signing.
So
there's
been
additional
pressure
putting
on
that
to
get
that
LLC
created
I'm,
hoping
to
hear
more
within
the
next
two
or
three
weeks.
Great.
A
Thank
you,
okay.
So
then
the
next
is
that
adopt
openjdk
is
an
alternate
jdk
implementation,
which
includes
jdk,
x',
built
and
tested
for
various
interesting
platforms
and
they're
tested
with
the
Java
compatibility
kit,
they're
verified
and
delivered,
and
they
they
work
quite
well.
I've
been
using
them
for
many
months
as
an
alternative
to
open
JDK,
and
that
that
alternative
is
now
looking
more
interesting,
because
it's
a
natural
place
to
get
platform
support.
A
A
So
right
now
what
Jim
has
has
started
is
a
proposal
to
discuss
what
it
would
take
to
transition
the
docker
image
that
we
officially
deliver
from
using
open
JDK
to
using
adopt
open
JDK,
and
that
would
mean
that
it
has
to
support
right
now
we
deliver
Debian
image.
We
deliver
a
Debian
slim
image.
We
deliver
a
CentOS
image
Alex.
If
I
remember
correctly,
we
do
not
yet
deliver
a
Windows
image
in
docker.
Is
that.
B
A
B
A
See?
Okay,
so
this
would
give
me
the
benefits
of
running
on
Windows
kernel,
running
running
with
Windows
file
system
Windows
kernel,
but
without
the
large
image
size.
Okay,
you
kind
of
like
a
plan
right
right.
Yes,
all
right
so,
like
slim,
for
Windows,
interesting,
okay.
So
but
you
say
that,
but
you
say
not
even
adopt
open.
Jdk
has
a
nano
server
image.
That's.
B
Correct
and
there's
actually
a
bug
since,
at
least
in
the
jk8
sense
version
two
to
two
that
caused
problems
with
nano
star
images,
because
it
doesn't
have
all
of
the
dll's
and
stuff,
but
like
the
Windows
server
core
has
smaller.
Obviously
uh-huh
there
were
a
couple
bugs
wasn't
been
resolved,
so
we
should
be
able
to
do
nano
server
images.
Now,
oh
okay,.
A
That's
very
encouraging.
Now
one
of
my
concerns
was
with
all
the
master
images
we
have.
I
am
quite
dependent
and
I
assume
others
had
the
same
bad
behavior.
If
you
will
that
the
master
images
are
very
important
and
their
exact
content
is
quite
important,
so,
for
instance,
I
depend
on
certain
pack
on
packages
that
are
in
in
Debian
in
the
image
we
can't
change,
that
I,
suspect
or
we'll
get
lots
of
grumbling.
B
A
B
A
All
right,
great
natasha,
thanks
for
joining
alright,
so
anything
else
on
on
o.
Also
that
I
think
covers
the
topics.
I
know
about
adopt
open,
JDK
Alex
unless
there's
something
else
that
you
wanted
to
be
sure
we
capture
in
the
notes.
Oh,
maybe
we
should
capture
next
step,
so
next
steps,
I
think,
are
evaluate
the
pull
requests.
B
I
think
it's
important.
You
mentioned
that
not
knowing
or
making
sure
that
the
packages
that
people
are
lying
are
still
there.
We
wanted
to
look
at
feedback
between
the
bed.
Group
I'm
gonna
see
what
packages
people
are
allowed
on,
so
we
can
make
sure
that
any
visions
we
make
are
not
going
to
break
people.
Yes,.
A
Okay,
know
that
that's
a
good
idea,
I
was
thinking.
Whoops
excuse,
my
bad
at
it.
I
was
thinking
that
confirmed
the
package
contents.
Only
change,
jaded
88,
the
JDK,
not
any
of
the
any
other
package
definition
or
package
inclusions
and
but
I
think
you've
got
a
good
point.
Ask
the
death
route
Bev
list
if
there
are
specific
package
requirements
which
can't
be
retained
right
if
we
find
hey,
the
failure
to
include
OpenJDK
means
that
we
lose
these
things.
These
packages
that
were
implicitly
installed
that
now
don't
get
installed
by
adopt
openjdk.
A
B
A
Well
so,
first,
let's
give
an
overview
for
those
those
who,
maybe
not
not
entirely
aware
so
open
j9,
is
a
different
garbage
collector.
If
you
look
at
my
garbage
collection
is
the
wrong
way
to
say
it.
It's
a
different
virtual
machine
implementation
right,
so
it's
a
competitor
to
hot
spot,
hot
spot,
the
de
facto
virtual
machine
image
and
what
it
has
as
a
benefit
is
that
it
and
it
is
designed
for
small
environments,
fast
startup
environments
and
low
memory
environments.
A
So,
for
example,
that
makes
it
particularly
interesting
for
places
where
we
may
have
less
memory
than
been
typical.
My
raspberry
pies,
a
pine
board
or
those
kind
of
things
where
a
constrained
environment,
the
fast
startup
time
is
particularly
interesting
for
use
when
testing
and
and/or.
If
we're
running
things
like
the
Jenkins
file
Runner
or
where
it
starts,
a
Jenkins
instance
perform
some
action
and
then
stops
cutting
the
startup
time
is
is
very
interesting
there
because
it
cuts
the
cost
there.
A
We're
we're
reducing
the
cost
of
start-up
is
a
hell
matter.
A
bunch
so
open
j9
is
interesting
for
that.
However,
it
is
because
it's
a
different
virtual
machine.
There
can
be
bumps
and
bruises
on
things
places
where
we
were
unwittingly
dependent
on
the
hotspot
virtual
machine
and
need
need
some
code
changes.
However,
open
j9
initial
testing
looked
quite
promising.
A
It
has
one
other
feature
which
allows
it
to
do.
Oh
dear,
there's
a
there's
a
word
for
it
in
the
compiler
world,
where
what
you
do
is
you
do
pre
load
of
cash
pre
loading?
How
to
point?
Well?
Yes,
yes,
exactly
it's
a
head
of
clean
up
the
cache
of
Java
objects
before
before
starting
the
virtual
machine
at
virtual
machine
startup,
and
what
that
that
the
idea
then
would
be
we
could
compile
and
do
it
start
Jenkins
in
the
docker
image,
build
process.
B
A
B
A
C
So
this
was
like
a
couple
weeks
ago,
like
ask
me
so
I
gotten
some
like
feedback
on
the
plug-in
installation
manager,
and
so
all
I
could
invited
me
to
like
just
discuss
that
on
one
of
these
calls
and
I
know
like
last
time,
the
meeting
was
cancelled
or
I.
Don't
know
like
exactly
what
happened
so
yeah
so
I.
If
there's
time,
I
wouldn't
mind
like
talking
over
some
of.
A
C
So
yeah
I
guess
like
we
can
start
kind
of
like
current
status,
so
once
school
started,
I
haven't
really
been
doing
much
work
on
it.
I
did
have
like
a
couple
questions.
This
was
like
unrelated
to
this
particular
feedback,
but
I
think
the
next
step
was
like
releasing
basically
the
first
official
version
and
I
was
always
like
a
little
bit
nervous
to
do
that
because
I
don't
know
it
like.
If,
basically,
once
you
release
out,
then
you
have
to
support.
You
know
backwards,
compatibility
so
I
don't
know.
C
B
I
thought
it
was
at
a
really
good
safe
is
how
you've
done
phenomenal
work
over
the
summer,
so
I
think
it's
I
think
it's
ready
for
our
first
release
and
and
yeah.
You
do
have
to
think
about
backward
compatibility
and
stuff,
but
yeah
at
a
certain
point.
You're
not
gonna,
be
making
a
ton
of
changes.
I
would
think,
but
just
adding
features
I
think
it
should
be
okay,
not
too
bad
to
support
it
and
Plus.
Remember
it
you're,
not
the
sole
person
that
has
to
support
it
either.
A
C
A
Can
submit
pull
requests
for
your
you
to
evaluate,
or
now
Natasha
the
we
did,
get
a
transition
to
the
github
from
wiki
for
documentation
to
github
I
assumed
that
the
plugin
installation
manager
hasn't
gone
through
that
transition.
Yet
so,
if
someone
wanted
to
contribute
a
pull
request
to
you
for
that
change,
you'd
at
least
I
soon
be
willing
to
evaluate
it.
Have
I
understood
correctly.
A
No
not
for
issues.
So
it's
good
question,
so
issues
with
you
can
continue
to
track
wherever
the
documentation
typically
is
in
a
readme
file
or
some
other
place.
Many
plugins
provide
there
to
have
from
a
long
history
provided
their
documentation
on
wiki
Jenkins,
C,
Iori,
o
r
Jenkins
dot
IO.
So
that
wiki,
though
we've
taken
it
read
only
because
of
spam
problems
and
because
we
found
that
we
prefer
to
maintain
the
documentation
right
inside
the
inside
the
plugin
on
its
own
repository,
and
I
think
you're
probably
actually
already
putting
the
documentation
there.
A
A
B
C
C
All
right
and
then
so,
just
in
terms
of
some
of
the
feedback
that
had
been
given.
So
all
of
that
is
posted
on
art
that
I
posted
on
the
git
er
chat
boy,
so
some
of
it
I
think
is
not
as
relevant
or
I.
Think
you
know
if
I
guess
it
does
in
some
ways
point
out
that
maybe
I
should
make
more
things
clear
on
the
on
the
documentation,
but
so
I'll
just
kind
of
go
over.
C
I
think
so
I
guess
I.
The
first
question
that
I
had
was
so
in
terms
of
like,
if
you
like,
input
for
the
tool,
if
you
have
a
txt
file,
it'll
kind
of
accept,
like
the
falling
format
like
the
plug-in
name,
the
version
and
then
like
a
URL.
If
you
want
to
download
it
directly
from
a
URL,
and
so
one
of
the
problems
that
I
had
sort
of
had
was
like.
C
So
those
are
separated
by
colon
and
but
then
there's
also
kind
of
like
a
colon
and
like
if
in
your
url,
so
I
think
that
that
more
or
less
it
was
like
kind
of
hard
for
me
to
figure
out
like
the
best
way
to
I
guess
her
site,
and
so
one
of
the
things
that
like
I
had
done
was
just
like
and
I
think.
This
is
what
I
was
already
doing.
But
if
like,
if
you
have
say
you,
if
you
do
input
of
a
URL,
then
the
version
will
just
be
ignored
and
I.
C
Think,
like
the
expectation,
would
be
that
people
would
just
leave
that
null
or
just
like,
have
an
empty
string
there.
But
it
could.
You
could
end
up
in
some
situations
where
people
like
don't
do
that
or
it
could
be
sort
of
confusing
because
yeah.
Basically,
if
you
have
a
URL,
then
the
version
would
just
kind
of
be
ignored
and
the
if,
if
you're
downloading
it
from
a
URL,
you
could
actually
have
it.
C
So
he
like
pointed
out
that
yeah
you
could
end
up
with
sort
of,
and
this
is
true
any
way
that
you
could
end
up
with
kind
of
like
these,
like
weird
scenarios,
so
yeah,
do
you
guys
have
any
feedback
on
that.
B
C
I
might
be
doing
that
I
can't
I
spent
actually
over
in
a
while
since
I've
like
looked
at
that
I'd
have
to
double-check
and
see
if
I
remember,
that
was
one
of
the
things
that
I
was
first
creating
it.
That
was
like
seemed
a
little
tricky,
but
yeah
I
can
check
that.
A
Yes,
so
I'm
I'm,
not
overly
worried
about
I
I,
think
the
choice
to
put
colons
is
the
separator
between
the
of
the
things
that
follow
plug-in
name
is
the
right
choice,
because
you
keep
compatibility
and
for
me
that
was
the
crucial
thing,
so
I
wouldn't
I
would
lobby
against
switching
separators
I'm,
not
as
concerned
about
the
hey.
If
you,
if
you
specified
a
version
and
the
URL
you
get
exactly
what's
at
the
URL,
that's
for
me,
that's
desired.
A
Behavior
I
would
not
want
you
to
silently
apply
some
rules
to
the
or
apply
rules
to
that
optional.
Url.
To
attempt
to
use
the
version
number
URL
is
is
not
used
in
the
other,
the
other
formats
that
typically
use
plugins
txt
file
right,
they
only
say
plug-in,
name
and
version.
As
far
as
I
recall,
you
know,
URL.
B
Or
you
plan
yeah
I
would
I
would
say
just
kind
of
give
it
an
order
of
precedent,
but
the
URL
is
the
highest
precedence
and
then
the
version
is
secondary
precedence.
Maybe
that's
what
you
put
in
the
docs
okay
you're,
getting
that
URL,
regardless
of
what
version
it
is
or
what
version
you
specify
all
right.
Okay,.
C
C
B
C
C
Okay,
so
this
is,
he
said,
or
he
recommended
versioning
the
plug-in
input
txt
file,
which
he
said
this
will
allow
you
to
make
updates
to
the
parameters,
how
easily
maintaining
backwards
compatibility.
Many
public
api's
do
this,
for
example,
Tocker
composes,
llamó
files.
You
guys
think
that
that
would
also
be
like
a
good
idea.
A
B
C
A
C
Yeah
I
think
it
was
just
if,
like
okay,
my
understanding
is
like
if
it
if
I
change,
something
about
like
the
format
so
in
the
future
like
that,
would
just
help
with
kind
of
knowing
which
which
format
you're
currently
on
or
if
you're,
trying
to
use
like
an
older
format.
So
I
guess
I
get
in
some
ways
if
we
always
say
like
it
has
to
be
backwards
compatible
going
forward.
But
maybe
there's
this.
If
you
want
to
continue
to
add
things,
maybe
it
would
be
helpful
for
you
to
know.
C
A
Objections
for
me
to
adding
it,
but
I
would
just
add
it
as
a
parsed
comment
right,
the
the
format,
the
file
format
already
accepts
comments,
yeah
and
if,
if
you
said,
hey
we're
going
to
buy
a
de-facto
standard
make
the
part
if,
if
the
first
line
starts
with
a
hash
mark,
a
space,
the
word
version
colon
and
then
some
string
that
will
be
treated
as
the
version
of
the
of
the
file
format.
Then
you
haven't
broken
compatibility
and
if,
in
the
future
someday,
you
said,
I
need
to
make
a
major
format,
change
people
could
say.
A
B
A
A
A
B
C
C
C
Okay
and
then
the
next
piece
is
feedback,
so
I
I
haven't
ever
used,
terraform,
so
I,
don't
know
I,
guess,
I
didn't
really
understand
this
quite
or
I
didn't
have
enough
context
for
this.
He
said
and
I
don't
know.
If
this
would
be
a
plan
with
this.
Well
anyway,
it's
but
he
said,
should
you
expand
your
tool
to
interact
directly
with
Jenkins?
A
great
feature
to
add
would
be
terraformed
support.
C
A
I'm
I'm
a
customer
to
terraform
being
used
to
define
I
declare
it
to
give
a
declarative,
decanate
declaration,
a
declarative
definition
of
cloud
infrastructure
and
that
lets.
For
instance,
we
use
it
to
define
a
whole
bunch
of
machines
that
we'll
use
for
training
and
then
automatically
carry
them
down
when
we're
done
and
and
so
terraform.
In
that
case,
just
lets
us
declare
I
want
this
many
machines
of
this
type
with
this
installed
on
them,
etc.
I
think
that's
way
beyond
the
your
current
scope.
Okay,.
C
Okay,
yeah,
that
was
just
yeah
some
of
the
feedback
he
gave
and
then
the
last
sort
of
thing
that
he
had
said
was
so
we
had
guys
sort
of
back
and
forth
about
some
of
the
default
behaviors.
So
in
terms
of
like
which
plugins
you
and
the
dependencies
that
you
install
so
ultimately
what
I
ended
up
doing
was
making
it
by
default
to
install
the
dependencies
that
are
listed
within
like
the
metadata
in
the
update
center.
C
But
the
problem
with
that
is
that
sometimes
those
are
a
little
bit
conservative
or
maybe
a
little
bit
I,
don't
know,
there's
much
like
newer
forms,
but
with
the
previous
tool
with
like
always
getting
the
latest
dependencies.
The
problem
with
that
was
that
those
aren't
always
deterministic,
so
it
changes
as
later
plug-ins
come
out,
so
so
the
last
piece
of
feedback
that
he
said
and
I
think
that
this
is
I.
C
Guess
like
a
good
idea
that
I
haven't
done
yet,
but
he
said
that
he
was
a
fan
of
the
deterministic
route
by
default,
with
the
optional
ability
to
clinical
update,
auto
update,
all
so
yeah,
so
I
think
basically
he's.
He
said
that
he's
a
fan
of
having
software.
That
does
the
same
thing.
You
know
today
and
six
months
from
now,
but
it's
good
to
also
get
the
latest
version,
because
that's
most
likely
like
the
most
secure
and
yeah,
then
he
could
perform
like
updating
like
I
guess
on
his
own
time.
C
A
Installation
manager
today
has
chosen
the
deterministic
path:
that's
goals,
okay,
so
you
can
read
inside
the
metadata
from
plug
in
a
to
decide
which
of
its
which
version
of
its
dependence.
You
should
be
installed
and
I
assume
if
I
declare
explicitly
one
of
those
dependencies
and
it
surgeon.
You
use
my
explicitly
declared
one,
not
the
implicit
one
from
the
updates
right.
C
C
Okay,
so
yeah
I
guess
that's
most
of
that.
So
I
don't
know
if
you
guys
have
any
other
feedback
or
anything
I
mean
if
you
I
could
probably
do
like
a
release
today.
If
now,
that
I
feel
a
little
bit
more
confident
that
it
sounds
like
it's
ready,
I
think
and
yeah
I,
just
hadn't
really
once
school
started,
I
had
a
lot
more
distraction,
so
I
haven't
been
able
to
dedicate
as
much
time
I
actually.
A
You've
done
wonderful
things.
Thank
you
very
much
for
your
contributions
in
the
community
and
Natasha
I.
Think
I
think
it's
time
to
do,
one
that,
oh
one,
that
was
not
the
last
release
right,
we're
gonna.
We
intend
to
continue
releasing
so
calling
if
one
got
always
had
plenty
of
time
to
debate
it
plenty
of
time
to
settle.
Certainly
there
will
be
more
things
discovered
and
it
feels
perfectly
reasonable
to
call
it
wonder,
though.
Okay.
A
B
A
B
A
Last
topic,
I
had
was
October
fest
and
the
platform
topics.
I
am
thrilled
to
note
that
we
have
over
50,
first-time
contributors
that
have
come
on
to
the
project
in
its
plugins
or
other
core
or
other
tools.
Since
the
start
of
October
over
a
hundred
pull
requests,
we've
got
only
a
week
left.
Here's
your
chance,
keep
promoting
it,
keep
encouraging
people
to
look
at
the
newbie
friendly
bugs
it's
it's
an
impressive
set.
A
There
are
still
over
200
new
bee-friendly
issues
that
people
can
look
at
this
little
dashboard
presents
them
like
this,
so
you
can
choose
the
component
that
you
want
to
use
that
you'd
like
to
help.
You
can
choose
the
severity
across
the
top
and
then,
when
you
do
that,
it
will
show
you
the
bugs
in
that
type.
So,
let's
look,
for
instance,
at
my
favorite,
the
platform
labeler
and
it's
three
open
newbie
friendly
bugs,
and
here
they
are.
They
are
actually
three
feature:
requests
automatically:
labeled
linux,
mint
automatically
label,
Fedora
Linux
and
automatically
label
clear
Linux.