Skip to content

Commit

Permalink
CSI: replace structs->api with serialization extension
Browse files Browse the repository at this point in the history
The CSI HTTP API has to transform the CSI volume to redact secrets,
remove the claims fields, and to consolidate the allocation stubs into
a single slice of alloc stubs. This was done manually in #8590 but
this is a large amount of code and has proven both very bug prone
(see #8659, #8666, #8699, #8735, and #12150) and requires updating
lots of code every time we add a field to volumes or plugins.

In #10202 we introduce encoding improvements for the `Node` struct
that allow a more minimal transformation. Apply this same approach to
serializing `structs.CSIVolume` to API responses.

Also, the original reasoning behind #8590 for plugins no longer holds
because the counts are now denormalized within the state store, so we
can simply remove this transformation entirely.
  • Loading branch information
tgross committed Apr 15, 2022
1 parent f5de802 commit da74bf5
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 445 deletions.
Loading

0 comments on commit da74bf5

Please sign in to comment.