Skip to content

Commit

Permalink
Initial Quobyte support
Browse files Browse the repository at this point in the history
  • Loading branch information
Johannes Scheuermann committed Aug 18, 2016
1 parent 6659d80 commit eed4238
Show file tree
Hide file tree
Showing 35 changed files with 43,720 additions and 40,750 deletions.
34 changes: 34 additions & 0 deletions api/swagger-spec/apps_v1alpha1.json
Original file line number Diff line number Diff line change
Expand Up @@ -1413,6 +1413,10 @@
"vsphereVolume": {
"$ref": "v1.VsphereVirtualDiskVolumeSource",
"description": "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine"
},
"quobyte": {
"$ref": "v1.QuobyteVolumeSource",
"description": "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime"
}
}
},
Expand Down Expand Up @@ -1981,6 +1985,36 @@
}
}
},
"v1.QuobyteVolumeSource": {
"id": "v1.QuobyteVolumeSource",
"description": "Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.",
"required": [
"registry",
"volume"
],
"properties": {
"registry": {
"type": "string",
"description": "Registry represents a single or multiple Quobyte Registry services specified as a string as host:port pair (multiple entries are separated with commas) which acts as the central registry for volumes"
},
"volume": {
"type": "string",
"description": "Volume is a string that references an already created Quobyte volume by name."
},
"readOnly": {
"type": "boolean",
"description": "ReadOnly here will force the Quobyte volume to be mounted with read-only permissions. Defaults to false."
},
"user": {
"type": "string",
"description": "User to map volume access to Defaults to serivceaccount user"
},
"group": {
"type": "string",
"description": "Group to map volume access to Default is no group"
}
}
},
"v1.Container": {
"id": "v1.Container",
"description": "A single application container that you want to run within a pod.",
Expand Down
34 changes: 34 additions & 0 deletions api/swagger-spec/batch_v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -1418,6 +1418,10 @@
"vsphereVolume": {
"$ref": "v1.VsphereVirtualDiskVolumeSource",
"description": "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine"
},
"quobyte": {
"$ref": "v1.QuobyteVolumeSource",
"description": "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime"
}
}
},
Expand Down Expand Up @@ -1986,6 +1990,36 @@
}
}
},
"v1.QuobyteVolumeSource": {
"id": "v1.QuobyteVolumeSource",
"description": "Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.",
"required": [
"registry",
"volume"
],
"properties": {
"registry": {
"type": "string",
"description": "Registry represents a single or multiple Quobyte Registry services specified as a string as host:port pair (multiple entries are separated with commas) which acts as the central registry for volumes"
},
"volume": {
"type": "string",
"description": "Volume is a string that references an already created Quobyte volume by name."
},
"readOnly": {
"type": "boolean",
"description": "ReadOnly here will force the Quobyte volume to be mounted with read-only permissions. Defaults to false."
},
"user": {
"type": "string",
"description": "User to map volume access to Defaults to serivceaccount user"
},
"group": {
"type": "string",
"description": "Group to map volume access to Default is no group"
}
}
},
"v1.Container": {
"id": "v1.Container",
"description": "A single application container that you want to run within a pod.",
Expand Down
34 changes: 34 additions & 0 deletions api/swagger-spec/extensions_v1beta1.json
Original file line number Diff line number Diff line change
Expand Up @@ -8582,6 +8582,10 @@
"vsphereVolume": {
"$ref": "v1.VsphereVirtualDiskVolumeSource",
"description": "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine"
},
"quobyte": {
"$ref": "v1.QuobyteVolumeSource",
"description": "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime"
}
}
},
Expand Down Expand Up @@ -9150,6 +9154,36 @@
}
}
},
"v1.QuobyteVolumeSource": {
"id": "v1.QuobyteVolumeSource",
"description": "Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.",
"required": [
"registry",
"volume"
],
"properties": {
"registry": {
"type": "string",
"description": "Registry represents a single or multiple Quobyte Registry services specified as a string as host:port pair (multiple entries are separated with commas) which acts as the central registry for volumes"
},
"volume": {
"type": "string",
"description": "Volume is a string that references an already created Quobyte volume by name."
},
"readOnly": {
"type": "boolean",
"description": "ReadOnly here will force the Quobyte volume to be mounted with read-only permissions. Defaults to false."
},
"user": {
"type": "string",
"description": "User to map volume access to Defaults to serivceaccount user"
},
"group": {
"type": "string",
"description": "Group to map volume access to Default is no group"
}
}
},
"v1.Container": {
"id": "v1.Container",
"description": "A single application container that you want to run within a pod.",
Expand Down
38 changes: 38 additions & 0 deletions api/swagger-spec/v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -17244,6 +17244,10 @@
"$ref": "v1.VsphereVirtualDiskVolumeSource",
"description": "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine"
},
"quobyte": {
"$ref": "v1.QuobyteVolumeSource",
"description": "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime"
},
"accessModes": {
"type": "array",
"items": {
Expand Down Expand Up @@ -17629,6 +17633,36 @@
}
}
},
"v1.QuobyteVolumeSource": {
"id": "v1.QuobyteVolumeSource",
"description": "Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.",
"required": [
"registry",
"volume"
],
"properties": {
"registry": {
"type": "string",
"description": "Registry represents a single or multiple Quobyte Registry services specified as a string as host:port pair (multiple entries are separated with commas) which acts as the central registry for volumes"
},
"volume": {
"type": "string",
"description": "Volume is a string that references an already created Quobyte volume by name."
},
"readOnly": {
"type": "boolean",
"description": "ReadOnly here will force the Quobyte volume to be mounted with read-only permissions. Defaults to false."
},
"user": {
"type": "string",
"description": "User to map volume access to Defaults to serivceaccount user"
},
"group": {
"type": "string",
"description": "Group to map volume access to Default is no group"
}
}
},
"v1.PersistentVolumeStatus": {
"id": "v1.PersistentVolumeStatus",
"description": "PersistentVolumeStatus is the current status of a persistent volume.",
Expand Down Expand Up @@ -17879,6 +17913,10 @@
"vsphereVolume": {
"$ref": "v1.VsphereVirtualDiskVolumeSource",
"description": "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine"
},
"quobyte": {
"$ref": "v1.QuobyteVolumeSource",
"description": "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime"
}
}
},
Expand Down
2 changes: 2 additions & 0 deletions cmd/kubelet/app/plugins.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ import (
"k8s.io/kubernetes/pkg/volume/host_path"
"k8s.io/kubernetes/pkg/volume/iscsi"
"k8s.io/kubernetes/pkg/volume/nfs"
"k8s.io/kubernetes/pkg/volume/quobyte"
"k8s.io/kubernetes/pkg/volume/rbd"
"k8s.io/kubernetes/pkg/volume/secret"
"k8s.io/kubernetes/pkg/volume/vsphere_volume"
Expand Down Expand Up @@ -74,6 +75,7 @@ func ProbeVolumePlugins(pluginDir string) []volume.VolumePlugin {
allPlugins = append(allPlugins, glusterfs.ProbeVolumePlugins()...)
allPlugins = append(allPlugins, rbd.ProbeVolumePlugins()...)
allPlugins = append(allPlugins, cinder.ProbeVolumePlugins()...)
allPlugins = append(allPlugins, quobyte.ProbeVolumePlugins()...)
allPlugins = append(allPlugins, cephfs.ProbeVolumePlugins()...)
allPlugins = append(allPlugins, downwardapi.ProbeVolumePlugins()...)
allPlugins = append(allPlugins, fc.ProbeVolumePlugins()...)
Expand Down
2 changes: 1 addition & 1 deletion docs/api-reference/autoscaling/v1/definitions.html
Original file line number Diff line number Diff line change
Expand Up @@ -1327,7 +1327,7 @@ <h3 id="_any">any</h3>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2016-06-28 21:15:27 UTC
Last updated 2016-07-19 08:57:41 UTC
</div>
</div>
</body>
Expand Down
71 changes: 70 additions & 1 deletion docs/api-reference/batch/v1/definitions.html
Original file line number Diff line number Diff line change
Expand Up @@ -2314,6 +2314,68 @@ <h3 id="_unversioned_listmeta">unversioned.ListMeta</h3>
</tbody>
</table>

</div>
<div class="sect2">
<h3 id="_v1_quobytevolumesource">v1.QuobyteVolumeSource</h3>
<div class="paragraph">
<p>Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">registry</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Registry represents a single or multiple Quobyte Registry services specified as a string as host:port pair (multiple entries are separated with commas) which acts as the central registry for volumes</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">volume</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Volume is a string that references an already created Quobyte volume by name.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">readOnly</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ReadOnly here will force the Quobyte volume to be mounted with read-only permissions. Defaults to false.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">user</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">User to map volume access to Defaults to serivceaccount user</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">group</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Group to map volume access to Default is no group</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>

</div>
<div class="sect2">
<h3 id="_v1_job">v1.Job</h3>
Expand Down Expand Up @@ -3237,6 +3299,13 @@ <h3 id="_v1_volume">v1.Volume</h3>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1_vspherevirtualdiskvolumesource">v1.VsphereVirtualDiskVolumeSource</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">quobyte</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Quobyte represents a Quobyte mount on the host that shares a pod&#8217;s lifetime</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1_quobytevolumesource">v1.QuobyteVolumeSource</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>

Expand Down Expand Up @@ -4138,7 +4207,7 @@ <h3 id="_any">any</h3>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2016-08-17 18:39:38 UTC
Last updated 2016-08-18 14:23:21 UTC
</div>
</div>
</body>
Expand Down
Loading

0 comments on commit eed4238

Please sign in to comment.