pve-container.git
12 months agoadd feature flags using apparmor profile generation
Wolfgang Bumiller [Tue, 2 Oct 2018 09:13:38 +0000 (11:13 +0200)]
add feature flags using apparmor profile generation

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
12 months agoconfig: whitelist new apparmor related config keys
Wolfgang Bumiller [Tue, 2 Oct 2018 09:13:37 +0000 (11:13 +0200)]
config: whitelist new apparmor related config keys

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
12 months agoconfigure IPv6AcceptRA in systemd-networkd files
Wolfgang Bumiller [Thu, 13 Sep 2018 07:53:42 +0000 (09:53 +0200)]
configure IPv6AcceptRA in systemd-networkd files

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
13 months agod/control: bump pve-common version dependency
Thomas Lamprecht [Thu, 20 Sep 2018 09:02:09 +0000 (11:02 +0200)]
d/control: bump pve-common version dependency

Ensure that the new, unconditional called, PVE::Tools::get_host_arch
is available

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agouse new PVE::Tools::get_host_arch
Dietmar Maurer [Thu, 20 Sep 2018 04:59:17 +0000 (06:59 +0200)]
use new PVE::Tools::get_host_arch

13 months agoenable emulation of containers using qemu-user-static
Dietmar Maurer [Fri, 14 Sep 2018 11:27:03 +0000 (13:27 +0200)]
enable emulation of containers using qemu-user-static

You need to install package qemu-user-static which provides
the emulation toolkit.

- emulate arm on x86
- emulate x86 on arm

13 months agodetect_architecture: use ELF machine header to detect ISA
Dietmar Maurer [Wed, 12 Sep 2018 07:27:35 +0000 (09:27 +0200)]
detect_architecture: use ELF machine header to detect ISA

We can now detect arm64 and armhf containers.

13 months agosnapshot_rollback_vm_start: rename $forcemachine param to $data
Dominik Csapak [Fri, 14 Sep 2018 12:08:41 +0000 (14:08 +0200)]
snapshot_rollback_vm_start: rename $forcemachine param to  $data

not used yet in container at all, so this change does not
do anything, besides keeping the interface in sync

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
13 months agobump version to 2.0-27
Thomas Lamprecht [Thu, 13 Sep 2018 09:20:55 +0000 (11:20 +0200)]
bump version to 2.0-27

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agod/control: bump version dependency on pve-storage
Thomas Lamprecht [Thu, 13 Sep 2018 09:20:04 +0000 (11:20 +0200)]
d/control: bump version dependency on pve-storage

needed for the MAX_MOUNT_POINTS bump

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agoconfig: add the rest of the missing lock types
Wolfgang Bumiller [Thu, 13 Sep 2018 07:48:13 +0000 (09:48 +0200)]
config: add the rest of the missing lock types

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
13 months agofix #1897: bump MAX_MOUNT_POINTS to 256
Fabian Grünbichler [Wed, 5 Sep 2018 09:37:09 +0000 (11:37 +0200)]
fix #1897: bump MAX_MOUNT_POINTS to 256

and filter list of possible mountpoint names by currently used ones
before iterating instead of in the loop body.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
13 months agoadd missing 'mounted' as lock type for containers
Dominik Csapak [Fri, 7 Sep 2018 12:58:13 +0000 (14:58 +0200)]
add missing 'mounted' as lock type for containers

since 'move volume' uses such a lock, and
to satisfy the result verification while moving a volume

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
13 months agofix #1874: autodev hook: setup devices cgroup
Wolfgang Bumiller [Tue, 21 Aug 2018 07:57:59 +0000 (09:57 +0200)]
fix #1874: autodev hook: setup devices cgroup

Currently the autodev hook only adds device nodes, but in
order for the container to use them we also need to add
entries to the devices cgroup to both the limiting and the
namespaced devices cgroup directory.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
13 months agofix #1885: delete old route when changing gateway
David Limbeck [Tue, 4 Sep 2018 07:24:29 +0000 (09:24 +0200)]
fix #1885: delete old route when changing gateway

