support templates for nfs share comment
Signed-off-by: Travis Glenn Hansen <travisghansen@yahoo.com>
This commit is contained in:
parent
a008f4f2ba
commit
ccc5ea206d
|
|
@ -1,3 +1,10 @@
|
||||||
|
# v1.3.1
|
||||||
|
|
||||||
|
Released 2021-09-08
|
||||||
|
|
||||||
|
- support using a template for nfs share comment in `freenas-nfs` and
|
||||||
|
`freenas-api-nfs` (see #115)
|
||||||
|
|
||||||
# v1.3.0
|
# v1.3.0
|
||||||
|
|
||||||
Released 2021-09-02
|
Released 2021-09-02
|
||||||
|
|
|
||||||
|
|
@ -48,6 +48,7 @@ zfs:
|
||||||
#- "-m u:kube:full_set:allow"
|
#- "-m u:kube:full_set:allow"
|
||||||
|
|
||||||
nfs:
|
nfs:
|
||||||
|
#shareCommentTemplate: "{{ parameters.[csi.storage.k8s.io/pvc/namespace] }}-{{ parameters.[csi.storage.k8s.io/pvc/name] }}"
|
||||||
shareHost: server address
|
shareHost: server address
|
||||||
shareAlldirs: false
|
shareAlldirs: false
|
||||||
shareAllowedHosts: []
|
shareAllowedHosts: []
|
||||||
|
|
|
||||||
|
|
@ -58,6 +58,7 @@ zfs:
|
||||||
#- "-m u:kube:full_set:allow"
|
#- "-m u:kube:full_set:allow"
|
||||||
|
|
||||||
nfs:
|
nfs:
|
||||||
|
#shareCommentTemplate: "{{ parameters.[csi.storage.k8s.io/pvc/namespace] }}-{{ parameters.[csi.storage.k8s.io/pvc/name] }}"
|
||||||
shareHost: server address
|
shareHost: server address
|
||||||
shareAlldirs: false
|
shareAlldirs: false
|
||||||
shareAllowedHosts: []
|
shareAllowedHosts: []
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"name": "democratic-csi",
|
"name": "democratic-csi",
|
||||||
"version": "1.2.0",
|
"version": "1.3.1",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "democratic-csi",
|
"name": "democratic-csi",
|
||||||
"version": "1.2.0",
|
"version": "1.3.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@grpc/grpc-js": "^1.3.6",
|
"@grpc/grpc-js": "^1.3.6",
|
||||||
|
|
@ -311,9 +311,9 @@
|
||||||
"integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w=="
|
"integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w=="
|
||||||
},
|
},
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "16.7.10",
|
"version": "16.7.13",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.10.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.13.tgz",
|
||||||
"integrity": "sha512-S63Dlv4zIPb8x6MMTgDq5WWRJQe56iBEY0O3SOFA9JrRienkOVDXSXBjjJw6HTNQYSE2JI6GMCR6LVbIMHJVvA=="
|
"integrity": "sha512-pLUPDn+YG3FYEt/pHI74HmnJOWzeR+tOIQzUx93pi9M7D8OE7PSLr97HboXwk5F+JS+TLtWuzCOW97AHjmOXXA=="
|
||||||
},
|
},
|
||||||
"node_modules/acorn": {
|
"node_modules/acorn": {
|
||||||
"version": "7.4.1",
|
"version": "7.4.1",
|
||||||
|
|
@ -723,9 +723,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/deep-is": {
|
"node_modules/deep-is": {
|
||||||
"version": "0.1.3",
|
"version": "0.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
||||||
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
|
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/delayed-stream": {
|
"node_modules/delayed-stream": {
|
||||||
|
|
@ -1063,9 +1063,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/fast-safe-stringify": {
|
"node_modules/fast-safe-stringify": {
|
||||||
"version": "2.0.8",
|
"version": "2.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.8.tgz",
|
"resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
|
||||||
"integrity": "sha512-lXatBjf3WPjmWD6DpIZxkeSsCOwqI0maYMpgDlx8g4U2qi4lbjA9oH/HD2a87G+KfsUmo5WbJFmqBZlPxtptag=="
|
"integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA=="
|
||||||
},
|
},
|
||||||
"node_modules/fecha": {
|
"node_modules/fecha": {
|
||||||
"version": "4.2.1",
|
"version": "4.2.1",
|
||||||
|
|
@ -2671,9 +2671,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/ssh2": {
|
"node_modules/ssh2": {
|
||||||
"version": "1.3.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.4.0.tgz",
|
||||||
"integrity": "sha512-OjBQ5FR+ClYav3fRnvkhycmd5co5qEfofBaZEqVO3I4tKJLZqu+Ku4LN4nJSckjhqQnomqBqlCdvD3iGV+6isA==",
|
"integrity": "sha512-XvXwcXKvS452DyQvCa6Ct+chpucwc/UyxgliYz+rWXJ3jDHdtBb9xgmxJdMmnIn5bpgGAEV3KaEsH98ZGPHqwg==",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"asn1": "^0.2.4",
|
"asn1": "^0.2.4",
|
||||||
|
|
@ -2888,9 +2888,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/uglify-js": {
|
"node_modules/uglify-js": {
|
||||||
"version": "3.14.1",
|
"version": "3.14.2",
|
||||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.1.tgz",
|
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.2.tgz",
|
||||||
"integrity": "sha512-JhS3hmcVaXlp/xSo3PKY5R0JqKs5M3IV+exdLHW99qKvKivPO4Z8qbej6mte17SOPqAOVMjt/XGgWacnFSzM3g==",
|
"integrity": "sha512-rtPMlmcO4agTUfz10CbgJ1k6UAoXM2gWb3GoMPPZB/+/Ackf8lNWk11K4rYi2D0apgoFRLtQOZhb+/iGNJq26A==",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"bin": {
|
"bin": {
|
||||||
"uglifyjs": "bin/uglifyjs"
|
"uglifyjs": "bin/uglifyjs"
|
||||||
|
|
@ -3343,9 +3343,9 @@
|
||||||
"integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w=="
|
"integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w=="
|
||||||
},
|
},
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "16.7.10",
|
"version": "16.7.13",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.10.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.13.tgz",
|
||||||
"integrity": "sha512-S63Dlv4zIPb8x6MMTgDq5WWRJQe56iBEY0O3SOFA9JrRienkOVDXSXBjjJw6HTNQYSE2JI6GMCR6LVbIMHJVvA=="
|
"integrity": "sha512-pLUPDn+YG3FYEt/pHI74HmnJOWzeR+tOIQzUx93pi9M7D8OE7PSLr97HboXwk5F+JS+TLtWuzCOW97AHjmOXXA=="
|
||||||
},
|
},
|
||||||
"acorn": {
|
"acorn": {
|
||||||
"version": "7.4.1",
|
"version": "7.4.1",
|
||||||
|
|
@ -3665,9 +3665,9 @@
|
||||||
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
|
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
|
||||||
},
|
},
|
||||||
"deep-is": {
|
"deep-is": {
|
||||||
"version": "0.1.3",
|
"version": "0.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
||||||
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
|
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"delayed-stream": {
|
"delayed-stream": {
|
||||||
|
|
@ -3932,9 +3932,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"fast-safe-stringify": {
|
"fast-safe-stringify": {
|
||||||
"version": "2.0.8",
|
"version": "2.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.8.tgz",
|
"resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
|
||||||
"integrity": "sha512-lXatBjf3WPjmWD6DpIZxkeSsCOwqI0maYMpgDlx8g4U2qi4lbjA9oH/HD2a87G+KfsUmo5WbJFmqBZlPxtptag=="
|
"integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA=="
|
||||||
},
|
},
|
||||||
"fecha": {
|
"fecha": {
|
||||||
"version": "4.2.1",
|
"version": "4.2.1",
|
||||||
|
|
@ -5153,9 +5153,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"ssh2": {
|
"ssh2": {
|
||||||
"version": "1.3.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.4.0.tgz",
|
||||||
"integrity": "sha512-OjBQ5FR+ClYav3fRnvkhycmd5co5qEfofBaZEqVO3I4tKJLZqu+Ku4LN4nJSckjhqQnomqBqlCdvD3iGV+6isA==",
|
"integrity": "sha512-XvXwcXKvS452DyQvCa6Ct+chpucwc/UyxgliYz+rWXJ3jDHdtBb9xgmxJdMmnIn5bpgGAEV3KaEsH98ZGPHqwg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"asn1": "^0.2.4",
|
"asn1": "^0.2.4",
|
||||||
"bcrypt-pbkdf": "^1.0.2",
|
"bcrypt-pbkdf": "^1.0.2",
|
||||||
|
|
@ -5318,9 +5318,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"uglify-js": {
|
"uglify-js": {
|
||||||
"version": "3.14.1",
|
"version": "3.14.2",
|
||||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.1.tgz",
|
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.2.tgz",
|
||||||
"integrity": "sha512-JhS3hmcVaXlp/xSo3PKY5R0JqKs5M3IV+exdLHW99qKvKivPO4Z8qbej6mte17SOPqAOVMjt/XGgWacnFSzM3g==",
|
"integrity": "sha512-rtPMlmcO4agTUfz10CbgJ1k6UAoXM2gWb3GoMPPZB/+/Ackf8lNWk11K4rYi2D0apgoFRLtQOZhb+/iGNJq26A==",
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"uri-js": {
|
"uri-js": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "democratic-csi",
|
"name": "democratic-csi",
|
||||||
"version": "1.3.0",
|
"version": "1.3.1",
|
||||||
"description": "kubernetes csi driver framework",
|
"description": "kubernetes csi driver framework",
|
||||||
"main": "bin/democratic-csi",
|
"main": "bin/democratic-csi",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
|
||||||
|
|
@ -196,6 +196,25 @@ class FreeNASApiDriver extends CsiBaseDriver {
|
||||||
properties[FREENAS_NFS_SHARE_PROPERTY_NAME].value
|
properties[FREENAS_NFS_SHARE_PROPERTY_NAME].value
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
|
let nfsShareComment;
|
||||||
|
if (this.options.nfs.shareCommentTemplate) {
|
||||||
|
nfsShareComment = Handlebars.compile(
|
||||||
|
this.options.nfs.shareCommentTemplate
|
||||||
|
)({
|
||||||
|
name: call.request.name,
|
||||||
|
parameters: call.request.parameters,
|
||||||
|
csi: {
|
||||||
|
name: this.ctx.args.csiName,
|
||||||
|
version: this.ctx.args.csiVersion,
|
||||||
|
},
|
||||||
|
zfs: {
|
||||||
|
datasetName: datasetName,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
nfsShareComment = `democratic-csi (${this.ctx.args.csiName}): ${datasetName}`;
|
||||||
|
}
|
||||||
|
|
||||||
switch (apiVersion) {
|
switch (apiVersion) {
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
|
|
@ -203,7 +222,7 @@ class FreeNASApiDriver extends CsiBaseDriver {
|
||||||
case 1:
|
case 1:
|
||||||
share = {
|
share = {
|
||||||
nfs_paths: [properties.mountpoint.value],
|
nfs_paths: [properties.mountpoint.value],
|
||||||
nfs_comment: `democratic-csi (${this.ctx.args.csiName}): ${datasetName}`,
|
nfs_comment: nfsShareComment || "",
|
||||||
nfs_network:
|
nfs_network:
|
||||||
this.options.nfs.shareAllowedNetworks.join(","),
|
this.options.nfs.shareAllowedNetworks.join(","),
|
||||||
nfs_hosts: this.options.nfs.shareAllowedHosts.join(","),
|
nfs_hosts: this.options.nfs.shareAllowedHosts.join(","),
|
||||||
|
|
@ -220,7 +239,7 @@ class FreeNASApiDriver extends CsiBaseDriver {
|
||||||
case 2:
|
case 2:
|
||||||
share = {
|
share = {
|
||||||
paths: [properties.mountpoint.value],
|
paths: [properties.mountpoint.value],
|
||||||
comment: `democratic-csi (${this.ctx.args.csiName}): ${datasetName}`,
|
comment: nfsShareComment || "",
|
||||||
networks: this.options.nfs.shareAllowedNetworks,
|
networks: this.options.nfs.shareAllowedNetworks,
|
||||||
hosts: this.options.nfs.shareAllowedHosts,
|
hosts: this.options.nfs.shareAllowedHosts,
|
||||||
alldirs: this.options.nfs.shareAlldirs,
|
alldirs: this.options.nfs.shareAlldirs,
|
||||||
|
|
|
||||||
|
|
@ -193,6 +193,25 @@ class FreeNASSshDriver extends ControllerZfsSshBaseDriver {
|
||||||
properties[FREENAS_NFS_SHARE_PROPERTY_NAME].value
|
properties[FREENAS_NFS_SHARE_PROPERTY_NAME].value
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
|
let nfsShareComment;
|
||||||
|
if (this.options.nfs.shareCommentTemplate) {
|
||||||
|
nfsShareComment = Handlebars.compile(
|
||||||
|
this.options.nfs.shareCommentTemplate
|
||||||
|
)({
|
||||||
|
name: call.request.name,
|
||||||
|
parameters: call.request.parameters,
|
||||||
|
csi: {
|
||||||
|
name: this.ctx.args.csiName,
|
||||||
|
version: this.ctx.args.csiVersion,
|
||||||
|
},
|
||||||
|
zfs: {
|
||||||
|
datasetName: datasetName,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
nfsShareComment = `democratic-csi (${this.ctx.args.csiName}): ${datasetName}`;
|
||||||
|
}
|
||||||
|
|
||||||
switch (apiVersion) {
|
switch (apiVersion) {
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
|
|
@ -200,7 +219,7 @@ class FreeNASSshDriver extends ControllerZfsSshBaseDriver {
|
||||||
case 1:
|
case 1:
|
||||||
share = {
|
share = {
|
||||||
nfs_paths: [properties.mountpoint.value],
|
nfs_paths: [properties.mountpoint.value],
|
||||||
nfs_comment: `democratic-csi (${this.ctx.args.csiName}): ${datasetName}`,
|
nfs_comment: nfsShareComment || "",
|
||||||
nfs_network:
|
nfs_network:
|
||||||
this.options.nfs.shareAllowedNetworks.join(","),
|
this.options.nfs.shareAllowedNetworks.join(","),
|
||||||
nfs_hosts: this.options.nfs.shareAllowedHosts.join(","),
|
nfs_hosts: this.options.nfs.shareAllowedHosts.join(","),
|
||||||
|
|
@ -217,7 +236,7 @@ class FreeNASSshDriver extends ControllerZfsSshBaseDriver {
|
||||||
case 2:
|
case 2:
|
||||||
share = {
|
share = {
|
||||||
paths: [properties.mountpoint.value],
|
paths: [properties.mountpoint.value],
|
||||||
comment: `democratic-csi (${this.ctx.args.csiName}): ${datasetName}`,
|
comment: nfsShareComment || "",
|
||||||
networks: this.options.nfs.shareAllowedNetworks,
|
networks: this.options.nfs.shareAllowedNetworks,
|
||||||
hosts: this.options.nfs.shareAllowedHosts,
|
hosts: this.options.nfs.shareAllowedHosts,
|
||||||
alldirs: this.options.nfs.shareAlldirs,
|
alldirs: this.options.nfs.shareAlldirs,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue