►
Description
Kubernetes Storage Special-Interest-Group (SIG) Volume Populator Design Meeting - 13 April 2021
Meeting Notes/Agenda: -
Find out more about the Storage SIG here: https://github.com/kubernetes/community/tree/master/sig-storage
B
A
Have
a
few
things
I
want
to
talk
about,
but
I
didn't
write
anything
down
at
the
end
today.
So
yeah
are
you
recording.
A
Okay,
all
right
thanks
shane,
so
hello,
welcome.
This
is
the
sig
storage
volume
populators
meeting
so
where
we
left
off
last
week,
I
was
we
have
the
new
repos
created
with
code.
It
turns
out
that
I
think
I
I
did
things
the
wrong
way
by
pushing
my
commits
to
master
instead
of
creating
prs,
I
didn't
realize
that
it
was
possible
to
create
prs
and
merge
them.
A
The
normal
way
before,
like
the
basics
of
the
repo,
have
been
set
up
with
release
tools
and
ci
and
all
the
other
things,
but
so
I
I
don't
know
if
we
need
to
do
anything
about
that
or
if
we
just
need
to
start
from
the
point
where
the
branches
are
now
and
start
doing
everything
else
through
pr's
shang.
Thank
you
for
reviewing
my
my
commits.
I've
been
I've
been
creating
a
pr
to
address
all
the
feedback
sada.
Did
you
get
a
chance
to
look
at
either
of
those
repos.
A
Okay,
that's
fine
shin
gave
me
a
bunch
of
stuff
to
deal
with
and
somebody
somebody
already
found
a
bug
and
pushed
a
fix
for
it
to
the
to
the
volume
for
the
populator
library.
There's
a
bug
where,
if
you
create
a
pvc
and
then
you
delete
it
really
quick,
it
crashes,
the
populator,
so
first
bug
fix,
is
already
waiting
for
review
as
well.
It's
like
a
one-liner
fix.
I
think.
A
Yeah,
it's
very
straightforward.
There's
no
reason
not
to
not
to
merge
that.
I
just
I've
been
busy
trying
to
address
your
review
feedback
and
also
I
I
haven't.
I
have
the
links
to
to
figure
out
how
to
set
up
proud
jobs
to
do
some
sort
of
ci
run
and
I
haven't
completed
that
work
yet
either.
So
that
is.
B
A
B
A
The
main
thing
I
wanted
to
talk
about
today
is
is
the
the
stuff
that
is
a
questionable
with
issues
you
raised
xing.
So
we
have
dependencies
on
kubernetes
and
dependencies
on
this
release,
tools,
branch
and
it's
it's
complicated
because
there's
a
in
the
root
directory,
there's
a
go
mod,
which
sets
the
dependencies
for
like
the
controller
itself,
then
in
there's
a
client
directory,
and
this
mirrors
what
happens
in
external
snapshotter,
there's
a
client
directory
with
its
own
gomod
file
that
has
different
dependencies
for
the
auto-generated
sort
of.
A
What
do
you
call
it?
You
know
the
go:
go
api,
client,
auto-generated
code,
that's
generated
by
cube
builder
and
the
versions
of
kubernetes
are
different,
both
in
external
snapshotter
and
in
my
new
repos,
and
if
I
try
to
upgrade
the
codegen
stuff
to
the
latest
version,
like
everything
breaks,
because
I
guess
cube
builder
has
been
making
some
backwards
and
compatible
changes,
and
so
it's
not
straightforward
just
to
like
bump
to
the
latest
version
and
rebuild
and
so
we're
stuck
on
like
the
119.
A
B
A
Am
I
am
but
I
was
using,
I
was
using
exactly
what
was
in
external
snapshotter,
which
is
now
two
versions
old,
and
I
tried
to
upgrade
it.
You
know
because
I
figured
that
would
be
the
right
thing
to
do,
but
everything
blew
up
when
I
did
that.
So
I
went
right
back
to
what
external
snapshotter
had
so
so
yeah
I'm.
I
think
we
need
to
work
together
to
figure
out
like
how
to
get
the
code
gen
stuff
on
the
latest
version.
C
A
A
So
yeah
here's
the
data
source
validator,
so
in
the
root
you
have
your
go
mod
and
this
one
I've
updated
everything
to
you
know
o.21.0
of
everything,
and
this
works
fine,
but
this
only
affects
the
actual
controller
like
in
the
client
directory.
It
gets
its
own
go
mod
and
this
affects
what
gets
used
for
the
oh.
Somehow
this
used
to
be
all
119
and
it
somehow
updated
itself.
I
guess
I
did.
B
Somehow
the
the
coaching
is
1.19,
but
the
the
client
goes
21
now:
okay,.
A
I
think
I
ran,
I
ran
a
go
command
that
updated
them
all,
because
this
is
this
is
my
working
branch.
This
is
not
what's
in
master,
but
yeah,
there's
there's
different
stuff
in
the
client
directory
and
then
in
the
hack
directory.
There's
a
readme
that
says
this
is
what
you're
supposed
to
do,
and
it
explicitly
says
in
the
readme
like
check
out
this.
This
version
and
this
the
same
exists
in
external
snapshotter
and
so
like
when
we
update
everything.
We
also
have
to
update
this
doc.
A
That
controls,
you
know
how
you,
how
you
do
the
build
and-
and
so,
if
you
just
straightforwardly
change
all
these
to
21
or
even
20
and
run
through
this
process.
It
it
blows
up
horribly,
because
yeah.
C
B
Should
be
used,
this
is
because
we
have.
The
snapshot
has
the
same
thing,
because
we
separate
the
the
the
client
that
you
know
the
api
part.
B
B
They're
in
the
same
repo,
so
so
that's
the
remember.
You
ask
us
whether
they're
not
in
separate
repo,
so
we
actually
they're
in
the
same
repo.
However,
we
actually
have
a
two
different
goal:
mod,
so
they
are.
They
build
separately,
yeah.
B
C
B
A
B
B
This
one
is
not
up,
but
we
need
to
update
that
before
we
cut
the
next
release.
That's
to
do,
but
if
you
look
at
the
controller
gen,
I
think
ours
is
newer
than
yours.
A
Right
right
so
for
volume
populator,
we
have
one
new
crd
called
volume
populator,
which
is
just
how
you
register
that
a
populator
exists,
and
you
tell
you
tell
the
system,
the
group
in
kind,
that
that
is
valid,
so
that
when
someone
specifies
that
group
and
kind
as
the
data
source
of
a
pvc,
the
data
source
validator
will
say.
That
is
something
someone
is
going
to
see
that
and
respond
to
it.
A
C
A
Whatever
your
api
is,
you
have
to
fill
out,
you
know
a
couple
of
files
and
then
everything
else
in
this
directory.
All
the
client
set
config
informers,
listers
all
that
gets
generated
as
a
result
of
reading.
You
know
doing
the
steps
in
this
readme
and
the
and
the
steps
in
this
readme
import
controller
gen
based
on
well
there's
a
version
both
listed
in
the
readme
literally
and
in
the
gomod
file,
and
I
don't
know
what
the
ones
in
the
go
mod
are
really
needed
for
again.
I
don't
really
understand
the.
A
A
So
I'm
just
following
the
model
and
pointing
out
that
you
know
we're
currently,
two
versions
behind
and
updating.
It
is
not
straightforward,
so
something
that
we
have
to
figure
out.
I
guess.
B
B
Yeah
we're
updating
the
snapshotter
soon
so
yeah
we'll
just
need
one
I
mean.
So
if
you
just
try
like
a
0.4,
does
you
have
any
problems?
Let's
say
if
you
keep
it
at,
you
said
the
problem
is
with
the
kuwaitis
update.
If
you
update
that
to
21,
that's
a
problem.
A
It
could
be
that
I
had
old
garbage
in
my
system
that
didn't
get
cleaned
out,
so
it
could
be
that
the
readme
is
missing.
Some
steps
like
like
I
could
have
had
an
old
version
of
of
the
code
generator
somewhere.
I
don't
know
like
like
until
you
point.
A
This
line
right
here
the
go,
get
zig
zag,
case.io
controller,
gen
command
controller
gen.
At
a
specific
version
like
I
had
the
old
version
and
I
believe
the
way
that
the
shell
strip
works
is,
if
you
have
any
version
of
controller
gen,
this
code
doesn't
run
and
then
it
just
uses
whatever
version
you
had.
So
if
you
have
an
old
one,
you're
stuck
on
the
old
one
forever,
I
think.
A
A
So
so
anyways,
this
is
probably
a
lot
of
user
error
on
my
part
and
I'll
work
through
it
and
get
it
figured
out
and
then
but
yeah
we
got
to
get
the
readme
updated
to
say
what
the
what
the
correct
steps
are.
Maybe
I
don't
actually
know
where
these
shell
scripts
come
from.
Are
these?
Is
this
something
you
wrote
shang
or
is
this
something
we
copied
from
somewhere
else.
A
Yeah
yeah.
We
have
a
lot
of
copy
paste
coding
going
on
with
the
crd
generation,
because
I
certainly
copy
pages.
B
A
B
A
A
B
B
A
Superset
of
controller
gen,
so
controller
gen
is
a
subset
of
cupid
or,
I
should
say,
but
the
yeah.
I
think
some
features
went
in
and-
and
I
may
have
been
incorrect
about
this,
but
I
thought
it
was
a
backwards
incompatibility
in
cube
builder,
but
it
could
have
been
because
I
had
a
old
version
of
controller
drive
lying
around
on
my
machine.
That
was
not
compatible
with
something
else.
B
B
So
maybe
so
maybe
we
can't
really
go
to
1.21.
That's
that's
possible!
So
by
the
then
at
least
we
can
go
to
1.20
with
the
latest.
Maybe.
C
A
A
I
followed,
you
know
their
sort
of
tutorial,
for
you
know
how
to
build
an
api
with
cube
builder,
and
you
know
the
hello
world
gives
you
like
10
times
as
much
code
as
we
want
here,
because
all
we
really
want
is
just
just
the
apis.
The
client
set
the
informers
and
the
listers,
and
then
the
and
then
the
yaml
like.
B
A
A
C
B
B
C
End
up
using
q
builder
for
this
and
q
builder
is
still
going
to
create
like
an
api's
directory.
It'll
have
types.go
everything
can
can
a
user
that
wants
to
build
a
you
know
their
own
controller,
not
import.
That.
C
A
A
C
It
was
just
the
public
docs
for
for
cube
builder
yeah.
A
C
C
I
mean
I
would
take
a
look
at
the
the
the
help
file
on
the
cli
and
look
at
what
the
flags
are
on
that
I
I
haven't
looked
at
the
3.0
version,
but
the
2.0
version
definitely
had
a
bunch
of
flags
that,
let
you
say
things
like.
Oh,
I
just
want
the
api
or
things
like
that,
and
I
think
even
the
prompts
that
you,
when
you
set
up
a
new
set
up
a
new
group,
it'll,
ask
you:
oh,
do
you
want
the
controller
or
do
you
want
the
api
like?
A
Okay,
yeah
well
I'll
I'll,
maybe
take
take
another
run
at
that,
because,
as
long
as
as
long
as
the
volume
populator
stuff
is
is
alpha
yeah,
we
could
sort
of
change
around
the
with
the
structure
of
the
client
directory,
but
but
obviously
we're
sort
of
stuck
with
the
snapshot
or
stuff.
And
I
I
don't
want
to
diverge
from
what
snapchatter
does,
because
you.
B
A
A
Yeah,
I
I
think
that
we
should
either
update
neither
or
both
and
try
to
keep
them
close
together,
so
that
someone
who's
familiar
with
one
can
easily
work
on
the
other.
Vice
versa.
If
we
have
two
different
approaches
that
just
makes
it
harder
for
someone
else
to
come
in
and
maintain
those
projects
well,.
A
B
B
Take
it,
maybe
you
can
take
a
look
up
the
data
popular
and
see
how
that
how
that
can
easily
be
done
using
computer
right,
then
we
can
come
back
and
take
a
look
and
see
if
we
should
rewrite
the
exam
snapchatter.
B
A
No,
but
we
could,
we
could
do
a
poc
to
see
like
does.
Q
builder
offer
a
better
way
to
get
what
we
already
have
and
then,
if
it
does
we'll
just
change
it
and-
and
it
won't
be
a
big
deal
and
so
so
I'll
sort
of
put
that
on
my
to-do
list,
because
because
yes,
I,
this
is
a
painful
thing
and
it
it's
not
getting
any
easier.
C
Yeah,
I
I
think
what
everything
that
you
said
makes
sense,
and
just
the
one
piece
of
advice
is
don't
get
too
anchored
on
snapshot,
because
we
were
one
in
a
hurry
when
we
were
doing
it
and
two
it
was.
Technology
was
early
and
we
didn't
have
a
lot
of
the
tools
that
we
had
available
now,
and
it
would
be
very
nice
if
volume
populator
could
kind
of
serve
as
the
new.
C
A
Do
you
happen
to
know
where
or
what
what
you
were
referencing
when
you
built
the
snapshot
or
stuff?
If
there
was
another
example
that
any
of
this
was
based
on
no.
B
This
is
just
the
regular
like
controller
gen
example
right,
so
it's
not
like
we
go
to
another
project,
but
actually
well.
Actually
I
should
say
there
are
a
lot
of
projects
of
building
using
control
gen.
I
should
say
that
actually
even
another
project
that
I'm
working
on
at
my
company
use
controller
gen,
so
yeah.
A
B
A
Sure
yeah
so
I'll
put
my
name
on
that
because
because
that
needs
doing,
I
think
yeah.
So
so
there
was
basically
updating
everything
to
the
latest
version.
This
that
was
the
main
snag,
was
that
for
the
controller
gen
stuff-
it's
not
so
straightforward,
but
yeah,
we
could
just
be
doing
it
the
wrong
way,
and
if
you
find
the
right
way,
then
maybe
all
that
all
gets
better.
Let
me
think
what
else
there
was
that
was
causing
snags.
A
I
think
that
was
the
big
thing
so
yeah
I
I
need
to
push
the
pr
that
addresses
all
of
your
feedback
shing.
We
need
to
merge
that
bug
fix
did.
B
A
I
had
I
had
hoped
to
get
the
the
prows
set
up
before
merging
it,
so
that
we
could
sort
of
test
that
prowl
did
it
did
its
thing,
but
yeah.
That's
also.
A
Yeah
yeah,
no,
I
I
just
once
the
proud
stuff
is
set
up.
I'm
gonna
need
to
do
some
like
dummy
pr's,
to
see
that
it
actually
works.
B
Yeah,
you
got,
you
know
all
of
those
setups
yeah
that'll
be
great.
A
Oh
yeah,
so
that
reminds
me
the
other
set
of
issues
that
I
ran
into
is
you
know
we
have
on
all
these
csi
repos.
We,
we
import,
csi,
release
tools
as
a
like
git
sub
repo,
and
there
are
instructions
in
that
repo
that
say
what
you're
supposed
to
do,
but
I
followed
them
and
it
blew
up
horribly
and
so
what
I
ended
up
doing
after
that
was
just
copying.
What
was
an
external
provisioner,
which
is,
I
think,
an
older
version
of
what's
in
release
tools
and
it
worked
fine.
So
I
I
wondered.
A
B
With
patrick,
you
would
be
most
familiar
with
that
the
release
was.
C
B
I
mean
basically,
you
said
if
you
just
if
you
just
get
the
latest
that
would
blow
away
things.
C
And
if
you
want
someone
or
if
you
just
want
to
pop
into
the
csi
meeting,
that
might
be
more
efficient
and
just
be
like
hey
csi
folks,.
A
B
Normally
should
be
able
to
just
like
update
well
normally
like
we
do
like
regularly
update
all
the
repos
right.
So
you
should
not.
B
A
B
Maybe
so,
okay,
I
don't
know
if
you
have
the
same
issue,
because
I
think
I
think
it
has
to
do
with
like
how
you
check
it
out,
and
there
are
some
issues
with
that,
because
last
time
I
did
it
there
was
a
problem
problem.
Maybe
you
didn't
check
out
the
the
way
it's
supposed
to
work?
I
think
there
are
some
definitely
know
some
tricks.
I
think
I.
A
B
So
so
nervous
actually
a
issue
that
listed
how
to
do
this.
It's
actually
not
even
in
a
dock,
there's
a
but
then
that
one
you
have
to.
I
think
you
have
to
check
check
out
the
way
it's
supposed
to
be
otherwise
does
not
work
as
expected.
Something
like
that.
I
remember
that
and
then
afterwards
that
news
and
walk
around
to
get
that
to
work
so.
A
B
B
B
A
So
so
yeah.
D
B
I
forgot
where
that
is
something
that
I
was
trying
last
time
yeah,
it's
like
an
open
issue.
These
are.
B
B
Yeah
yeah,
this
is
the
one
this
is
almost.
I
think
this
is
one.
This
is
almost
okay,
it's
frozen
yeah.
Just
you
should
take
a
look
of
this
issue.
I
don't
know
if
you
run
into
some.
This
was
never
some
of
this
information
was
never
in
any
talk.
B
I
think,
if
you
follow
this
one,
you
cannot
set
the
remote
to
something
else,
so
there
are
some
tricks,
otherwise
you
know
basically
like
the
way
you
know.
Normally
people
already
check
out
different
ways
right.
If
I
just
do
normally.
I
do
then
it's
this
when
I
work
so
then
I
actually
have
to
yeah
yeah.
B
To
patrick
about
this
one,
I
think
he,
I
think,
I'd
like
that
time.
I
think
he
said
he
doesn't
have
time
to
get
some
of
those
details
in
I'm
not
sure.
Maybe
you
can
check
with
him
now
yeah.
B
A
Fine
all
right
well
so
so
these
are
some
good
pointers.
Thank
you,
shane.
Thank
you.
Saad
does
anyone
else
have
anything
they
wanted
to
discuss
in
this
meeting.
A
Because
yeah,
it
sounds
like
I
need
to
just
be
trying
out
some
more
things
and
talking
to
patrick
before
I
get
these
repos
fully
working
the
right
way.
C
A
C
A
And
then
yeah,
the
the
cube
builder
stuff,
is
probably
just
a
matter
of
figuring
out
a
better
recipe
than
what
external
snapchat
is
currently
doing,
proving
that
it
works
and
then
assuming
it
does,
we
could
apply
the
same
logic
to
the
snapshotter
you
know
later
on.
If
we
can
find
a
better
way
to
get
the
same
result.
A
Okey
doke!
Well,
that's
all
I
have
so.
I
yeah
I'm
not
expecting
to
see
an
alpha
release
this
week,
but
but
the
goal
is,
is
still
you
know
as
soon
as
possible
to
get
an
alpha
release
out
and
then
and
then
I
still
have
an
unmerged
kepp
for
taking
it
to
beta
in
122..