if the gateway is not in the subnet of the ip a route is
added. this change enables the deletion of the old route when it
is no longer needed.

Signed-off-by: David Limbeck <d.limbeck@proxmox.com>
13 months agod/control: add pve-firewall as build dependency
Thomas Lamprecht [Tue, 4 Sep 2018 06:52:40 +0000 (08:52 +0200)]
d/control: add pve-firewall as build dependency

we use perl modules from pve-firewall and some build steps fail if
isn't installed, e.g., happening on bootstrapping.
pve-firewall includes some modules from us but does so in a way which
can cope with a not-installed pve-container (or qemu-server for that
matter).

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agobump version to 2.0-26
Thomas Lamprecht [Thu, 23 Aug 2018 11:57:59 +0000 (13:57 +0200)]
bump version to 2.0-26

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoadd fqdn to /etc/hosts even with no ip
Dominik Csapak [Fri, 29 Jun 2018 08:05:44 +0000 (10:05 +0200)]
add fqdn to /etc/hosts even with no ip

so that if a container is set to dhcp, it still has its
fqdn set correctly

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agoadd support for openSUSE Leap 15.0
Thomas Lamprecht [Fri, 3 Aug 2018 12:00:48 +0000 (14:00 +0200)]
add support for openSUSE Leap 15.0

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agouse SHA-512 for container passwords
Dominik Csapak [Thu, 21 Jun 2018 12:14:28 +0000 (14:14 +0200)]
use SHA-512 for container passwords

this is in glibc since 2.7, centos 6 has 2.12, debian 6 has 2.11,
ubuntu 12.04 has 2.15

so all 'old' templates have a version new enough

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agouse better regex for detecting pre crypt()'d passwords
Dominik Csapak [Thu, 21 Jun 2018 12:14:27 +0000 (14:14 +0200)]
use better regex for detecting pre crypt()'d passwords

this means we also have to adapt some tests

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agouse real days in setup tests
Dominik Csapak [Thu, 21 Jun 2018 12:14:26 +0000 (14:14 +0200)]
use real days in setup tests

so that we can drop the special case in the real code,
use the real time in the tests

for that we replace the special string '@DAYS@' with
the correct value, and reset the file afterwards

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agosnapshot list: define return properties
Dietmar Maurer [Wed, 1 Aug 2018 11:38:24 +0000 (13:38 +0200)]
snapshot list: define return properties

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
14 months agovmstatus: define return propertries
Dietmar Maurer [Wed, 1 Aug 2018 10:14:04 +0000 (12:14 +0200)]
vmstatus: define return propertries

We can use the same properties in vmlist and vmstatus.

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
14 months agovmconfig: document return properties
Dietmar Maurer [Wed, 1 Aug 2018 08:42:45 +0000 (10:42 +0200)]
vmconfig: document return properties

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
14 months agovmlist: document return properties
Dietmar Maurer [Tue, 31 Jul 2018 11:51:55 +0000 (13:51 +0200)]
vmlist: document return properties

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
14 months agocleanup: move variable a bit closer to its use...
Wolfgang Bumiller [Tue, 31 Jul 2018 12:12:47 +0000 (14:12 +0200)]
cleanup: move variable a bit closer to its use...

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
14 months agofix #1851: check 'replicate' flag for non-volume mountpoints
Dominik Csapak [Tue, 31 Jul 2018 11:44:40 +0000 (13:44 +0200)]
fix #1851: check 'replicate' flag for non-volume mountpoints

setting replicate=0 for a bind mount only makes sense if we
really skip it for replication

also cleanup for them is not necessary, as bind mounts
could not have ever been replicated, thus there should
not be anything to clean up

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agobump version to 2.0-25
Thomas Lamprecht [Mon, 30 Jul 2018 08:10:14 +0000 (10:10 +0200)]
bump version to 2.0-25

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
15 months agofix #1844: check /etc/.pve-ignore.hosts early
Wolfgang Bumiller [Fri, 20 Jul 2018 06:49:21 +0000 (08:49 +0200)]
fix #1844: check /etc/.pve-ignore.hosts early

