mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chun-Hung Hsiao <chhs...@apache.org>
Subject Re: Review Request 70247: Added an "unversioned" `VolumeCapability`.
Date Wed, 03 Apr 2019 02:41:14 GMT


> On April 2, 2019, 11:30 a.m., James DeFelice wrote:
> > include/mesos/csi/types.proto
> > Lines 19 (patched)
> > <https://reviews.apache.org/r/70247/diff/6/?file=2136539#file2136539line19>
> >
> >     Might it make sense to version these since they're part of an API that Mesos
uses to communicate w/ an external component? i.e. should there exist a include/mesos/v1/csi/types.proto
that offers a stable/versioned API against which components can integrate?
> 
> Chun-Hung Hsiao wrote:
>     No. The purpose of introducing this is to make it version-agnostic so Mesos can handle
plugin upgrades across versions. If we're relying on versioned CSI protos then we should directly
use the ones from the spec instead.

Oops. Apologies for my misunderstanding.

Some comments coming out from our offline chat:

This proto currently not exposed to a "public-facing" API, but only through a module interface,
so no need for creating the Mesos v1 counterpart yet. Similarly, we don't have Mesos v1 protos
for authorizer and authenticator modules.

That said, the question is actually about if we should publish the "API" used in our reference
implementation (i.e., `disk_profile.proto` in the URI disk profile adaptor) and make it more
stable. It's definitely worth thinking about, but we probably want to think about how do deal
with CSI versioning in that API first. In the future we could consider make the module a first-class
component in Mesos and make it an official Mesos API w/ compatibility guarantees.


- Chun-Hung


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/70247/#review214271
-----------------------------------------------------------


On March 28, 2019, 7:51 a.m., Chun-Hung Hsiao wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/70247/
> -----------------------------------------------------------
> 
> (Updated March 28, 2019, 7:51 a.m.)
> 
> 
> Review request for mesos, Benjamin Bannier, James DeFelice, Jie Yu, and Jan Schlicht.
> 
> 
> Bugs: MESOS-9625
>     https://issues.apache.org/jira/browse/MESOS-9625
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> To support both CSI v0 and v1, the "unversioned" `VolumeCapability` is
> designed to satisfy the following compatibility guarantees:
> 
> 1. The unversioned `VolumeCapability` parsed from a versioned one should
>    be able to used to reconstruct the original versioned
>    `VolumeCapability`, and can be upgraded/downgraded to a different
>    CSI version and preserve as much semantics as possible.
> 
> 2. If an backward-incompatible change is introduced in future CSI
>    `VolumeCapability`, the unversioned `VolumeCapability` can provide a
>    way to do a backward compatible upgrade.
> 
> 
> Diffs
> -----
> 
>   include/mesos/csi/types.hpp PRE-CREATION 
>   include/mesos/csi/types.proto PRE-CREATION 
>   src/CMakeLists.txt 3397c3b1d4e8a7900b2e5f870679cc7aa30b4be2 
>   src/Makefile.am 7c2131a9daf16d49e8e8d75b12f019e5c4df1da3 
>   src/csi/types.cpp PRE-CREATION 
>   src/csi/utils.hpp 9145c6795c3ecdde5de5859a852763fe9aeb1ddf 
>   src/csi/utils.cpp fd6f95d88caf69e2ae197cf940beb93c164565bc 
>   src/tests/CMakeLists.txt f3acd8259edd8da2316d55271682a7a335fb22d4 
>   src/tests/csi_utils_tests.cpp PRE-CREATION 
> 
> 
> Diff: https://reviews.apache.org/r/70247/diff/6/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Chun-Hung Hsiao
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message