mirror of https://github.com/k3s-io/k3s
57414d9b9c
Automatic merge from submit-queue examples/volumes/flexvolume/nfs: check for jq and simplify quoting **What this PR does / why we need it**: This PR improves error reporting of the nfs flex plugin script. Before it output non-JSON error, when `jq` wasn't installed on the server: ``` $ /usr/libexec/kubernetes/kubelet-plugins/volume/exec/k8s~nfs/nfs getvolumename test /usr/libexec/kubernetes/kubelet-plugins/volume/exec/k8s~nfs/nfs: line 87: jq: command not found /usr/libexec/kubernetes/kubelet-plugins/volume/exec/k8s~nfs/nfs: line 88: jq: command not found {"status": "Success", "volumeName": "/"} ``` K8s fails to unmarshal such output to show an error in the logs: >E0606 19:32:30.196262 25700 driver-call.go:212] Failed to unmarshal output for command: getvolumename, output: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/k8s\~nfs/nfs: line 87: jq: command not found\n/usr/libexec/kubernetes/kubelet-plugins/volume/exec/k8s\~nfs/nfs: line 88: jq: command not found\n{\"status\": \"Success\", \"volumeName\": \"/\"}", error: invalid character '/' looking for beginning of value After this change: ```sh $ /usr/libexec/kubernetes/kubelet-plugins/volume/exec/k8s~nfs/nfs getvolumename test { "status": "Failure", "message": "'jq' binary not found. Please install jq package before using this driver"} ``` and > E0606 19:52:07.915594 25700 driver-call.go:219] getvolumename command failed, status: Failure, reason: 'jq' binary not found. Please install jq package before using this driver Also this PR improves quoting a bit by using single quotes where it possible. **Release note**: ```release-note NONE ``` CC @mfojtik |
||
---|---|---|
.. | ||
aws_ebs | ||
azure_disk | ||
azure_file | ||
cephfs | ||
cinder | ||
fibre_channel | ||
flexvolume | ||
flocker | ||
glusterfs | ||
iscsi | ||
nfs | ||
portworx | ||
quobyte | ||
rbd | ||
scaleio | ||
storageos | ||
vsphere |