Our checks for .pve-ignore.* files happen at write time so
we mostly don't have to think about them within the
functions dealing with them. /etc/hosts is one of the files
we need nowhere except when updating it, and there are some
tools managing it and producing files too large for our
default file_get_contents() size limit, so here we want to
skip early to avoid an error at read time.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
15 months agocleanup: remove unused variables
Wolfgang Bumiller [Fri, 20 Jul 2018 06:39:44 +0000 (08:39 +0200)]
cleanup: remove unused variables

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
15 months agoPVE::LXC::Setup::Fedora: use systemd-networkd
Stoiko Ivanov [Tue, 17 Jul 2018 16:13:45 +0000 (18:13 +0200)]
PVE::LXC::Setup::Fedora: use systemd-networkd

Upstream's templates seem to have switched to systemd-networkd for
fedora > 25. Since then various workarounds have been suggested (starting
the legacy network.service in /etc/rc.local). This patch tries to accomodate
both network-configuration options for the affected and available templates
(25, 26, 27), by configuring both services.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
15 months agoPVE::API2::LXC: import raise_perm_exc
Stoiko Ivanov [Fri, 6 Jul 2018 15:00:45 +0000 (17:00 +0200)]
PVE::API2::LXC: import raise_perm_exc

A bug in the frontend exposed the missing import

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
15 months agodeal with disabled cgroup subsystems
Wolfgang Bumiller [Thu, 21 Jun 2018 08:07:41 +0000 (10:07 +0200)]
deal with disabled cgroup subsystems

When a user disables a cgroup subsystem via eg. a kernel
command line we shouldn't try to generate lxc.cgroup.*
entries for it.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
15 months agod/control: update pve-common version dependency
Thomas Lamprecht [Wed, 27 Jun 2018 11:14:36 +0000 (13:14 +0200)]
d/control: update pve-common version dependency

as we use the new param_mapping functionallity from PVE::CLIHandler

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
15 months agoreplace read_password with param_mapping
Dominik Csapak [Mon, 25 Jun 2018 10:30:11 +0000 (12:30 +0200)]
replace read_password with param_mapping

with this we do not need Term::ReadLine anymore
and we can merge the string_param_file_mapping into the param_mapping

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
15 months agobump version to 2.0-24
Thomas Lamprecht [Wed, 27 Jun 2018 07:22:21 +0000 (09:22 +0200)]
bump version to 2.0-24

16 months agoapi create: allow auto ct start after create finished
Thomas Lamprecht [Wed, 13 Jun 2018 14:34:10 +0000 (16:34 +0200)]
api create: allow auto ct start after create finished

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
16 months agofollowup: clarify error for CT templates on directory storage
Thomas Lamprecht [Wed, 6 Jun 2018 13:30:42 +0000 (15:30 +0200)]
followup: clarify error for CT templates on directory storage

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
16 months agofix #1778: check if storage support templates
Wolfgang Link [Wed, 6 Jun 2018 13:21:45 +0000 (15:21 +0200)]
fix #1778: check if storage support templates

LXC can only create templates on storages which support linked clones.
To prevent this, we will check before we convert to a template if the
storage support this.

16 months agofix #1792: Do not assign vars in conditional statement
Wolfgang Link [Tue, 5 Jun 2018 10:58:47 +0000 (12:58 +0200)]
fix #1792: Do not assign vars in conditional statement

If a variable is defined and assigned in a conditional statement,
it is not defined behavior in Perl.

For more inforamtion about this behavior see
https://perldoc.perl.org/perlsyn.html#Statement-Modifiers

"NOTE: The behaviour of a my, state, or our modified with a statement
modifier conditional or loop construct (for example, my $x if ... )
is undefined.
The value of the my variable may be undef, any previously assigned
value, or possibly anything else.
Don't rely on it. Future versions of perl might do something different
from the version of perl you try it out on. Here be dragons."

