<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Mon, Nov 11, 2013 at 9:25 AM, Dietmar Maurer <span dir="ltr"><<a href="mailto:dietmar@proxmox.com" target="_blank">dietmar@proxmox.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Please can you use 'git send-email' to send patches? Also add correct 'signed-of-by' entries.<br>
<div><div class="h5"><br>
> diff --git a/PVE/OpenVZ.pm b/PVE/OpenVZ.pm<br>
> index a16d4fc..7788f66 100644<br>
> --- a/PVE/OpenVZ.pm<br>
> +++ b/PVE/OpenVZ.pm<br>
> @@ -1244,13 +1244,13 @@ sub replacepw {<br>
>  }<br>
><br>
>  sub set_rootpasswd {<br>
> -    my ($privatedir, $opt_rootpasswd) = @_;<br>
> +    my ($opt_rootpasswd, $rootdir) = @_;<br>
><br>
> -    my $pwfile = "$privatedir/etc/passwd";<br>
> +    my $pwfile = "$rootdir/etc/passwd";<br>
><br>
>      return if ! -f $pwfile;<br>
><br>
> -    my $shadow = "$privatedir/etc/shadow";<br>
> +    my $shadow = "$rootdir/etc/shadow";<br>
><br>
>      if ($opt_rootpasswd !~ m/^\$/) {<br>
>       my $time = substr (Digest::SHA::sha1_base64 (time), 0, 8);<br>
><br>
><br>
><br>
> diff --git a/PVE/API2/OpenVZ.pm b/PVE/API2/OpenVZ.pm<br>
> index 06fe60b..60ef124 100644<br>
> --- a/PVE/API2/OpenVZ.pm<br>
> +++ b/PVE/API2/OpenVZ.pm<br>
> @@ -406,15 +406,23 @@ __PACKAGE__->register_method({<br>
>               }<br>
><br>
>           } else {<br>
> -             PVE::Tools::file_set_contents($basecfg_fn, $rawconf);<br>
> -             my $cmd = ['vzctl', '--skiplock', 'create', $vmid,<br>
> -                        '--ostemplate', $archive, '--private', $private];<br>
> -             run_command($cmd);<br>
> -<br>
> -             # hack: vzctl '--userpasswd' starts the CT, but we want<br>
> -             # to avoid that for create<br>
> -             PVE::OpenVZ::set_rootpasswd($private, $password)<br>
> -                 if defined($password);<br>
> +             PVE::Tools::file_set_contents($basecfg_fn, $rawconf);<br>
<br>
</div></div>why do you change indentation here?<br></blockquote><div><br></div><div>It seems, that my editor make it automatically..  Sorry<br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div class="im"><br>
> +             my $cmd = ['vzctl', '--skiplock', 'create', $vmid,<br>
> +                        '--ostemplate', $ostmp, '--private', $private];<br>
<br>
</div>Variable '$ostmp' is undefined!<br></blockquote><div><br></div><div>Sorry. New version of vzctl doesn't accept full path to templates location. It's use only name of template. In my internal patches it tested and fixed. I use local storage, and simply remove 'vztmpl', '.gz', and 'local:' from ostemplate params. It pass only name of template(e.g ubuntu-12-03-i386).</div>

<div>And i test this patches on my lab.</div><div><br></div><div>Dont know how it affect on your network/cluster storages. I fix it with change $ostmp to $archive in my commit. </div><div>And we need to discuss, how to solve this problem. We need to update vzctl in new versions of proxmox and somehow pass vztemplate param. Or we need to recompile vzctl(remove template download functions and change container create function to support full path to templates)</div>

<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
> +             run_command($cmd);<br>
> +             my $rootdir = PVE::OpenVZ::get_rootdir($conf, $vmid);<br>
> +<br>
> +             $cmd = ['/usr/sbin/vzctl', '--skiplock', 'mount', $vmid];<br>
> +             run_command($cmd);<br>
> +             die "Cannot mount $vmid" if !PVE::OpenVZ::check_mounted($conf,<br>
> $vmid);<br>
> +<br>
> +             # hack: vzctl '--userpasswd' starts the CT, but we want<br>
> +             # to avoid that for create<br>
> +             PVE::OpenVZ::set_rootpasswd($password, $rootdir)<br>
> +                 if defined($password);<br>
> +<br>
> +             $cmd = ['/usr/sbin/vzctl', '--skiplock', 'umount', $vmid];<br>
> +             run_command($cmd);<br>
>           }<br>
><br>
>           PVE::AccessControl::add_vm_to_pool($vmid, $pool) if $pool;<br>
><br>
<br>
</div>Please test you patches before sending them to the list.<br>
<span class="HOEnZb"><font color="#888888"><br>
- Dietmar<br></font></span></blockquote></div></div></div>