Browse Source

uvol: unbreak if LVM is installed but unused

Fix and simplify console output, make sure uvol doesn't break in case
of LVM being installed but not used.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 3959a9b22c)
lilik-openwrt-22.03
Daniel Golle 3 years ago
parent
commit
1213cf98fd
3 changed files with 10 additions and 13 deletions
  1. +3
    -3
      utils/uvol/files/lvm.uc
  2. +7
    -9
      utils/uvol/files/uvol
  3. +0
    -1
      utils/uvol/files/uvol.init

+ 3
- 3
utils/uvol/files/lvm.uc View File

@ -54,7 +54,7 @@ function pvs() {
return null;
let tmp = lvm("pvs", "-o", "vg_name", "-S", sprintf("\"pv_name=~^/dev/%s.*\$\"", rootdev));
if (tmp.report.pv)
if (tmp.report.pv[0])
return tmp.report.pv[0].vg_name;
else
return null;
@ -115,8 +115,8 @@ function getdev(lv) {
function lvm_init(ctx) {
cursor = ctx.cursor;
fs = ctx.fs;
// if (!fs.access(lvm_exec, "x"))
// return false;
if (type(fs.access) == "function" && !fs.access(lvm_exec, "x"))
return false;
vg_name = pvs();
if (!vg_name)


+ 7
- 9
utils/uvol/files/uvol View File

@ -23,7 +23,7 @@ commands:
status volname return status of volume
return code: 0 - volume is ready for use
1 - volume is not ready for use
2 - volume doesn'y exist
2 - volume doesn't exist
write volname size write to volume from stdin, size in bytes
";
@ -101,21 +101,19 @@ let legacy_output = function(var) {
out += "\n";
}
} else if (type(var) == "object") {
out += join(" ", values(line));
out += join(" ", values(var));
out += "\n";
} else if (type(var) == "string") {
out += var;
out += "\n";
}
return out;
};
if (type(backend[cmd]) == "string") {
printf("%s\n", backend[cmd]);
} else if (type(backend[cmd]) == "function") {
if (type(backend[cmd]) == "function") {
let ret = backend[cmd](...ARGV);
if (type(ret) == "int")
if (type(ret) == "int") {
exit(ret);
if (type(ret) == "string") {
printf("%s\n", ret);
} else {
if (json_output)
printf("%.J\n", ret);


+ 0
- 1
utils/uvol/files/uvol.init View File

@ -19,4 +19,3 @@ boot() {
service_triggers() {
procd_add_raw_trigger "mount.ready" 200 /etc/init.d/uvol start
}

Loading…
Cancel
Save