vgremove -f $vg1 &&
pvremove -f $d1'
+test_expect_success \
+ "pvcreate (lvm$mdatype) fails when PV1 does and PV2 does not belong to VG" \
+ 'pvcreate -M$mdatype $d1 &&
+ pvcreate -M$mdatype $d2 &&
+ vgcreate -M$mdatype $vg1 $d1 &&
+ echo pvcreate a second time on $d2 and $d1 &&
+ pvcreate -M$mdatype $d2 $d1;
+ status=$?; echo status=$status; test $status != 0 &&
+ vgremove -f $vg1 &&
+ pvremove -f $d2 &&
+ pvremove -f $d1'
+
done
test_expect_success \
(dev != dev_cache_get(pv_name, cmd->filter))) {
log_error("uuid %s already in use on \"%s\"",
pp->idp->uuid, dev_name(dev));
- return ECMD_FAILED;
+ return 0;
}
}
if (!lock_vol(cmd, VG_ORPHANS, LCK_VG_WRITE)) {
log_error("Can't get lock for orphan PVs");
- return ECMD_FAILED;
+ return 0;
}
if (!pvcreate_check(cmd, pv_name, pp))
log_print("Physical volume \"%s\" successfully created", pv_name);
unlock_vg(cmd, VG_ORPHANS);
- return ECMD_PROCESSED;
+ return 1;
error:
unlock_vg(cmd, VG_ORPHANS);
- return ECMD_FAILED;
+ return 0;
}
/*
int pvcreate(struct cmd_context *cmd, int argc, char **argv)
{
- int i, r;
+ int i;
int ret = ECMD_PROCESSED;
struct pvcreate_params pp;
}
for (i = 0; i < argc; i++) {
- r = pvcreate_single(cmd, argv[i], &pp);
- if (r > ret)
- ret = r;
+ if (!pvcreate_single(cmd, argv[i], &pp))
+ ret = ECMD_FAILED;
+
if (sigint_caught())
return ret;
}