►
Description
Kubernetes Storage Special-Interest-Group (SIG) Volume Populator Design Meeting - 12 January 2021
Meeting Notes/Agenda: -
Find out more about the Storage SIG here: https://github.com/kubernetes/community/tree/master/sig-storage
B
All
right
so
hello
welcome.
This
is
the
first
data
populators
meeting
of
the
new
year
for
the
kubernetes
sig
storage
we've
been
out
due
to
the
holidays
and
be
being
sick,
but
I'm
back
on
this.
The
the
main
thing
I
wanted
to
wait,
I'm
not
sharing
my
screen,
am
I
sure,
screen
host
disabled
participant
shares
screen
sharing
sharing.
I
think
this
is
you.
Oh.
C
B
Yeah,
okay,
so
the
the
phase
that
I'm
at
is
I've
refactored,
all
the
the
hello
populator
code,
sort
of
top
to,
as
I
mentioned
before,
the
break
like
now.
It's
it's
using
all
the
mechanisms
that
I
think
should
be
used
by
actual
populators
to
do
the
sort
of
pvc
rebinding.
So
if
you
look
at
the
latest
version
of
this
code,
let
me
post
a
link
to
it
and
for
those
that
don't
have
it.
B
D
B
B
So
this
repo
is
now
an
implementation
of
like
a
hello
crd
and
a
controller
that
does
population
from
that
crd
and
what
I'm
working
on
now
is
trying
to
split
it.
Apart
into
like
a
reusable
part,
that
could
be
a
library
that
could
be
consumed
and
a
sample
that
sits
on
top
of
that
library
and
the
biggest
challenge
I'm
facing
with
this
work.
Is
that
because
the
the
reusable
part
is
gonna
have
to
be
compatible
with,
basically
any
crd
that
that
you
know
that
a
given
populator
may
want
to
use.
B
We
can't
use
like
ordinary
code
generator
informer
objects
from
kubernetes,
because
you
know
the
the
library
is
going
to
be
based
on
code.
That
is
not
specific
to
any
any
given
crd
and
then
the
individual
implementations
of
the
populators
will
have
presumably
their
own
crds
and
they'll
run
code
generators,
so
they'll
have
proper
ways
of
interacting
with
those
objects.
So
I've
been
trying
to
figure
out
is
how
you
interact
with
crds
or
instances
of
crs.
B
When
you
don't
have
the
code
generator
for
them,
and
I
found
this
dynamic
informer
stuff
just
just
this
morning,
as
I
was
sort
of
looking
around
on
how
to
solve
this
particular
problem,
and
I
I
guess
I
just
wanted
to
sort
of
ask
for
advice
from
anyone
else
who
has
done
something
similar.
B
B
Or
have
any
of
your
before
excuse
me,
I
have
before
okay
is
the
dynamic
conformer,
the
right
approach
to
do
that.
E
Yeah,
I
think
you,
I
think
what
you
end
up
using
is
a
combination
of
unstructured
types
plus
dynamic
informers.
So
what.
E
Type
is
it
just
a
it's?
Basically,
it's
a
it's
a
type
that
says
and
type
meta,
and
then
it
takes
everything
else
in
the
object
and
puts
it
into
like
just
like
a
map.
Basically,
okay,.
B
B
You
snapchat,
yes,
do
you
know
if
so
so,
I'm
feeling
like
the
the
library
portion
of
this
populated
work
is
going
to
have
to
do
something
like
that.
You
know
with
these
untyped
objects
or
and
dynamic
informers,
but
then
there's
going
to
be
some
glue
where
it's
going
to
the
controller.
That's
running
will
see
one
of
these
things
get
created
and
have
to
call
down
into
you
know
the
user
supplied
part
of
the
code
to
like,
say:
okay,
someone
just
created
a
thing
that
you
need
to
populate
like
here.
B
It
is,
and
at
that
point
it
would
be
good
to
be
able
to
convert
it
into
like
a
proper
golang
struct
of
the
right
type
with
a
code
gen,
but
the
library
piece
will
have
to
deal
with
it
as
an
unstructured
object.
Do
you
know,
is
it
possible,
once
you
have
one
of
these
unstructured
objects
to
convert
it
to
a
structured
object.
B
Yeah
yeah
I
mean
this
is
where
I'm
at
in
the
coding.
Is
I'm
trying
to
figure
out
this
particular
problem?
Because
because
the
way
the
existing
code
is
written,
the
hellocr
is
everywhere
in
the
code
and
and
that
makes
it
impossible
to
to
properly
refactor
it
out
because
all
of
the
it
goes
all
the
way
down
into
the
bottom
of
the
controller,
where
I
want
to
make
that
part
generic
and
reusable.
B
B
Then
that'll
get
me
going
as
far
as
as
this
refactoring
and
and
then
I'll
push
I'll
push
some
more
commits,
or
maybe
one
big
commit
that
you
know,
creates
a
reasonable
portion
of
the
library
and
then
a
sample,
and
then
after
I
have
that
I'll.
I
want
to
walk
through
it
with
you
guys
and
and
see
if,
if
it
looks
sane
or
not,
but
I'm
just
not
at
the
point
now,
where
that
we
can
go
over
the
code
because.
B
Okay,
all
right
well,
that
was
the
that
was
the
main
update
for
for
today.
B
So
so
for
those
who
don't
remember
the
way
the
hello
world
populator
works
is
there's
a
cr
called
hello.
That
has
one
field
in
it
which
is
like
string
and
then
what
it
does
is
it
creates
a
file
actually
has
two
fields
and
it
has
file
name
and
string,
and
then
the
populator
creates
a
file
with
that
name
and
that
contents
and
it
and
that's
how
it
populates
volumes.
So,
basically,
the
only
code
that
should
be
left
in
the
sample
is
that
code.
B
You
know
something
that
takes
a
hello
object
when
it
starts
up,
it,
creates
a
file
and
writes
a
string
into
it
and
then
closes
the
file
and
says
it's
populated
now
and
everything
else.
I
want
to
be
reusable
and
shareable,
and
then
we
can
work
on
you
know
creating
tests
and
and
making
it
a
you
know,
hardening
it
and
all
the
other
things
we
would
want
for
for
populators
to
be
reusable.
D
Let
me
check,
as
of
last
week,
they
had
an
updated
the
release
timeline,
but
let
me
see
if
it's
up
now.
B
A
A
B
That's
great
because
whatever
helps
me
get
in
the
right
shape
will
help
it
get
merged
and,
and
then
officially
approved
so
yeah,
maybe
maybe
by
next
week.
Sod.
If,
if
you
know
when
what
the
official
schedule
is
sounds
good
review
the
code
and
move
forward
with.
D
It
should
the
standard
is
a
three
month
release.
That's
my
understanding.
I
know
there
was
some
discussion
late
last
year
to
say:
okay,
instead
of
doing
four
releases
a
year,
let's
bring
it
down
to
three
releases
a
year,
but
I
I
don't
know
if
that
decision
went
through
or
not
so
I'm
I'm
operating
on
the
assumption
that
we
have
the
usual
three
months.
A
B
All
right
so
yeah,
I
guess
sean!
If,
if
you
want
to
send
me
any
links,
you're
aware
of
and
shane
do
the
same,
I'll
be
I'll,
be
coding
up,
and
you
can
watch
that
repo
for
I'll
just
be
pushing
commits
to
that
repo.
E
Take
care:
are
you
one,
if
you're,
on
slack
yeah,
if
you're
slacking
you,
if
you
have
any
questions
about
how
to
do
this
with
like
dynamic,
informers
and
stuff,
like
that,
I
did
actually
work
on
the
controller
runtime
bits
to
use
under
structure
types
with
dynamic
conformers.
B
E
E
Just
put
those
two
things
there
I'll
send
you
the
code
for
controller
runtime
as
well,
since
it
does
effectively
what
you're
asking
for
like
generic
types
watching
using
structures
and
dynamic
conformers.
It
makes
the
library
as
well
so
it
might
help
see
the
generic
bits
of
it.
Yeah
awesome.
Let
me
send
you
a
link
to
conglomerate
all.