The following pull request was submitted through Github.
It can be accessed and reviewed at: https://github.com/lxc/lxd/pull/2811

This e-mail was sent by the LXC bot, direct replies will not reach the author
unless they happen to be subscribed to this list.

=== Description (from pull-request) ===

From 98056cc534ccf120c6d054a54a86cbd6e08e3c9e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgra...@ubuntu.com>
Date: Mon, 23 Jan 2017 00:56:06 -0500
Subject: [PATCH 1/6] api: Add more API extension tags
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Stéphane Graber <stgra...@ubuntu.com>
---
 shared/api/container_state.go | 2 ++
 shared/api/network.go         | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/shared/api/container_state.go b/shared/api/container_state.go
index f9aa765..9d38f4c 100644
--- a/shared/api/container_state.go
+++ b/shared/api/container_state.go
@@ -28,6 +28,8 @@ type ContainerStateDisk struct {
 }
 
 // ContainerStateCPU represents the cpu information section of a LXD 
container's state
+//
+// API extension: container_cpu_time
 type ContainerStateCPU struct {
        Usage int64 `json:"usage"`
 }
diff --git a/shared/api/network.go b/shared/api/network.go
index 6c616ab..7773196 100644
--- a/shared/api/network.go
+++ b/shared/api/network.go
@@ -1,6 +1,8 @@
 package api
 
 // NetworksPost represents the fields of a new LXD network
+//
+// API extension: network
 type NetworksPost struct {
        NetworkPut `yaml:",inline"`
 

From dc2e136f6c8664a7ad754667220503d198a9650e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgra...@ubuntu.com>
Date: Mon, 23 Jan 2017 16:22:54 -0500
Subject: [PATCH 2/6] Fix typo
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Stéphane Graber <stgra...@ubuntu.com>
---
 test/suites/database_update.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/suites/database_update.sh b/test/suites/database_update.sh
index 4856470..577abb3 100644
--- a/test/suites/database_update.sh
+++ b/test/suites/database_update.sh
@@ -15,7 +15,7 @@ test_database_update(){
   tables=$(sqlite3 "${MIGRATE_DB}" ".dump" | grep -c "CREATE TABLE")
   [ "${tables}" -eq "${expected_tables}" ] || { echo "FAIL: Wrong number of 
tables after database migration. Found: ${tables}, expected 
${expected_tables}"; false; }
 
-  # There should be 13 "ON DELETE CASCADE" occurences
+  # There should be 13 "ON DELETE CASCADE" occurrences
   expected_cascades=12
   cascades=$(sqlite3 "${MIGRATE_DB}" ".dump" | grep -c "ON DELETE CASCADE")
   [ "${cascades}" -eq "${expected_cascades}" ] || { echo "FAIL: Wrong number 
of ON DELETE CASCADE foreign keys. Found: ${cascades}, exected: 
${expected_cascades}"; false; }

From b8d2cc5d750aa84fe4aaf4c273d0a7d6679518e3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgra...@ubuntu.com>
Date: Mon, 23 Jan 2017 17:52:20 -0500
Subject: [PATCH 3/6] network: Properly detect vlans
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Closes #2809

Signed-off-by: Stéphane Graber <stgra...@ubuntu.com>
---
 lxd/networks.go | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lxd/networks.go b/lxd/networks.go
index 237a883..ce12c42 100644
--- a/lxd/networks.go
+++ b/lxd/networks.go
@@ -205,6 +205,8 @@ func doNetworkGet(d *Daemon, name string) (api.Network, 
error) {
                }
 
                n.Type = "bridge"
+       } else if shared.PathExists(fmt.Sprintf("/proc/net/vlan/%s", n.Name)) {
+               n.Type = "vlan"
        } else if shared.PathExists(fmt.Sprintf("/sys/class/net/%s/device", 
n.Name)) {
                n.Type = "physical"
        } else if shared.PathExists(fmt.Sprintf("/sys/class/net/%s/bonding", 
n.Name)) {

From e7f31632ba7f0ebf970826b539ec3e553977eee7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgra...@ubuntu.com>
Date: Mon, 23 Jan 2017 17:57:20 -0500
Subject: [PATCH 4/6] network: Handle empty dnsmasq pid file
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Closes #2767

Signed-off-by: Stéphane Graber <stgra...@ubuntu.com>
---
 lxd/networks_utils.go | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/lxd/networks_utils.go b/lxd/networks_utils.go
index f632121..6122d9d 100644
--- a/lxd/networks_utils.go
+++ b/lxd/networks_utils.go
@@ -617,6 +617,17 @@ func networkKillDnsmasq(name string, reload bool) error {
        }
        pid := strings.TrimSpace(string(content))
 
+       // Check for empty string
+       if pid == "" {
+               os.Remove(pidPath)
+
+               if reload {
+                       return fmt.Errorf("dnsmasq isn't running")
+               }
+
+               return nil
+       }
+
        // Check if the process still exists
        if !shared.PathExists(fmt.Sprintf("/proc/%s", pid)) {
                os.Remove(pidPath)

From cd0e39e12e5e43c8992119fecdd12b2ae95933c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgra...@ubuntu.com>
Date: Mon, 23 Jan 2017 18:03:06 -0500
Subject: [PATCH 5/6] patches: Mark all patches as applied on create
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Stéphane Graber <stgra...@ubuntu.com>
---
 lxd/db.go | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lxd/db.go b/lxd/db.go
index 2473958..1c655b6 100644
--- a/lxd/db.go
+++ b/lxd/db.go
@@ -201,6 +201,11 @@ func createDb(db *sql.DB) (err error) {
                return err
        }
 
+       // Mark all existing patches as applied
+       for _, p := range patches {
+               dbPatchesMarkApplied(db, p.name)
+       }
+
        err = dbProfileCreateDefault(db)
        if err != nil {
                return err

From b4f9fbc60f2bf7440fefebe13bc40a1bfa4b0247 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgra...@ubuntu.com>
Date: Mon, 23 Jan 2017 20:03:18 -0500
Subject: [PATCH 6/6] btrfs: Don't assume a path is a subvolume
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Don't assume that any directory that's stored on a btrfs partition is
going to be a subvolume.

This fixes problems when creating containers on a btrfs-backed system
that doesn't have the btrfs tools installed.

Closes #2748

Signed-off-by: Stéphane Graber <stgra...@ubuntu.com>
---
 lxd/storage.go | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lxd/storage.go b/lxd/storage.go
index 774366c..d9e0e7c 100644
--- a/lxd/storage.go
+++ b/lxd/storage.go
@@ -257,6 +257,12 @@ func storageForFilename(d *Daemon, filename string) 
(storage, error) {
                if err != nil {
                        return nil, fmt.Errorf("couldn't detect filesystem for 
'%s': %v", filename, err)
                }
+
+               if filesystem == "btrfs" {
+                       if !(*storageBtrfs).isSubvolume(nil, filename) {
+                               filesystem = ""
+                       }
+               }
        }
 
        if shared.PathExists(filename + ".lv") {
_______________________________________________
lxc-devel mailing list
lxc-devel@lists.linuxcontainers.org
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to