16 months agofix #1786: check for shared storage on clone
Wolfgang Bumiller [Tue, 29 May 2018 07:00:32 +0000 (09:00 +0200)]
fix #1786: check for shared storage on clone

Refuse to clone a container to a remote node when using
local storage.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
16 months agoMark CT as a template after rename volumes.
Wolfgang Link [Wed, 30 May 2018 10:12:52 +0000 (12:12 +0200)]
Mark CT as a template after rename volumes.

If a rename fails, the CT should not mark as a template.

16 months agotemplate create: handle mountpoints besides rootfs
Wolfgang Link [Wed, 30 May 2018 10:12:51 +0000 (12:12 +0200)]
template create: handle mountpoints besides rootfs

we only handled the special rootfs mount so creating a template
from a container with additional mountpoint did not work correctly.
Use foreach_mountpoint to create a base vdisk for all mount points
after checking if the storage supports it

17 months agobump version to 2.0-23
Fabian Grünbichler [Mon, 14 May 2018 09:10:41 +0000 (11:10 +0200)]
bump version to 2.0-23

17 months agoAdd cifs as allowed storage type.
Wolfgang Link [Tue, 8 May 2018 07:27:00 +0000 (09:27 +0200)]
Add cifs as allowed storage type.

17 months agocopy_volume: get the real volume size
Wolfgang Bumiller [Mon, 7 May 2018 12:52:47 +0000 (14:52 +0200)]
copy_volume: get the real volume size

Since we're not supposed to rely on this property being
there or even correct.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
17 months agofixup: add missing eval around umount
Wolfgang Bumiller [Fri, 4 May 2018 09:12:14 +0000 (11:12 +0200)]
fixup: add missing eval around umount

(as it throws no error)

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
17 months agofix #1721: unmount containers before trying to mount them
René Jochum [Fri, 4 May 2018 08:04:16 +0000 (10:04 +0200)]
fix #1721: unmount containers before trying to mount them

Signed-off-by: René Jochum <r.jochum@proxmox.com>
17 months agosupport Fedora 28
Thomas Lamprecht [Fri, 27 Apr 2018 09:08:24 +0000 (11:08 +0200)]
support Fedora 28

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
17 months agoupdate_config: rescan volume size
Fabian Grünbichler [Mon, 23 Apr 2018 10:36:16 +0000 (12:36 +0200)]
update_config: rescan volume size

otherwise the size information gets lost when detaching and reattaching
a mountpoint volume, which is less than ideal since mountpoints without
size information require manual information when restoring.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
18 months agobump version to 2.0-22
Dietmar Maurer [Mon, 23 Apr 2018 09:05:20 +0000 (11:05 +0200)]
bump version to 2.0-22

18 months agoadd Ubuntu 18.04 to known versions.
Dietmar Maurer [Mon, 23 Apr 2018 08:59:17 +0000 (10:59 +0200)]
add Ubuntu 18.04 to known versions.

19 months agobump version to 2.0-21
Thomas Lamprecht [Thu, 22 Mar 2018 08:21:40 +0000 (09:21 +0100)]
bump version to 2.0-21

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
19 months agocreate: add missing lzo to compression_map
Thomas Lamprecht [Wed, 21 Mar 2018 11:43:21 +0000 (12:43 +0100)]
create: add missing lzo to compression_map

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
19 months agorestore: support i/o rate limiting
Wolfgang Bumiller [Wed, 21 Mar 2018 08:57:48 +0000 (09:57 +0100)]
restore: support i/o rate limiting

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
19 months agocreate: fix passing of template file descriptor
Wolfgang Bumiller [Wed, 21 Mar 2018 08:57:47 +0000 (09:57 +0100)]
create: fix passing of template file descriptor

