Flexvolume: Add support for multiple secrets

This commit is contained in:
Chakravarthy Nelluri
2016-04-15 02:11:37 -07:00
parent 16e2e87a89
commit f53bc4ebe0
13 changed files with 90 additions and 31 deletions

View File

@@ -53,22 +53,62 @@ Driver will be invoked with 'Init' to initialize the driver. It will be invoked
### Driver invocation model:
Init:
\<driver executable\> init
```
<driver executable> init
```
Attach:
\<driver executable\> attach \<json options\>
```
<driver executable> attach <json options>
```
Detach:
\<driver executable\> detach \<mount device\>
```
<driver executable> detach <mount device>
```
Mount:
\<driver executable\> mount \<target mount dir\> \<mount device\> \<json options\>
```
<driver executable> mount <target mount dir> <mount device> <json options>
```
Unmount:
\<driver executable\> unmount \<mount dir\>
```
<driver executable> unmount <mount dir>
```
See lvm[lvm] for a quick example on how to write a simple flexvolume driver.
### Driver output:
Flexvolume expects the driver to reply with the status of the operation in the
following format.
```
{
"status": "<Success/Failure>",
"message": "<Reason for success/failure>",
"device": "<Path to the device attached. This field is valid only for attach calls>"
}
```
### Default Json options
In addition to the flags specified by the user in the Options field of the FlexVolumeSource, the following flags are also passed to the executable.
```
"kubernetes.io/fsType":"<FS type>",
"kubernetes.io/readwrite":"<rw>",
"kubernetes.io/secret/key1":"<secret1>"
...
"kubernetes.io/secret/keyN":"<secretN>"
```
### Example of Flexvolume
See nginx.yaml[nginx.yaml] for a quick example on how to use Flexvolume in a pod.