my $worker = sub {
PVE::Diskmanage::wipe_blockdev($disk);
-
- # FIXME: Remove once we depend on systemd >= v249.
- # Work around udev bug https://github.com/systemd/systemd/issues/18525 to ensure the
- # udev database is updated.
- eval { run_command(['udevadm', 'trigger', $disk]); };
- warn $@ if $@;
+ PVE::Diskmanage::udevadm_trigger($disk);
};
my $basename = basename($disk); # avoid '/' in the ID
$write_ini->($ini, $mountunitpath);
- # FIXME: Remove once we depend on systemd >= v249.
- # Work around udev bug https://github.com/systemd/systemd/issues/18525 to ensure the
- # udev database is updated and the $uuid_path symlink is actually created!
- eval { run_command(['udevadm', 'trigger', $part]); };
- warn $@ if $@;
+ PVE::Diskmanage::udevadm_trigger($part);
run_command(['systemctl', 'daemon-reload']);
run_command(['systemctl', 'enable', $mountunitname]);
PVE::Storage::LVMPlugin::lvm_create_volume_group($dev, $name);
- # FIXME: Remove once we depend on systemd >= v249.
- # Work around udev bug https://github.com/systemd/systemd/issues/18525 to ensure the
- # udev database is updated.
- eval { run_command(['udevadm', 'trigger', $dev]); };
- warn $@ if $@;
+ PVE::Diskmanage::udevadm_trigger($dev);
if ($param->{add_storage}) {
my $storage_params = {
$name
]);
- # FIXME: Remove once we depend on systemd >= v249.
- # Work around udev bug https://github.com/systemd/systemd/issues/18525 to ensure the
- # udev database is updated.
- eval { run_command(['udevadm', 'trigger', $dev]); };
- warn $@ if $@;
+ PVE::Diskmanage::udevadm_trigger($dev);
if ($param->{add_storage}) {
my $storage_params = {
run_command($cmd);
}
- # FIXME: Remove once we depend on systemd >= v249.
- # Work around udev bug https://github.com/systemd/systemd/issues/18525 to ensure the
- # udev database is updated.
- eval { run_command(['udevadm', 'trigger', $devs->@*]); };
- warn $@ if $@;
+ PVE::Diskmanage::udevadm_trigger($devs->@*);
if ($param->{add_storage}) {
my $storage_params = {
}
}
+# FIXME: Remove once we depend on systemd >= v249.
+# Work around udev bug https://github.com/systemd/systemd/issues/18525 ensuring database is updated.
+sub udevadm_trigger {
+ my @devs = @_;
+
+ return if scalar(@devs) == 0;
+
+ eval { run_command(['udevadm', 'trigger', @devs]); };
+ warn $@ if $@;
+}
+
1;