This finishes the work started with 07084526aa4a ("create:
open templates as real root"), which opened templates as
real root, but passed it to tar via /proc/*/fd, which does
not actually bypass the check. (Curiously tar did manage to
figure out the file extension from it).

In order to actually extract templates the unprivileged user
cannot access by themselves, we need to pass it to tar via
stdin, however, this means tar cannot auto-detect the
compression (or more accurately, it can and does, but tells
you which option to pass it rather than just extracting
it...)

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
19 months agoclone: randomize network MAC HW address of clone
Thomas Lamprecht [Tue, 20 Mar 2018 14:28:46 +0000 (15:28 +0100)]
clone: randomize network MAC HW address of clone

adapt code from qemu-servers clone API path and generate a new
randomized network hardware address (MAC) for the new clone to avoid
address collisions

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
19 months agodisable keyctl in user namespaces
Wolfgang Bumiller [Fri, 16 Mar 2018 08:12:41 +0000 (09:12 +0100)]
disable keyctl in user namespaces

systemd-networkd keeps trying to use keyctl() and if it
refuses to work it is apparently a fatal error, so let's
make it think keyctl() support doesn't actually exist by
letting it always fail with ENOSYS.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
19 months agofix #1704: get container uptime with /proc/<pid>/stat
Dominik Csapak [Mon, 19 Mar 2018 15:30:15 +0000 (16:30 +0100)]
fix #1704: get container uptime with /proc/<pid>/stat

stat on /proc/<pid> is reset when caches are dropped (e.g. from pveperf)
so get the uptime like lxcfs it does, via /proc/<pid>/stat

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
19 months agoclone: check storage permissions
Dietmar Maurer [Tue, 20 Mar 2018 11:19:13 +0000 (12:19 +0100)]
clone: check storage permissions

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
19 months agoclone: implement target parameter
Dietmar Maurer [Tue, 20 Mar 2018 11:19:12 +0000 (12:19 +0100)]
clone: implement target parameter

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
19 months agoadd features 'clone', 'copy' to api
Dominik Csapak [Mon, 19 Mar 2018 12:32:31 +0000 (13:32 +0100)]
add features 'clone', 'copy' to api

the gui needs this to detect full/linked clone and snapshots

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
19 months agofix spelling
Dietmar Maurer [Fri, 16 Mar 2018 09:54:29 +0000 (10:54 +0100)]
fix spelling

19 months agoclone: use better default for parameter 'full'
Dietmar Maurer [Thu, 15 Mar 2018 13:08:00 +0000 (14:08 +0100)]
clone: use better default for parameter 'full'

template => linked clone
normal container => full clone

19 months agoclone: allow clone to same storage without specifying storage parameter
Dietmar Maurer [Thu, 15 Mar 2018 12:01:07 +0000 (13:01 +0100)]
clone: allow clone to same storage without specifying storage parameter

19 months agoPVE/API2/LXC.pm: remove experimental parameter for clone/template
Dietmar Maurer [Thu, 15 Mar 2018 11:21:20 +0000 (12:21 +0100)]
PVE/API2/LXC.pm: remove experimental parameter for clone/template

19 months agovm_start: cleanup - remove dead code
Dietmar Maurer [Wed, 14 Mar 2018 13:04:04 +0000 (14:04 +0100)]
vm_start: cleanup - remove dead code

19 months agoFix pct skiplock
Alwin Antreich [Wed, 14 Mar 2018 12:51:55 +0000 (13:51 +0100)]
Fix pct skiplock

The method vm_start sets an environment variable that is not picked up
anymore by systemd. This patch removes the environment variable and
introduces a skiplock file that is picked up by the
lxc-pve-prestart-hook.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
19 months agoadd move_volume api call
Wolfgang Bumiller [Tue, 17 Oct 2017 10:58:57 +0000 (12:58 +0200)]
add move_volume api call

19 months agoconfig: is_volume_in_use: ability to search only snapshots
Wolfgang Bumiller [Tue, 17 Oct 2017 10:58:56 +0000 (12:58 +0200)]
config: is_volume_in_use: ability to search only snapshots

19 months agouse copy_volume for full clones
Wolfgang Bumiller [Tue, 17 Oct 2017 10:58:55 +0000 (12:58 +0200)]
use copy_volume for full clones

Also refactor the locking as suggested by Fabian.

19 months agoimplement copy_volume
Wolfgang Bumiller [Tue, 17 Oct 2017 10:58:54 +0000 (12:58 +0200)]
implement copy_volume

19 months agofactor out disk allocation+formatting for reuse
Wolfgang Bumiller [Tue, 17 Oct 2017 10:58:53 +0000 (12:58 +0200)]
factor out disk allocation+formatting for reuse

19 months agobump version to 2.0-20
Dietmar Maurer [Mon, 12 Mar 2018 12:24:34 +0000 (13:24 +0100)]
bump version to 2.0-20

19 months agoRemove obsolete read from storage.cfg in vm_start api call
Alwin Antreich [Fri, 9 Mar 2018 15:15:00 +0000 (16:15 +0100)]
Remove obsolete read from storage.cfg in vm_start api call

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
19 months agoFix #1547: on migration abort, the CT starts again
Alwin Antreich [Fri, 9 Mar 2018 15:14:59 +0000 (16:14 +0100)]
Fix #1547: on migration abort, the CT starts again

When a migration fails, the final_cleanup phase now starts the container
on the source node again, if it was a migration in restart_mode and the
CT was running.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
19 months agoseperate serachdomain and nameserver config
Dominik Csapak [Tue, 6 Mar 2018 10:08:04 +0000 (11:08 +0100)]
seperate serachdomain and nameserver config

until now, if either searchdomain or nameservers was not set,
we used the values from the host.

it would make sense, to set this individually (e.g. only use a
different searchdomain)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
20 months agobump version to 2.0-19
Dietmar Maurer [Fri, 16 Feb 2018 05:12:31 +0000 (06:12 +0100)]
bump version to 2.0-19

20 months agoclose #1668: add Devuan support
Thomas Lamprecht [Fri, 16 Feb 2018 07:40:48 +0000 (08:40 +0100)]
close #1668: add Devuan support

Add separate Plugin as the Debian Plugin will get more systemd
specific stuff in the future, while this here is as anti-systemd as
it gets, so make the split from the start.

But only overwrite the plugin constructor for now, the rest is still
backward compatible.

20 months agobuildsys: actually save git revision
Thomas Lamprecht [Wed, 7 Feb 2018 09:38:00 +0000 (10:38 +0100)]
buildsys: actually save git revision

${GITVERSION} is empty else.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
20 months agorevert removal of pct from installation
Wolfgang Bumiller [Tue, 6 Feb 2018 12:54:10 +0000 (13:54 +0100)]
revert removal of pct from installation

Fixes: c47b855338e2 "remove transitional pve-update-lxc-config script (PVE 4 beta era)"
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
20 months agopackaging: remove now unused postinst
Thomas Lamprecht [Thu, 25 Jan 2018 12:56:56 +0000 (13:56 +0100)]
packaging: remove now unused postinst

Was soley introduced for the, now removed, transitional
pve-update-lxc-config script (a PVE 4 older beta -> PVE 4 newer beta
helper).

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
20 months agoremove transitional pve-update-lxc-config script (PVE 4 beta era)
Thomas Lamprecht [Thu, 25 Jan 2018 12:56:55 +0000 (13:56 +0100)]
remove transitional pve-update-lxc-config script (PVE 4 beta era)

Short nack history:
In PVE 4 Beta we introduced LXC as our new container technology.
Initially we did not used the our section config format for its
configuration file in /etc/pve . It  was then decided to reuse our
config format (section config), so that we do not need to maintain a
separate parser, and that VM and CT config where not completely
different, which could confuse users.

This script was added to allow an easy transition from the old LXC
config format to the new Proxmox SectionConfig one.

All new installations since, and including, PVE 4.0 never needed this.
And all beta users must go through PVE 4.4 if they want to
dist-upgrade to PVE 5.0, so just remove it - it's forever tracked in
git anyway

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
20 months agofix #1618: do not double encode the description
Dominik Csapak [Tue, 16 Jan 2018 14:43:18 +0000 (15:43 +0100)]
fix #1618: do not double encode the description

we already encode the description in 'write_config',
we do not need to do it here again

this lead to newlines also to be encoded instead of
splitting the description into lines and decode that

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
22 months agobump version to 2.0-18
Wolfgang Bumiller [Wed, 13 Dec 2017 13:59:43 +0000 (14:59 +0100)]
bump version to 2.0-18

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
22 months agoadd termproxy api call for lxc
Dominik Csapak [Mon, 11 Dec 2017 13:55:31 +0000 (14:55 +0100)]
add termproxy api call for lxc

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
22 months agosetup/fedora: we support fedora release 27
Thomas Lamprecht [Thu, 30 Nov 2017 07:47:22 +0000 (08:47 +0100)]
setup/fedora: we support fedora release 27

Standard tests (create, network, TTY) seem to work OK.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
22 months agoadd 'noescapechar' parameter to get_console_command
Dominik Csapak [Fri, 24 Nov 2017 14:43:32 +0000 (15:43 +0100)]
add 'noescapechar' parameter to get_console_command

this adds a '-e -1' to lxc-console, and disables the
escape character (which we do not want with the web console)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
22 months agocreate: refactor arch detection to run_fork_with_timeout
Thomas Lamprecht [Thu, 16 Nov 2017 14:07:40 +0000 (15:07 +0100)]
create: refactor arch detection to run_fork_with_timeout

Swap out our own fork/waitpid code with run_fork_with_timeout, which
not only allows to return arbitrary results from the called method
but also has a timeout configured, which prevents that a creation
hangs forever (= next reboot).

As we can now return more than with an exit code number we do not
return the ELF class but the detected architecture directly and pull
the fallback code into this method.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
22 months agopct mount: tell user where he can find the mounted CT
Thomas Lamprecht [Thu, 16 Nov 2017 14:07:39 +0000 (15:07 +0100)]
pct mount: tell user where he can find the mounted CT

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
23 months agomake ssh connection transparent
Dominik Csapak [Fri, 17 Nov 2017 09:22:54 +0000 (10:22 +0100)]
make ssh connection transparent

do not use an escape character for ssh connections for vncterm

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
23 months agovzdump: log the warning about NFS properly
Wolfgang Bumiller [Mon, 13 Nov 2017 10:49:22 +0000 (11:49 +0100)]
vzdump: log the warning about NFS properly

Otherwise it's only visible on the command line.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
23 months agofix trailing whitespace
Dominik Csapak [Tue, 31 Oct 2017 10:25:11 +0000 (11:25 +0100)]
fix trailing whitespace

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
23 months agosimply version check
Dominik Csapak [Tue, 31 Oct 2017 10:25:10 +0000 (11:25 +0100)]
simply version check

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
23 months agouse systemd-networkd for ubuntu >= 17.10
Dominik Csapak [Tue, 31 Oct 2017 10:25:09 +0000 (11:25 +0100)]
use systemd-networkd for ubuntu >= 17.10

Ubuntu Artful uses systemd-networkd now,
but we have to delete the default netplan config from the
upstream lxc container, and enable systemd-networkd

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agobump version to 2.0-17
Fabian Grünbichler [Tue, 17 Oct 2017 13:11:25 +0000 (15:11 +0200)]
bump version to 2.0-17

and add versioned dependency on libpve-common-perl for new helper
run_fork

2 years agomigrate: skip replication handling if not replicated
Fabian Grünbichler [Tue, 17 Oct 2017 11:25:24 +0000 (13:25 +0200)]
migrate: skip replication handling if not replicated

in case the container has no replicated disks, this reduces downtime for
restart migration and makes the log shorter

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agomigrate: cleanup final_cleanup
Fabian Grünbichler [Tue, 17 Oct 2017 11:25:23 +0000 (13:25 +0200)]
migrate: cleanup final_cleanup

use remove_lock instead of manually removing

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agomigrate: only restart if conf was moved
Fabian Grünbichler [Tue, 17 Oct 2017 11:25:22 +0000 (13:25 +0200)]
migrate: only restart if conf was moved

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>