[lxc-devel] [lxd/master] Rename db function names (part 4)
freeekanayaka on Github
lxc-bot at linuxcontainers.org
Tue May 5 09:31:10 UTC 2020
A non-text attachment was scrubbed...
Name: not available
Type: text/x-mailbox
Size: 301 bytes
Desc: not available
URL: <http://lists.linuxcontainers.org/pipermail/lxc-devel/attachments/20200505/213f9eec/attachment-0001.bin>
-------------- next part --------------
From aa5d84710d12467ad99d571928790f8d4082725c Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:17:21 +0100
Subject: [PATCH 01/41] lxd/db: Rename NodeByAddress to GetNodeByAddress
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/api_cluster.go | 2 +-
lxd/cluster/membership.go | 2 +-
lxd/db/images.go | 4 ++--
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 2 +-
lxd/instance_post.go | 2 +-
6 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/lxd/api_cluster.go b/lxd/api_cluster.go
index 51cebb8138..c2ba542331 100644
--- a/lxd/api_cluster.go
+++ b/lxd/api_cluster.go
@@ -588,7 +588,7 @@ func clusterPutJoin(d *Daemon, req api.ClusterPut) response.Response {
var nodeInfo db.NodeInfo
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- nodeInfo, err = tx.NodeByAddress(leader)
+ nodeInfo, err = tx.GetNodeByAddress(leader)
return err
})
if err != nil {
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 326ea0ceba..9d75fa5d8b 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -879,7 +879,7 @@ func isMemberOnline(state *state.State, cert *shared.CertInfo, address string) (
if err != nil {
return err
}
- node, err := tx.NodeByAddress(address)
+ node, err := tx.GetNodeByAddress(address)
if err != nil {
return err
}
diff --git a/lxd/db/images.go b/lxd/db/images.go
index 0800b02e3b..ce6e7b2c95 100644
--- a/lxd/db/images.go
+++ b/lxd/db/images.go
@@ -604,7 +604,7 @@ WHERE images.fingerprint = ?
return err
}
for _, address := range allAddresses {
- node, err := tx.NodeByAddress(address)
+ node, err := tx.GetNodeByAddress(address)
if err != nil {
return err
}
@@ -1158,7 +1158,7 @@ func (c *Cluster) getNodesByImageFingerprint(stmt, fingerprint string) ([]string
return err
}
for _, address := range allAddresses {
- node, err := tx.NodeByAddress(address)
+ node, err := tx.GetNodeByAddress(address)
if err != nil {
return err
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 049d7dd198..f0f1548976 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -54,8 +54,8 @@ func (n NodeInfo) Version() [2]int {
return [2]int{n.Schema, n.APIExtensions}
}
-// NodeByAddress returns the node with the given network address.
-func (c *ClusterTx) NodeByAddress(address string) (NodeInfo, error) {
+// GetNodeByAddress returns the node with the given network address.
+func (c *ClusterTx) GetNodeByAddress(address string) (NodeInfo, error) {
null := NodeInfo{}
nodes, err := c.nodes(false /* not pending */, "address=?", address)
if err != nil {
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index fda2527546..8dc31df322 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -27,7 +27,7 @@ func TestNodeAdd(t *testing.T) {
require.NoError(t, err)
require.Len(t, nodes, 2)
- node, err := tx.NodeByAddress("1.2.3.4:666")
+ node, err := tx.GetNodeByAddress("1.2.3.4:666")
require.NoError(t, err)
assert.Equal(t, "buzz", node.Name)
assert.Equal(t, "1.2.3.4:666", node.Address)
diff --git a/lxd/instance_post.go b/lxd/instance_post.go
index a787da7e09..5935b771e8 100644
--- a/lxd/instance_post.go
+++ b/lxd/instance_post.go
@@ -90,7 +90,7 @@ func containerPost(d *Daemon, r *http.Request) response.Response {
sourceNodeOffline = false
return nil
}
- node, err = tx.NodeByAddress(address)
+ node, err = tx.GetNodeByAddress(address)
if err != nil {
return errors.Wrapf(err, "Failed to get source node for %s", address)
}
From 0a57d838597454079dd4d7e32ce65a4dfdbb2c7a Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:18:20 +0100
Subject: [PATCH 02/41] lxd/db: Rename NodePendingByAddress to
GetPendingNodeByAddress
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 9d75fa5d8b..72a3d029e9 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -368,7 +368,7 @@ func Join(state *state.State, gateway *Gateway, cert *shared.CertInfo, name stri
// tables with our local configuration.
logger.Info("Migrate local data to cluster database")
err = state.Cluster.ExitExclusive(func(tx *db.ClusterTx) error {
- node, err := tx.NodePendingByAddress(address)
+ node, err := tx.GetPendingNodeByAddress(address)
if err != nil {
return errors.Wrap(err, "failed to get ID of joining node")
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index f0f1548976..2052623667 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -71,8 +71,8 @@ func (c *ClusterTx) GetNodeByAddress(address string) (NodeInfo, error) {
}
}
-// NodePendingByAddress returns the pending node with the given network address.
-func (c *ClusterTx) NodePendingByAddress(address string) (NodeInfo, error) {
+// GetPendingNodeByAddress returns the pending node with the given network address.
+func (c *ClusterTx) GetPendingNodeByAddress(address string) (NodeInfo, error) {
null := NodeInfo{}
nodes, err := c.nodes(true /*pending */, "address=?", address)
if err != nil {
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 8dc31df322..c9bb005bfd 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -184,8 +184,8 @@ func TestNodePending(t *testing.T) {
require.NoError(t, err)
assert.Len(t, nodes, 1)
- // But the key be retrieved with NodePendingByAddress
- node, err := tx.NodePendingByAddress("1.2.3.4:666")
+ // But the key be retrieved with GetPendingNodeByAddress
+ node, err := tx.GetPendingNodeByAddress("1.2.3.4:666")
require.NoError(t, err)
assert.Equal(t, id, node.ID)
From 751435d18ae81326882bfa689a495ea1e0cd180b Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:19:39 +0100
Subject: [PATCH 03/41] lxd/db: Rename NodeByName to GetNodeByName
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/api_cluster.go | 2 +-
lxd/cluster/membership.go | 4 ++--
lxd/cluster/resolve.go | 2 +-
lxd/cluster/upgrade_test.go | 2 +-
lxd/db/containers.go | 2 +-
lxd/db/networks.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 12 ++++++------
lxd/db/storage_pools.go | 2 +-
lxd/instance_post.go | 4 ++--
10 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/lxd/api_cluster.go b/lxd/api_cluster.go
index c2ba542331..b90d99cba6 100644
--- a/lxd/api_cluster.go
+++ b/lxd/api_cluster.go
@@ -906,7 +906,7 @@ func clusterNodePut(d *Daemon, r *http.Request) response.Response {
var current db.NodeInfo
var err error
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- current, err = tx.NodeByName(name)
+ current, err = tx.GetNodeByName(name)
if err != nil {
return err
}
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 72a3d029e9..52139b01de 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -766,7 +766,7 @@ func Leave(state *state.State, gateway *Gateway, name string, force bool) (strin
var address string
err := state.Cluster.Transaction(func(tx *db.ClusterTx) error {
// Get the node (if it doesn't exists an error is returned).
- node, err := tx.NodeByName(name)
+ node, err := tx.GetNodeByName(name)
if err != nil {
return err
}
@@ -907,7 +907,7 @@ func Purge(cluster *db.Cluster, name string) error {
return cluster.Transaction(func(tx *db.ClusterTx) error {
// Get the node (if it doesn't exists an error is returned).
- node, err := tx.NodeByName(name)
+ node, err := tx.GetNodeByName(name)
if err != nil {
return errors.Wrapf(err, "failed to get node %s", name)
}
diff --git a/lxd/cluster/resolve.go b/lxd/cluster/resolve.go
index ff35276810..e58e1e6d0f 100644
--- a/lxd/cluster/resolve.go
+++ b/lxd/cluster/resolve.go
@@ -21,7 +21,7 @@ func ResolveTarget(cluster *db.Cluster, target string) (string, error) {
return nil
}
- node, err := tx.NodeByName(target)
+ node, err := tx.GetNodeByName(target)
if err != nil {
if err == db.ErrNoSuchObject {
return fmt.Errorf("No cluster member called '%s'", target)
diff --git a/lxd/cluster/upgrade_test.go b/lxd/cluster/upgrade_test.go
index bff4eb4434..132433ac2e 100644
--- a/lxd/cluster/upgrade_test.go
+++ b/lxd/cluster/upgrade_test.go
@@ -68,7 +68,7 @@ func TestMaybeUpdate_Upgrade(t *testing.T) {
id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
require.NoError(t, err)
- node, err := tx.NodeByName("buzz")
+ node, err := tx.GetNodeByName("buzz")
require.NoError(t, err)
version := node.Version()
diff --git a/lxd/db/containers.go b/lxd/db/containers.go
index 5a38d1b48d..99bd041611 100644
--- a/lxd/db/containers.go
+++ b/lxd/db/containers.go
@@ -472,7 +472,7 @@ func (c *ClusterTx) UpdateInstanceNode(project, oldName, newName, newNode string
return errors.Wrap(err, "Failed to get instance's ID")
}
- node, err := c.NodeByName(newNode)
+ node, err := c.GetNodeByName(newNode)
if err != nil {
return errors.Wrap(err, "Failed to get new node's info")
}
diff --git a/lxd/db/networks.go b/lxd/db/networks.go
index 0cfc0d43a1..802bb4bde0 100644
--- a/lxd/db/networks.go
+++ b/lxd/db/networks.go
@@ -196,7 +196,7 @@ func (c *ClusterTx) NetworkCreatePending(node, name string, conf map[string]stri
}
// Get the ID of the node with the given name.
- nodeInfo, err := c.NodeByName(node)
+ nodeInfo, err := c.GetNodeByName(node)
if err != nil {
return err
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 2052623667..f036b82bf6 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -88,8 +88,8 @@ func (c *ClusterTx) GetPendingNodeByAddress(address string) (NodeInfo, error) {
}
}
-// NodeByName returns the node with the given name.
-func (c *ClusterTx) NodeByName(name string) (NodeInfo, error) {
+// GetNodeByName returns the node with the given name.
+func (c *ClusterTx) GetNodeByName(name string) (NodeInfo, error) {
null := NodeInfo{}
nodes, err := c.nodes(false /* not pending */, "name=?", name)
if err != nil {
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index c9bb005bfd..d344298281 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -36,7 +36,7 @@ func TestNodeAdd(t *testing.T) {
assert.Equal(t, [2]int{cluster.SchemaVersion, len(version.APIExtensions)}, node.Version())
assert.False(t, node.IsOffline(20*time.Second))
- node, err = tx.NodeByName("buzz")
+ node, err = tx.GetNodeByName("buzz")
require.NoError(t, err)
assert.Equal(t, "buzz", node.Name)
}
@@ -134,7 +134,7 @@ func TestNodeRename(t *testing.T) {
require.NoError(t, err)
err = tx.NodeRename("buzz", "rusp")
require.NoError(t, err)
- node, err := tx.NodeByName("rusp")
+ node, err := tx.GetNodeByName("rusp")
require.NoError(t, err)
assert.Equal(t, "rusp", node.Name)
@@ -158,10 +158,10 @@ func TestNodeRemove(t *testing.T) {
err = tx.NodeRemove(id)
require.NoError(t, err)
- _, err = tx.NodeByName("buzz")
+ _, err = tx.GetNodeByName("buzz")
assert.NoError(t, err)
- _, err = tx.NodeByName("rusp")
+ _, err = tx.GetNodeByName("rusp")
assert.Equal(t, db.ErrNoSuchObject, err)
}
@@ -178,7 +178,7 @@ func TestNodePending(t *testing.T) {
require.NoError(t, err)
// Pending nodes are skipped from regular listing
- _, err = tx.NodeByName("buzz")
+ _, err = tx.GetNodeByName("buzz")
assert.Equal(t, db.ErrNoSuchObject, err)
nodes, err := tx.Nodes()
require.NoError(t, err)
@@ -192,7 +192,7 @@ func TestNodePending(t *testing.T) {
// Remove the pending flag
err = tx.NodePending(id, false)
require.NoError(t, err)
- node, err = tx.NodeByName("buzz")
+ node, err = tx.GetNodeByName("buzz")
require.NoError(t, err)
assert.Equal(t, id, node.ID)
}
diff --git a/lxd/db/storage_pools.go b/lxd/db/storage_pools.go
index fbca6e769a..33c418c02f 100644
--- a/lxd/db/storage_pools.go
+++ b/lxd/db/storage_pools.go
@@ -286,7 +286,7 @@ func (c *ClusterTx) StoragePoolCreatePending(node, name, driver string, conf map
}
// Get the ID of the node with the given name.
- nodeInfo, err := c.NodeByName(node)
+ nodeInfo, err := c.GetNodeByName(node)
if err != nil {
return err
}
diff --git a/lxd/instance_post.go b/lxd/instance_post.go
index 5935b771e8..f06ac60baf 100644
--- a/lxd/instance_post.go
+++ b/lxd/instance_post.go
@@ -74,7 +74,7 @@ func containerPost(d *Daemon, r *http.Request) response.Response {
}
// Load target node.
- node, err := tx.NodeByName(targetNode)
+ node, err := tx.GetNodeByName(targetNode)
if err != nil {
return errors.Wrap(err, "Failed to get target node")
}
@@ -284,7 +284,7 @@ func containerPostClusteringMigrate(d *Daemon, c instance.Instance, oldName, new
return errors.Wrap(err, "Failed to get local node address")
}
- node, err := tx.NodeByName(newNode)
+ node, err := tx.GetNodeByName(newNode)
if err != nil {
return errors.Wrap(err, "Failed to get new node address")
}
From 696b6e1b22a30707c9673f49b3767c66c2e13caa Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:21:39 +0100
Subject: [PATCH 04/41] lxd/db: Rename NodeName to GetLocalNodeName
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/api_1.0.go | 2 +-
lxd/api_cluster.go | 2 +-
lxd/cluster/resolve.go | 2 +-
lxd/db/containers.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 4 ++--
lxd/db/storage_volumes.go | 2 +-
lxd/events.go | 2 +-
lxd/instance.go | 2 +-
lxd/instances_post.go | 2 +-
lxd/networks.go | 4 ++--
lxd/operations/linux.go | 2 +-
lxd/profiles_utils.go | 4 ++--
lxd/storage_pools.go | 2 +-
14 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/lxd/api_1.0.go b/lxd/api_1.0.go
index 4c8f42f9e7..7c34d158fb 100644
--- a/lxd/api_1.0.go
+++ b/lxd/api_1.0.go
@@ -150,7 +150,7 @@ func api10Get(d *Daemon, r *http.Request) response.Response {
var serverName string
if clustered {
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- serverName, err = tx.NodeName()
+ serverName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/api_cluster.go b/lxd/api_cluster.go
index b90d99cba6..ef11173469 100644
--- a/lxd/api_cluster.go
+++ b/lxd/api_cluster.go
@@ -87,7 +87,7 @@ func clusterGet(d *Daemon, r *http.Request) response.Response {
name := ""
err := d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- name, err = tx.NodeName()
+ name, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/cluster/resolve.go b/lxd/cluster/resolve.go
index e58e1e6d0f..084fa9db24 100644
--- a/lxd/cluster/resolve.go
+++ b/lxd/cluster/resolve.go
@@ -12,7 +12,7 @@ import (
func ResolveTarget(cluster *db.Cluster, target string) (string, error) {
address := ""
err := cluster.Transaction(func(tx *db.ClusterTx) error {
- name, err := tx.NodeName()
+ name, err := tx.GetLocalNodeName()
if err != nil {
return err
}
diff --git a/lxd/db/containers.go b/lxd/db/containers.go
index 99bd041611..706c261cf9 100644
--- a/lxd/db/containers.go
+++ b/lxd/db/containers.go
@@ -525,7 +525,7 @@ func (c *ClusterTx) UpdateInstanceNode(project, oldName, newName, newNode string
// GetLocalInstancesInProject retuurns all instances of the given type on the
// local node within the given project.
func (c *ClusterTx) GetLocalInstancesInProject(project string, instanceType instancetype.Type) ([]Instance, error) {
- node, err := c.NodeName()
+ node, err := c.GetLocalNodeName()
if err != nil {
return nil, errors.Wrap(err, "Local node name")
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index f036b82bf6..3f8705eee2 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -105,8 +105,8 @@ func (c *ClusterTx) GetNodeByName(name string) (NodeInfo, error) {
}
}
-// NodeName returns the name of the node this method is invoked on.
-func (c *ClusterTx) NodeName() (string, error) {
+// GetLocalNodeName returns the name of the node this method is invoked on.
+func (c *ClusterTx) GetLocalNodeName() (string, error) {
stmt := "SELECT name FROM nodes WHERE id=?"
names, err := query.SelectStrings(c.tx, stmt, c.nodeID)
if err != nil {
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index d344298281..97e4b1fe48 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -114,11 +114,11 @@ func TestNodeIsOutdated_OneNodeWithLowerVersion(t *testing.T) {
assert.False(t, outdated)
}
-func TestNodeName(t *testing.T) {
+func TestGetLocalNodeName(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- name, err := tx.NodeName()
+ name, err := tx.GetLocalNodeName()
require.NoError(t, err)
// The default node 1 has a conventional name 'none'.
diff --git a/lxd/db/storage_volumes.go b/lxd/db/storage_volumes.go
index 054c6feaf8..aca38b49dc 100644
--- a/lxd/db/storage_volumes.go
+++ b/lxd/db/storage_volumes.go
@@ -229,7 +229,7 @@ func (c *Cluster) StorageVolumeIsAvailable(pool, volume string) (bool, error) {
return nil
}
- node, err := tx.NodeName()
+ node, err := tx.GetLocalNodeName()
if err != nil {
return errors.Wrapf(err, "Fetch node name")
}
diff --git a/lxd/events.go b/lxd/events.go
index 38b9760268..afdbe93633 100644
--- a/lxd/events.go
+++ b/lxd/events.go
@@ -49,7 +49,7 @@ func eventsSocket(d *Daemon, r *http.Request, w http.ResponseWriter) error {
// the number of DB access to just one per connection
var serverName string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- serverName, err = tx.NodeName()
+ serverName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/instance.go b/lxd/instance.go
index 3e1683f978..360c5ba5c9 100644
--- a/lxd/instance.go
+++ b/lxd/instance.go
@@ -521,7 +521,7 @@ func instanceCreateInternal(s *state.State, args db.InstanceArgs) (instance.Inst
var dbInst db.Instance
err = s.Cluster.Transaction(func(tx *db.ClusterTx) error {
- node, err := tx.NodeName()
+ node, err := tx.GetLocalNodeName()
if err != nil {
return err
}
diff --git a/lxd/instances_post.go b/lxd/instances_post.go
index 29f166e03c..a4691988ac 100644
--- a/lxd/instances_post.go
+++ b/lxd/instances_post.go
@@ -389,7 +389,7 @@ func createFromCopy(d *Daemon, project string, req *api.InstancesPost) response.
if clustered {
var serverName string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- serverName, err = tx.NodeName()
+ serverName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/networks.go b/lxd/networks.go
index 9d9b27e143..20ca524815 100644
--- a/lxd/networks.go
+++ b/lxd/networks.go
@@ -241,7 +241,7 @@ func networksPostCluster(d *Daemon, req api.NetworksPost) error {
}
// Take note of the name of this node.
- nodeName, err = tx.NodeName()
+ nodeName, err = tx.GetLocalNodeName()
if err != nil {
return err
}
@@ -745,7 +745,7 @@ func networkLeasesGet(d *Daemon, r *http.Request) response.Response {
// Local server name
var serverName string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- serverName, err = tx.NodeName()
+ serverName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/operations/linux.go b/lxd/operations/linux.go
index e03d94ad7e..99ba7835a3 100644
--- a/lxd/operations/linux.go
+++ b/lxd/operations/linux.go
@@ -44,7 +44,7 @@ func getServerName(op *Operation) (string, error) {
var serverName string
var err error
err = op.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- serverName, err = tx.NodeName()
+ serverName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index 837187e82d..9d658ff504 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -135,7 +135,7 @@ func doProfileUpdate(d *Daemon, project, name string, id int64, profile *api.Pro
nodeName := ""
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- nodeName, err = tx.NodeName()
+ nodeName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
@@ -166,7 +166,7 @@ func doProfileUpdateCluster(d *Daemon, project, name string, old api.ProfilePut)
nodeName := ""
err := d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- nodeName, err = tx.NodeName()
+ nodeName, err = tx.GetLocalNodeName()
return err
})
if err != nil {
diff --git a/lxd/storage_pools.go b/lxd/storage_pools.go
index 3e543e94ad..2f7faf9ba0 100644
--- a/lxd/storage_pools.go
+++ b/lxd/storage_pools.go
@@ -211,7 +211,7 @@ func storagePoolsPostCluster(d *Daemon, req api.StoragePoolsPost) error {
}
// Take note of the name of this node
- nodeName, err = tx.NodeName()
+ nodeName, err = tx.GetLocalNodeName()
if err != nil {
return err
}
From 9c59b8ea8bca708bce97bdec4b68b11bf42ad88b Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:23:17 +0100
Subject: [PATCH 05/41] lxd/db: Rename NodeAddress to GetLocalNodeAddress
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/heartbeat.go | 2 +-
lxd/cluster/membership.go | 2 +-
lxd/db/images.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/instance_post.go | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lxd/cluster/heartbeat.go b/lxd/cluster/heartbeat.go
index a93092d810..476d5fc3bb 100644
--- a/lxd/cluster/heartbeat.go
+++ b/lxd/cluster/heartbeat.go
@@ -227,7 +227,7 @@ func (g *Gateway) heartbeat(ctx context.Context, initialHeartbeat bool) {
return err
}
- localAddress, err = tx.NodeAddress()
+ localAddress, err = tx.GetLocalNodeAddress()
if err != nil {
return err
}
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 52139b01de..3d3437e1cf 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -621,7 +621,7 @@ func Assign(state *state.State, gateway *Gateway, nodes []db.RaftNode) error {
address := ""
err := state.Cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- address, err = tx.NodeAddress()
+ address, err = tx.GetLocalNodeAddress()
if err != nil {
return errors.Wrap(err, "Failed to fetch the address of this cluster member")
}
diff --git a/lxd/db/images.go b/lxd/db/images.go
index ce6e7b2c95..1e9659a0f5 100644
--- a/lxd/db/images.go
+++ b/lxd/db/images.go
@@ -595,7 +595,7 @@ WHERE images.fingerprint = ?
return err
}
- localAddress, err = tx.NodeAddress()
+ localAddress, err = tx.GetLocalNodeAddress()
if err != nil {
return err
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 3f8705eee2..e338ad7e7e 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -122,8 +122,8 @@ func (c *ClusterTx) GetLocalNodeName() (string, error) {
}
}
-// NodeAddress returns the address of the node this method is invoked on.
-func (c *ClusterTx) NodeAddress() (string, error) {
+// GetLocalNodeAddress returns the address of the node this method is invoked on.
+func (c *ClusterTx) GetLocalNodeAddress() (string, error) {
stmt := "SELECT address FROM nodes WHERE id=?"
addresses, err := query.SelectStrings(c.tx, stmt, c.nodeID)
if err != nil {
diff --git a/lxd/instance_post.go b/lxd/instance_post.go
index f06ac60baf..e868974e31 100644
--- a/lxd/instance_post.go
+++ b/lxd/instance_post.go
@@ -279,7 +279,7 @@ func containerPostClusteringMigrate(d *Daemon, c instance.Instance, oldName, new
err := d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- sourceAddress, err = tx.NodeAddress()
+ sourceAddress, err = tx.GetLocalNodeAddress()
if err != nil {
return errors.Wrap(err, "Failed to get local node address")
}
From 9b4645969d55b619b6301686c3e48e26f42d8ff1 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:25:44 +0100
Subject: [PATCH 06/41] lxd/db: Rename Nodes to GetNodes
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/events.go | 2 +-
lxd/cluster/heartbeat.go | 4 ++--
lxd/cluster/heartbeat_test.go | 4 ++--
lxd/cluster/membership.go | 12 ++++++------
lxd/cluster/membership_test.go | 4 ++--
lxd/cluster/notify.go | 2 +-
lxd/cluster/notify_test.go | 4 ++--
lxd/cluster/upgrade_test.go | 2 +-
lxd/db/db.go | 2 +-
lxd/db/networks.go | 2 +-
lxd/db/node.go | 6 +++---
lxd/db/node_test.go | 6 +++---
lxd/db/storage_pools.go | 2 +-
lxd/patches.go | 2 +-
14 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/lxd/cluster/events.go b/lxd/cluster/events.go
index 8e77a0d46a..4260009562 100644
--- a/lxd/cluster/events.go
+++ b/lxd/cluster/events.go
@@ -51,7 +51,7 @@ func eventsUpdateListeners(endpoints *endpoints.Endpoints, cluster *db.Cluster,
err := cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- nodes, err = tx.Nodes()
+ nodes, err = tx.GetNodes()
if err != nil {
return err
}
diff --git a/lxd/cluster/heartbeat.go b/lxd/cluster/heartbeat.go
index 476d5fc3bb..1516d8702a 100644
--- a/lxd/cluster/heartbeat.go
+++ b/lxd/cluster/heartbeat.go
@@ -222,7 +222,7 @@ func (g *Gateway) heartbeat(ctx context.Context, initialHeartbeat bool) {
var offlineThreshold time.Duration
err = g.Cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- allNodes, err = tx.Nodes()
+ allNodes, err = tx.GetNodes()
if err != nil {
return err
}
@@ -275,7 +275,7 @@ func (g *Gateway) heartbeat(ctx context.Context, initialHeartbeat bool) {
var currentNodes []db.NodeInfo
err = g.Cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- currentNodes, err = tx.Nodes()
+ currentNodes, err = tx.GetNodes()
if err != nil {
return err
}
diff --git a/lxd/cluster/heartbeat_test.go b/lxd/cluster/heartbeat_test.go
index 74bd601589..680903b798 100644
--- a/lxd/cluster/heartbeat_test.go
+++ b/lxd/cluster/heartbeat_test.go
@@ -33,7 +33,7 @@ func TestHeartbeat(t *testing.T) {
// Artificially mark all nodes as down
err := leaderState.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
for _, node := range nodes {
err := tx.NodeHeartbeat(node.Address, time.Now().Add(-time.Minute))
@@ -51,7 +51,7 @@ func TestHeartbeat(t *testing.T) {
// The heartbeat timestamps of all nodes got updated
err = leaderState.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
offlineThreshold, err := tx.NodeOfflineThreshold()
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 3d3437e1cf..923e31de61 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -139,7 +139,7 @@ func Bootstrap(state *state.State, gateway *Gateway, name string) error {
// connection, so new queries will be executed over the new network
// connection.
err = state.Cluster.ExitExclusive(func(tx *db.ClusterTx) error {
- _, err := tx.Nodes()
+ _, err := tx.GetNodes()
return err
})
if err != nil {
@@ -513,7 +513,7 @@ func Rebalance(state *state.State, gateway *Gateway) (string, []db.RaftNode, err
offlineThreshold = config.OfflineThreshold()
maxVoters = config.MaxVoters()
maxStandBy = config.MaxStandBy()
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
if err != nil {
return errors.Wrap(err, "failed to get cluster nodes")
}
@@ -932,7 +932,7 @@ func List(state *state.State) ([]api.ClusterMember, error) {
var offlineThreshold time.Duration
err = state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err = tx.Nodes()
+ nodes, err = tx.GetNodes()
if err != nil {
return err
}
@@ -1062,7 +1062,7 @@ func membershipCheckNodeStateForBootstrapOrJoin(tx *db.NodeTx, address string) e
// Check that cluster-related preconditions are met for bootstrapping or
// joining a cluster.
func membershipCheckClusterStateForBootstrapOrJoin(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
if err != nil {
return errors.Wrap(err, "failed to fetch current cluster nodes")
}
@@ -1074,7 +1074,7 @@ func membershipCheckClusterStateForBootstrapOrJoin(tx *db.ClusterTx) error {
// Check that cluster-related preconditions are met for accepting a new node.
func membershipCheckClusterStateForAccept(tx *db.ClusterTx, name string, address string, schema int, api int) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
if err != nil {
return errors.Wrap(err, "Failed to fetch current cluster nodes")
}
@@ -1116,7 +1116,7 @@ func membershipCheckClusterStateForLeave(tx *db.ClusterTx, nodeID int64) error {
}
// Check that it's not the last node.
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
if err != nil {
return err
}
diff --git a/lxd/cluster/membership_test.go b/lxd/cluster/membership_test.go
index ef32100e27..0548cbf53e 100644
--- a/lxd/cluster/membership_test.go
+++ b/lxd/cluster/membership_test.go
@@ -109,7 +109,7 @@ func TestBootstrap(t *testing.T) {
// The cluster database has now an entry in the nodes table
err = state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
require.Len(t, nodes, 1)
assert.Equal(t, "buzz", nodes[0].Name)
@@ -349,7 +349,7 @@ func TestJoin(t *testing.T) {
// The node has gone from the cluster db.
err = targetState.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
assert.Len(t, nodes, 1)
return nil
diff --git a/lxd/cluster/notify.go b/lxd/cluster/notify.go
index 6073d3b844..267aa87d30 100644
--- a/lxd/cluster/notify.go
+++ b/lxd/cluster/notify.go
@@ -52,7 +52,7 @@ func NewNotifier(state *state.State, cert *shared.CertInfo, policy NotifierPolic
return err
}
- nodes, err = tx.Nodes()
+ nodes, err = tx.GetNodes()
if err != nil {
return err
}
diff --git a/lxd/cluster/notify_test.go b/lxd/cluster/notify_test.go
index b67eb9cfca..d0580bfaf4 100644
--- a/lxd/cluster/notify_test.go
+++ b/lxd/cluster/notify_test.go
@@ -158,7 +158,7 @@ func (h *notifyFixtures) Nodes(cert *shared.CertInfo, n int) func() {
func (h *notifyFixtures) Address(i int) string {
var address string
err := h.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(h.t, err)
address = nodes[i].Address
return nil
@@ -170,7 +170,7 @@ func (h *notifyFixtures) Address(i int) string {
// Mark the i'th node as down.
func (h *notifyFixtures) Down(i int) {
err := h.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(h.t, err)
err = tx.NodeHeartbeat(nodes[i].Address, time.Now().Add(-time.Minute))
require.NoError(h.t, err)
diff --git a/lxd/cluster/upgrade_test.go b/lxd/cluster/upgrade_test.go
index 132433ac2e..6345d180a1 100644
--- a/lxd/cluster/upgrade_test.go
+++ b/lxd/cluster/upgrade_test.go
@@ -151,7 +151,7 @@ func TestUpgradeMembersWithoutRole(t *testing.T) {
require.NoError(t, err)
_, err = tx.NodeAdd("bar", "5.6.7.8")
require.NoError(t, err)
- members, err = tx.Nodes()
+ members, err = tx.GetNodes()
require.NoError(t, err)
return nil
})
diff --git a/lxd/db/db.go b/lxd/db/db.go
index 1ca81e60dd..9f3df99a85 100644
--- a/lxd/db/db.go
+++ b/lxd/db/db.go
@@ -257,7 +257,7 @@ func OpenCluster(name string, store driver.NodeStore, address, dir string, timeo
err = cluster.Transaction(func(tx *ClusterTx) error {
// Figure out the ID of this node.
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
if err != nil {
return errors.Wrap(err, "Failed to fetch nodes")
}
diff --git a/lxd/db/networks.go b/lxd/db/networks.go
index 802bb4bde0..641052010e 100644
--- a/lxd/db/networks.go
+++ b/lxd/db/networks.go
@@ -106,7 +106,7 @@ func (c *ClusterTx) NetworkNodeJoin(networkID, nodeID int64) error {
// If the network is not defined on all nodes, an error is returned.
func (c *ClusterTx) NetworkNodeConfigs(networkID int64) (map[string]map[string]string, error) {
// Fetch all nodes.
- nodes, err := c.Nodes()
+ nodes, err := c.GetNodes()
if err != nil {
return nil, err
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index e338ad7e7e..c7ea7acbbe 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -177,11 +177,11 @@ func (c *ClusterTx) NodeIsOutdated() (bool, error) {
return false, nil
}
-// Nodes returns all LXD nodes part of the cluster.
+// GetNodes returns all LXD nodes part of the cluster.
//
// If this LXD instance is not clustered, a list with a single node whose
// address is 0.0.0.0 is returned.
-func (c *ClusterTx) Nodes() ([]NodeInfo, error) {
+func (c *ClusterTx) GetNodes() ([]NodeInfo, error) {
return c.nodes(false /* not pending */, "")
}
@@ -629,7 +629,7 @@ func (c *ClusterTx) NodeWithLeastContainers(archs []int) (string, error) {
return "", errors.Wrap(err, "failed to get offline threshold")
}
- nodes, err := c.Nodes()
+ nodes, err := c.GetNodes()
if err != nil {
return "", errors.Wrap(err, "failed to get current nodes")
}
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 97e4b1fe48..386073bd81 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -23,7 +23,7 @@ func TestNodeAdd(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, int64(2), id)
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
require.Len(t, nodes, 2)
@@ -180,7 +180,7 @@ func TestNodePending(t *testing.T) {
// Pending nodes are skipped from regular listing
_, err = tx.GetNodeByName("buzz")
assert.Equal(t, db.ErrNoSuchObject, err)
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
assert.Len(t, nodes, 1)
@@ -208,7 +208,7 @@ func TestNodeHeartbeat(t *testing.T) {
err = tx.NodeHeartbeat("1.2.3.4:666", time.Now().Add(-time.Minute))
require.NoError(t, err)
- nodes, err := tx.Nodes()
+ nodes, err := tx.GetNodes()
require.NoError(t, err)
require.Len(t, nodes, 2)
diff --git a/lxd/db/storage_pools.go b/lxd/db/storage_pools.go
index 33c418c02f..df6f499e74 100644
--- a/lxd/db/storage_pools.go
+++ b/lxd/db/storage_pools.go
@@ -348,7 +348,7 @@ func (c *ClusterTx) storagePoolState(name string, state int) error {
// If the storage pool is not defined on all nodes, an error is returned.
func (c *ClusterTx) StoragePoolNodeConfigs(poolID int64) (map[string]map[string]string, error) {
// Fetch all nodes.
- nodes, err := c.Nodes()
+ nodes, err := c.GetNodes()
if err != nil {
return nil, err
}
diff --git a/lxd/patches.go b/lxd/patches.go
index b736f48377..2c0dbe0845 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -3463,7 +3463,7 @@ func patchClusteringAddRoles(name string, d *Daemon) error {
var nodes []db.NodeInfo
err = d.State().Cluster.Transaction(func(tx *db.ClusterTx) error {
- nodes, err = tx.Nodes()
+ nodes, err = tx.GetNodes()
if err != nil {
return err
}
From 7cf0b1ec63d386f32d4efaebc775fd54a14bed21 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:27:00 +0100
Subject: [PATCH 07/41] lxd/db: Rename NodesCount to GetNodesCount
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/containers.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 6 +++---
lxd/images.go | 2 +-
5 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 923e31de61..8fd8f09153 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -1010,7 +1010,7 @@ func Count(state *state.State) (int, error) {
var count int
err := state.Cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- count, err = tx.NodesCount()
+ count, err = tx.GetNodesCount()
return err
})
return count, err
diff --git a/lxd/db/containers.go b/lxd/db/containers.go
index 706c261cf9..4b561c6c10 100644
--- a/lxd/db/containers.go
+++ b/lxd/db/containers.go
@@ -499,7 +499,7 @@ func (c *ClusterTx) UpdateInstanceNode(project, oldName, newName, newNode string
// Update the instance's storage volume name (since this is ceph,
// there's a clone of the volume for each node).
- count, err := c.NodesCount()
+ count, err := c.GetNodesCount()
if err != nil {
return errors.Wrap(err, "Failed to get node's count")
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index c7ea7acbbe..d02672d9dc 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -185,11 +185,11 @@ func (c *ClusterTx) GetNodes() ([]NodeInfo, error) {
return c.nodes(false /* not pending */, "")
}
-// NodesCount returns the number of nodes in the LXD cluster.
+// GetNodesCount returns the number of nodes in the LXD cluster.
//
// Since there's always at least one node row, even when not-clustered, the
// return value is greater than zero
-func (c *ClusterTx) NodesCount() (int, error) {
+func (c *ClusterTx) GetNodesCount() (int, error) {
count, err := query.Count(c.tx, "nodes", "")
if err != nil {
return 0, errors.Wrap(err, "failed to count existing nodes")
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 386073bd81..f3d0dda2fe 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -41,18 +41,18 @@ func TestNodeAdd(t *testing.T) {
assert.Equal(t, "buzz", node.Name)
}
-func TestNodesCount(t *testing.T) {
+func TestGetNodesCount(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- count, err := tx.NodesCount()
+ count, err := tx.GetNodesCount()
require.NoError(t, err)
assert.Equal(t, 1, count) // There's always at least one node.
_, err = tx.NodeAdd("buzz", "1.2.3.4:666")
require.NoError(t, err)
- count, err = tx.NodesCount()
+ count, err = tx.GetNodesCount()
require.NoError(t, err)
assert.Equal(t, 2, count)
}
diff --git a/lxd/images.go b/lxd/images.go
index 5485946bf4..f222dcfcf8 100644
--- a/lxd/images.go
+++ b/lxd/images.go
@@ -2344,7 +2344,7 @@ func imageSyncBetweenNodes(d *Daemon, project string, fingerprint string) error
// -1 means that we want to replicate the image on all nodes
if desiredSyncNodeCount == -1 {
- nodesCount, err := tx.NodesCount()
+ nodesCount, err := tx.GetNodesCount()
if err != nil {
return errors.Wrap(err, "Failed to get the number of nodes")
}
From 0d8585a49eba5100fd8e425fdba7557d25c7a62b Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:28:42 +0100
Subject: [PATCH 08/41] lxd/db: Rename NodeRename to RenameNode
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/api_cluster.go | 2 +-
lxd/api_cluster_test.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 6 +++---
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/lxd/api_cluster.go b/lxd/api_cluster.go
index ef11173469..f4497ce074 100644
--- a/lxd/api_cluster.go
+++ b/lxd/api_cluster.go
@@ -973,7 +973,7 @@ func clusterNodePost(d *Daemon, r *http.Request) response.Response {
}
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- return tx.NodeRename(name, req.ServerName)
+ return tx.RenameNode(name, req.ServerName)
})
if err != nil {
return response.SmartError(err)
diff --git a/lxd/api_cluster_test.go b/lxd/api_cluster_test.go
index 0e1a7f0d7f..b0a3da46a9 100644
--- a/lxd/api_cluster_test.go
+++ b/lxd/api_cluster_test.go
@@ -505,7 +505,7 @@ func TestCluster_LeaveForce(t *testing.T) {
}
// A LXD node can be renamed.
-func TestCluster_NodeRename(t *testing.T) {
+func TestCluster_RenameNode(t *testing.T) {
t.Skip("issue #6122")
daemon, cleanup := newTestDaemon(t)
defer cleanup()
diff --git a/lxd/db/node.go b/lxd/db/node.go
index d02672d9dc..14067de741 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -197,10 +197,10 @@ func (c *ClusterTx) GetNodesCount() (int, error) {
return count, nil
}
-// NodeRename changes the name of an existing node.
+// RenameNode changes the name of an existing node.
//
// Return an error if a node with the same name already exists.
-func (c *ClusterTx) NodeRename(old, new string) error {
+func (c *ClusterTx) RenameNode(old, new string) error {
count, err := query.Count(c.tx, "nodes", "name=?", new)
if err != nil {
return errors.Wrap(err, "failed to check existing nodes")
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index f3d0dda2fe..a55e6bfb94 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -126,13 +126,13 @@ func TestGetLocalNodeName(t *testing.T) {
}
// Rename a node
-func TestNodeRename(t *testing.T) {
+func TestRenameNode(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
_, err := tx.NodeAdd("buzz", "1.2.3.4:666")
require.NoError(t, err)
- err = tx.NodeRename("buzz", "rusp")
+ err = tx.RenameNode("buzz", "rusp")
require.NoError(t, err)
node, err := tx.GetNodeByName("rusp")
require.NoError(t, err)
@@ -140,7 +140,7 @@ func TestNodeRename(t *testing.T) {
_, err = tx.NodeAdd("buzz", "5.6.7.8:666")
require.NoError(t, err)
- err = tx.NodeRename("rusp", "buzz")
+ err = tx.RenameNode("rusp", "buzz")
assert.Equal(t, db.ErrAlreadyDefined, err)
}
From d0d05ce2c15206cc5e0dcc867c59968a43fa298c Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:30:49 +0100
Subject: [PATCH 09/41] lxd/db: Rename NodeAdd to CreateNode
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership_test.go | 2 +-
lxd/cluster/notify_test.go | 2 +-
lxd/cluster/upgrade_test.go | 6 +++---
lxd/db/containers_test.go | 12 ++++++------
lxd/db/networks_test.go | 6 +++---
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 34 +++++++++++++++++-----------------
lxd/db/storage_pools_test.go | 10 +++++-----
lxd/db/storage_volumes_test.go | 4 ++--
9 files changed, 40 insertions(+), 40 deletions(-)
diff --git a/lxd/cluster/membership_test.go b/lxd/cluster/membership_test.go
index 0548cbf53e..5f5875a51c 100644
--- a/lxd/cluster/membership_test.go
+++ b/lxd/cluster/membership_test.go
@@ -414,7 +414,7 @@ func (h *membershipFixtures) RaftNodes() []db.RaftNode {
// Add the given address to the nodes table of the cluster database.
func (h *membershipFixtures) ClusterNode(address string) {
err := h.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- _, err := tx.NodeAdd("rusp", address)
+ _, err := tx.CreateNode("rusp", address)
return err
})
require.NoError(h.t, err)
diff --git a/lxd/cluster/notify_test.go b/lxd/cluster/notify_test.go
index d0580bfaf4..3984369084 100644
--- a/lxd/cluster/notify_test.go
+++ b/lxd/cluster/notify_test.go
@@ -123,7 +123,7 @@ func (h *notifyFixtures) Nodes(cert *shared.CertInfo, n int) func() {
if i == 0 {
err = tx.NodeUpdate(int64(1), name, address)
} else {
- _, err = tx.NodeAdd(name, address)
+ _, err = tx.CreateNode(name, address)
}
require.NoError(h.t, err)
}
diff --git a/lxd/cluster/upgrade_test.go b/lxd/cluster/upgrade_test.go
index 6345d180a1..56371e05ba 100644
--- a/lxd/cluster/upgrade_test.go
+++ b/lxd/cluster/upgrade_test.go
@@ -65,7 +65,7 @@ func TestMaybeUpdate_Upgrade(t *testing.T) {
})
state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
node, err := tx.GetNodeByName("buzz")
@@ -147,9 +147,9 @@ func TestUpgradeMembersWithoutRole(t *testing.T) {
// Add a couple of members to the database.
var members []db.NodeInfo
err = state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- _, err := tx.NodeAdd("foo", "1.2.3.4")
+ _, err := tx.CreateNode("foo", "1.2.3.4")
require.NoError(t, err)
- _, err = tx.NodeAdd("bar", "5.6.7.8")
+ _, err = tx.CreateNode("bar", "5.6.7.8")
require.NoError(t, err)
members, err = tx.GetNodes()
require.NoError(t, err)
diff --git a/lxd/db/containers_test.go b/lxd/db/containers_test.go
index 2a92c8ce94..f9e7ffde41 100644
--- a/lxd/db/containers_test.go
+++ b/lxd/db/containers_test.go
@@ -20,7 +20,7 @@ func TestContainerList(t *testing.T) {
nodeID1 := int64(1) // This is the default local node
- nodeID2, err := tx.NodeAdd("node2", "1.2.3.4:666")
+ nodeID2, err := tx.CreateNode("node2", "1.2.3.4:666")
require.NoError(t, err)
addContainer(t, tx, nodeID2, "c1")
@@ -66,7 +66,7 @@ func TestContainerList_FilterByNode(t *testing.T) {
nodeID1 := int64(1) // This is the default local node
- nodeID2, err := tx.NodeAdd("node2", "1.2.3.4:666")
+ nodeID2, err := tx.CreateNode("node2", "1.2.3.4:666")
require.NoError(t, err)
addContainer(t, tx, nodeID2, "c1")
@@ -303,10 +303,10 @@ func TestGetInstanceNamesByNodeAddress(t *testing.T) {
nodeID1 := int64(1) // This is the default local node
- nodeID2, err := tx.NodeAdd("node2", "1.2.3.4:666")
+ nodeID2, err := tx.CreateNode("node2", "1.2.3.4:666")
require.NoError(t, err)
- nodeID3, err := tx.NodeAdd("node3", "5.6.7.8:666")
+ nodeID3, err := tx.CreateNode("node3", "5.6.7.8:666")
require.NoError(t, err)
require.NoError(t, tx.NodeHeartbeat("5.6.7.8:666", time.Now().Add(-time.Minute)))
@@ -333,7 +333,7 @@ func TestGetInstanceToNodeMap(t *testing.T) {
nodeID1 := int64(1) // This is the default local node
- nodeID2, err := tx.NodeAdd("node2", "1.2.3.4:666")
+ nodeID2, err := tx.CreateNode("node2", "1.2.3.4:666")
require.NoError(t, err)
addContainer(t, tx, nodeID2, "c1")
@@ -388,7 +388,7 @@ func TestGetLocalInstancesInProject(t *testing.T) {
nodeID1 := int64(1) // This is the default local node
- nodeID2, err := tx.NodeAdd("node2", "1.2.3.4:666")
+ nodeID2, err := tx.CreateNode("node2", "1.2.3.4:666")
require.NoError(t, err)
addContainer(t, tx, nodeID2, "c1")
diff --git a/lxd/db/networks_test.go b/lxd/db/networks_test.go
index 196617fe4d..08ad8a92e5 100644
--- a/lxd/db/networks_test.go
+++ b/lxd/db/networks_test.go
@@ -39,9 +39,9 @@ func TestNetworkCreatePending(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
- _, err = tx.NodeAdd("rusp", "5.6.7.8:666")
+ _, err = tx.CreateNode("rusp", "5.6.7.8:666")
require.NoError(t, err)
config := map[string]string{"bridge.external_interfaces": "foo"}
@@ -79,7 +79,7 @@ func TestNetworksCreatePending_AlreadyDefined(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
err = tx.NetworkCreatePending("buzz", "network1", map[string]string{})
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 14067de741..f84e3a366c 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -311,10 +311,10 @@ func (c *ClusterTx) nodes(pending bool, where string, args ...interface{}) ([]No
return nodes, nil
}
-// NodeAdd adds a node to the current list of LXD nodes that are part of the
+// CreateNode adds a node to the current list of LXD nodes that are part of the
// cluster. The node's architecture will be the architecture of the machine the
// method is being run on. It returns the ID of the newly inserted row.
-func (c *ClusterTx) NodeAdd(name string, address string) (int64, error) {
+func (c *ClusterTx) CreateNode(name string, address string) (int64, error) {
arch, err := osarch.ArchitectureGetLocalID()
if err != nil {
return -1, err
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index a55e6bfb94..2800cfb563 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -19,7 +19,7 @@ func TestNodeAdd(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
assert.Equal(t, int64(2), id)
@@ -49,7 +49,7 @@ func TestGetNodesCount(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, 1, count) // There's always at least one node.
- _, err = tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err = tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
count, err = tx.GetNodesCount()
@@ -71,7 +71,7 @@ func TestNodeIsOutdated_AllNodesAtSameVersion(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
outdated, err := tx.NodeIsOutdated()
@@ -84,7 +84,7 @@ func TestNodeIsOutdated_OneNodeWithHigherVersion(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
version := [2]int{cluster.SchemaVersion + 1, len(version.APIExtensions)}
@@ -101,7 +101,7 @@ func TestNodeIsOutdated_OneNodeWithLowerVersion(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
version := [2]int{cluster.SchemaVersion, len(version.APIExtensions) - 1}
@@ -130,7 +130,7 @@ func TestRenameNode(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
err = tx.RenameNode("buzz", "rusp")
require.NoError(t, err)
@@ -138,7 +138,7 @@ func TestRenameNode(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, "rusp", node.Name)
- _, err = tx.NodeAdd("buzz", "5.6.7.8:666")
+ _, err = tx.CreateNode("buzz", "5.6.7.8:666")
require.NoError(t, err)
err = tx.RenameNode("rusp", "buzz")
assert.Equal(t, db.ErrAlreadyDefined, err)
@@ -149,10 +149,10 @@ func TestNodeRemove(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
- id, err := tx.NodeAdd("rusp", "5.6.7.8:666")
+ id, err := tx.CreateNode("rusp", "5.6.7.8:666")
require.NoError(t, err)
err = tx.NodeRemove(id)
@@ -170,7 +170,7 @@ func TestNodePending(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
// Add the pending flag
@@ -202,7 +202,7 @@ func TestNodeHeartbeat(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
err = tx.NodeHeartbeat("1.2.3.4:666", time.Now().Add(-time.Minute))
@@ -221,7 +221,7 @@ func TestNodeIsEmpty_Containers(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
message, err := tx.NodeIsEmpty(id)
@@ -251,7 +251,7 @@ func TestNodeIsEmpty_Images(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
_, err = tx.Tx().Exec(`
@@ -282,7 +282,7 @@ func TestNodeIsEmpty_CustomVolumes(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
_, err = tx.Tx().Exec(`
@@ -305,7 +305,7 @@ func TestNodeWithLeastContainers(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
// Add a container to the default node (ID 1)
@@ -325,7 +325,7 @@ func TestNodeWithLeastContainers_OfflineNode(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ id, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
// Add a container to the newly created node.
@@ -349,7 +349,7 @@ func TestNodeWithLeastContainers_Pending(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
// Add a pending container to the default node (ID 1)
diff --git a/lxd/db/storage_pools_test.go b/lxd/db/storage_pools_test.go
index 8b8b8cd724..90fb03fe58 100644
--- a/lxd/db/storage_pools_test.go
+++ b/lxd/db/storage_pools_test.go
@@ -53,9 +53,9 @@ func TestStoragePoolsCreatePending(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
- _, err = tx.NodeAdd("rusp", "5.6.7.8:666")
+ _, err = tx.CreateNode("rusp", "5.6.7.8:666")
require.NoError(t, err)
config := map[string]string{"source": "/foo"}
@@ -93,7 +93,7 @@ func TestStoragePoolsCreatePending_OtherPool(t *testing.T) {
// Create a pending pool named 'pool1' on two nodes (the default 'none'
// and 'buzz')
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
config := map[string]string{"source": "/foo"}
@@ -131,7 +131,7 @@ func TestStoragePoolsCreatePending_AlreadyDefined(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- _, err := tx.NodeAdd("buzz", "1.2.3.4:666")
+ _, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
err = tx.StoragePoolCreatePending("buzz", "pool1", "dir", map[string]string{})
@@ -159,7 +159,7 @@ func TestStoragePoolVolume_Ceph(t *testing.T) {
// Create a second node (beyond the default one).
err := cluster.Transaction(func(tx *db.ClusterTx) error {
- _, err := tx.NodeAdd("n1", "1.2.3.4:666")
+ _, err := tx.CreateNode("n1", "1.2.3.4:666")
return err
})
require.NoError(t, err)
diff --git a/lxd/db/storage_volumes_test.go b/lxd/db/storage_volumes_test.go
index 1b4a18a992..ae7bd7592e 100644
--- a/lxd/db/storage_volumes_test.go
+++ b/lxd/db/storage_volumes_test.go
@@ -17,10 +17,10 @@ func TestStorageVolumeNodeAddresses(t *testing.T) {
nodeID1 := int64(1) // This is the default local node
- nodeID2, err := tx.NodeAdd("node2", "1.2.3.4:666")
+ nodeID2, err := tx.CreateNode("node2", "1.2.3.4:666")
require.NoError(t, err)
- nodeID3, err := tx.NodeAdd("node3", "5.6.7.8:666")
+ nodeID3, err := tx.CreateNode("node3", "5.6.7.8:666")
require.NoError(t, err)
poolID := addPool(t, tx, "pool1")
From 8807fb321ed946ae7cfbd8018c0059f3c4e93ae1 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:31:50 +0100
Subject: [PATCH 10/41] lxd/db: Rename NodeAddWithArch to CreateNodeWithArch
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/node.go | 6 +++---
lxd/db/node_test.go | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 8fd8f09153..f507be6d92 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -184,7 +184,7 @@ func Accept(state *state.State, gateway *Gateway, name, address string, schema,
}
// Add the new node
- id, err = tx.NodeAddWithArch(name, address, arch)
+ id, err = tx.CreateNodeWithArch(name, address, arch)
if err != nil {
return errors.Wrap(err, "Failed to insert new node into the database")
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index f84e3a366c..79d130b2e4 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -319,12 +319,12 @@ func (c *ClusterTx) CreateNode(name string, address string) (int64, error) {
if err != nil {
return -1, err
}
- return c.NodeAddWithArch(name, address, arch)
+ return c.CreateNodeWithArch(name, address, arch)
}
-// NodeAddWithArch is the same as NodeAdd, but lets setting the node
+// CreateNodeWithArch is the same as NodeAdd, but lets setting the node
// architecture explicitly.
-func (c *ClusterTx) NodeAddWithArch(name string, address string, arch int) (int64, error) {
+func (c *ClusterTx) CreateNodeWithArch(name string, address string, arch int) (int64, error) {
columns := []string{"name", "address", "schema", "api_extensions", "arch"}
values := []interface{}{name, address, cluster.SchemaVersion, version.APIExtensionsCount(), arch}
return query.UpsertObject(c.tx, "nodes", columns, values)
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 2800cfb563..f880c9f82c 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -372,7 +372,7 @@ func TestNodeWithLeastContainers_Architecture(t *testing.T) {
localArch, err := osarch.ArchitectureGetLocalID()
require.NoError(t, err)
- _, err = tx.NodeAddWithArch("buzz", "1.2.3.4:666", localArch+1)
+ _, err = tx.CreateNodeWithArch("buzz", "1.2.3.4:666", localArch+1)
require.NoError(t, err)
// Add a container to the default node (ID 1)
From efbdcaaa23b0132be6d4801f0a7ea50b3e2f312c Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:34:43 +0100
Subject: [PATCH 11/41] lxd/db: Rename NodePending to SetNodePendingFlag
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 4 ++--
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 6 +++---
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index f507be6d92..7308db65ba 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -192,7 +192,7 @@ func Accept(state *state.State, gateway *Gateway, name, address string, schema,
// Mark the node as pending, so it will be skipped when
// performing heartbeats or sending cluster
// notifications.
- err = tx.NodePending(id, true)
+ err = tx.SetNodePendingFlag(id, true)
if err != nil {
return errors.Wrap(err, "Failed to mark the new node as pending")
}
@@ -441,7 +441,7 @@ func Join(state *state.State, gateway *Gateway, cert *shared.CertInfo, name stri
// Remove the pending flag for ourselves
// notifications.
- err = tx.NodePending(node.ID, false)
+ err = tx.SetNodePendingFlag(node.ID, false)
if err != nil {
return errors.Wrapf(err, "failed to unmark the node as pending")
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 79d130b2e4..0c1f0cabae 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -330,9 +330,9 @@ func (c *ClusterTx) CreateNodeWithArch(name string, address string, arch int) (i
return query.UpsertObject(c.tx, "nodes", columns, values)
}
-// NodePending toggles the pending flag for the node. A node is pending when
+// SetNodePendingFlag toggles the pending flag for the node. A node is pending when
// it's been accepted in the cluster, but has not yet actually joined it.
-func (c *ClusterTx) NodePending(id int64, pending bool) error {
+func (c *ClusterTx) SetNodePendingFlag(id int64, pending bool) error {
value := 0
if pending {
value = 1
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index f880c9f82c..9c304e118f 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -166,7 +166,7 @@ func TestNodeRemove(t *testing.T) {
}
// Mark a node has pending.
-func TestNodePending(t *testing.T) {
+func TestSetNodePendingFlag(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
@@ -174,7 +174,7 @@ func TestNodePending(t *testing.T) {
require.NoError(t, err)
// Add the pending flag
- err = tx.NodePending(id, true)
+ err = tx.SetNodePendingFlag(id, true)
require.NoError(t, err)
// Pending nodes are skipped from regular listing
@@ -190,7 +190,7 @@ func TestNodePending(t *testing.T) {
assert.Equal(t, id, node.ID)
// Remove the pending flag
- err = tx.NodePending(id, false)
+ err = tx.SetNodePendingFlag(id, false)
require.NoError(t, err)
node, err = tx.GetNodeByName("buzz")
require.NoError(t, err)
From b3778e82f1aefdb00de4eed76bf0a430e0888faa Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:36:02 +0100
Subject: [PATCH 12/41] lxd/db: Rename NodeUpdate to UpdateNode
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/cluster/notify_test.go | 2 +-
lxd/db/node.go | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 7308db65ba..c6875d10dd 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -76,7 +76,7 @@ func Bootstrap(state *state.State, gateway *Gateway, name string) error {
}
// Add ourselves to the nodes table.
- err = tx.NodeUpdate(1, name, address)
+ err = tx.UpdateNode(1, name, address)
if err != nil {
return errors.Wrap(err, "failed to update cluster node")
}
diff --git a/lxd/cluster/notify_test.go b/lxd/cluster/notify_test.go
index 3984369084..9c4291b3cb 100644
--- a/lxd/cluster/notify_test.go
+++ b/lxd/cluster/notify_test.go
@@ -121,7 +121,7 @@ func (h *notifyFixtures) Nodes(cert *shared.CertInfo, n int) func() {
address := servers[i].Listener.Addr().String()
var err error
if i == 0 {
- err = tx.NodeUpdate(int64(1), name, address)
+ err = tx.UpdateNode(int64(1), name, address)
} else {
_, err = tx.CreateNode(name, address)
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 0c1f0cabae..4850956a5d 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -351,8 +351,8 @@ func (c *ClusterTx) SetNodePendingFlag(id int64, pending bool) error {
return nil
}
-// NodeUpdate updates the name an address of a node.
-func (c *ClusterTx) NodeUpdate(id int64, name string, address string) error {
+// UpdateNode updates the name an address of a node.
+func (c *ClusterTx) UpdateNode(id int64, name string, address string) error {
result, err := c.tx.Exec("UPDATE nodes SET name=?, address=? WHERE id=?", name, address, id)
if err != nil {
return err
From 7de9236ee573c119868f8e8e5797cd00a84549e5 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:36:46 +0100
Subject: [PATCH 13/41] lxd/db: Rename NodeAddRole to CreateNodeRole
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 6 +++---
lxd/db/node.go | 4 ++--
lxd/patches.go | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index c6875d10dd..d8b2fbb7d8 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -82,7 +82,7 @@ func Bootstrap(state *state.State, gateway *Gateway, name string) error {
}
// Update our role list.
- err = tx.NodeAddRole(1, db.ClusterRoleDatabase)
+ err = tx.CreateNodeRole(1, db.ClusterRoleDatabase)
if err != nil {
return errors.Wrapf(err, "Failed to add database role for the node")
}
@@ -448,7 +448,7 @@ func Join(state *state.State, gateway *Gateway, cert *shared.CertInfo, name stri
// Update our role list if needed.
if info.Role == db.RaftVoter {
- err = tx.NodeAddRole(node.ID, db.ClusterRoleDatabase)
+ err = tx.CreateNodeRole(node.ID, db.ClusterRoleDatabase)
if err != nil {
return errors.Wrapf(err, "Failed to add database role for the node")
}
@@ -728,7 +728,7 @@ assign:
err = transactor(func(tx *db.ClusterTx) error {
var f func(id int64, role db.ClusterRole) error
if info.Role == db.RaftVoter {
- f = tx.NodeAddRole
+ f = tx.CreateNodeRole
} else {
f = tx.NodeRemoveRole
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 4850956a5d..dd72b6629f 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -367,8 +367,8 @@ func (c *ClusterTx) UpdateNode(id int64, name string, address string) error {
return nil
}
-// NodeAddRole adds a role to the node.
-func (c *ClusterTx) NodeAddRole(id int64, role ClusterRole) error {
+// CreateNodeRole adds a role to the node.
+func (c *ClusterTx) CreateNodeRole(id int64, role ClusterRole) error {
// Translate role names to ids
roleID := -1
for k, v := range ClusterRoles {
diff --git a/lxd/patches.go b/lxd/patches.go
index 2c0dbe0845..98ae218040 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -3474,7 +3474,7 @@ func patchClusteringAddRoles(name string, d *Daemon) error {
}
if shared.StringInSlice(node.Address, addresses) && !shared.StringInSlice(string(db.ClusterRoleDatabase), node.Roles) {
- err = tx.NodeAddRole(node.ID, db.ClusterRoleDatabase)
+ err = tx.CreateNodeRole(node.ID, db.ClusterRoleDatabase)
if err != nil {
return err
}
From 6bb1e3d9300a558decc332e5ed4bcee0183a0e27 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:37:29 +0100
Subject: [PATCH 14/41] lxd/db: Rename NodeRemoveRole to RemoveNodeRole
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 4 ++--
lxd/db/node.go | 4 ++--
lxd/patches.go | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index d8b2fbb7d8..4b261c219b 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -555,7 +555,7 @@ func Rebalance(state *state.State, gateway *Gateway) (string, []db.RaftNode, err
return "", nil, errors.Wrap(err, "Failed to demote offline node")
}
err = state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- return tx.NodeRemoveRole(node.ID, db.ClusterRoleDatabase)
+ return tx.RemoveNodeRole(node.ID, db.ClusterRoleDatabase)
})
if err != nil {
return "", nil, errors.Wrap(err, "Failed to update node role")
@@ -730,7 +730,7 @@ assign:
if info.Role == db.RaftVoter {
f = tx.CreateNodeRole
} else {
- f = tx.NodeRemoveRole
+ f = tx.RemoveNodeRole
}
err = f(state.Cluster.GetNodeID(), db.ClusterRoleDatabase)
if err != nil {
diff --git a/lxd/db/node.go b/lxd/db/node.go
index dd72b6629f..595fe9ac0d 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -391,8 +391,8 @@ func (c *ClusterTx) CreateNodeRole(id int64, role ClusterRole) error {
return nil
}
-// NodeRemoveRole removes a role from the node.
-func (c *ClusterTx) NodeRemoveRole(id int64, role ClusterRole) error {
+// RemoveNodeRole removes a role from the node.
+func (c *ClusterTx) RemoveNodeRole(id int64, role ClusterRole) error {
// Translate role names to ids
roleID := -1
for k, v := range ClusterRoles {
diff --git a/lxd/patches.go b/lxd/patches.go
index 98ae218040..e137109e10 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -3479,7 +3479,7 @@ func patchClusteringAddRoles(name string, d *Daemon) error {
return err
}
} else if shared.StringInSlice(string(db.ClusterRoleDatabase), node.Roles) {
- err = tx.NodeRemoveRole(node.ID, db.ClusterRoleDatabase)
+ err = tx.RemoveNodeRole(node.ID, db.ClusterRoleDatabase)
if err != nil {
return err
}
From 56d3965e32746624a37df33bc7c313eed0c1d14e Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:38:33 +0100
Subject: [PATCH 15/41] lxd/db: Rename NodeUpdateRoles to UpdateNodeRoles
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/api_cluster.go | 2 +-
lxd/db/node.go | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/lxd/api_cluster.go b/lxd/api_cluster.go
index f4497ce074..cbf672bead 100644
--- a/lxd/api_cluster.go
+++ b/lxd/api_cluster.go
@@ -947,7 +947,7 @@ func clusterNodePut(d *Daemon, r *http.Request) response.Response {
dbRoles = append(dbRoles, db.ClusterRole(role))
}
- err := tx.NodeUpdateRoles(current.ID, dbRoles)
+ err := tx.UpdateNodeRoles(current.ID, dbRoles)
if err != nil {
return err
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 595fe9ac0d..6ebef8d9ac 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -415,8 +415,8 @@ func (c *ClusterTx) RemoveNodeRole(id int64, role ClusterRole) error {
return nil
}
-// NodeUpdateRoles changes the list of roles on a member.
-func (c *ClusterTx) NodeUpdateRoles(id int64, roles []ClusterRole) error {
+// UpdateNodeRoles changes the list of roles on a member.
+func (c *ClusterTx) UpdateNodeRoles(id int64, roles []ClusterRole) error {
getRoleID := func(role ClusterRole) (int, error) {
for k, v := range ClusterRoles {
if v == role {
From 8c8f341147dc5ee99585f3811b59d0725d633d94 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:39:27 +0100
Subject: [PATCH 16/41] lxd/db: Rename NodeRemove to RemoveNode
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 4b261c219b..0fd0297a97 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -917,7 +917,7 @@ func Purge(cluster *db.Cluster, name string) error {
return errors.Wrapf(err, "failed to clear node %s", name)
}
- err = tx.NodeRemove(node.ID)
+ err = tx.RemoveNode(node.ID)
if err != nil {
return errors.Wrapf(err, "failed to remove node %s", name)
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 6ebef8d9ac..3f6d0b44a1 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -454,8 +454,8 @@ func (c *ClusterTx) UpdateNodeRoles(id int64, roles []ClusterRole) error {
return nil
}
-// NodeRemove removes the node with the given id.
-func (c *ClusterTx) NodeRemove(id int64) error {
+// RemoveNode removes the node with the given id.
+func (c *ClusterTx) RemoveNode(id int64) error {
result, err := c.tx.Exec("DELETE FROM nodes WHERE id=?", id)
if err != nil {
return err
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 9c304e118f..9c4ca275cd 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -145,7 +145,7 @@ func TestRenameNode(t *testing.T) {
}
// Remove a new raft node.
-func TestNodeRemove(t *testing.T) {
+func TestRemoveNode(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
@@ -155,7 +155,7 @@ func TestNodeRemove(t *testing.T) {
id, err := tx.CreateNode("rusp", "5.6.7.8:666")
require.NoError(t, err)
- err = tx.NodeRemove(id)
+ err = tx.RemoveNode(id)
require.NoError(t, err)
_, err = tx.GetNodeByName("buzz")
From c3d598bdba00b879193273b1a6803d76f00d6c18 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:40:49 +0100
Subject: [PATCH 17/41] lxd/db: Rename NodeHeartbeat to SetNodeHeartbeat
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/heartbeat.go | 2 +-
lxd/cluster/heartbeat_test.go | 2 +-
lxd/cluster/notify_test.go | 2 +-
lxd/db/containers_test.go | 2 +-
lxd/db/images_test.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 6 +++---
7 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/lxd/cluster/heartbeat.go b/lxd/cluster/heartbeat.go
index 1516d8702a..4bb76667f7 100644
--- a/lxd/cluster/heartbeat.go
+++ b/lxd/cluster/heartbeat.go
@@ -322,7 +322,7 @@ func (g *Gateway) heartbeat(ctx context.Context, initialHeartbeat bool) {
continue
}
- err := tx.NodeHeartbeat(node.Address, time.Now())
+ err := tx.SetNodeHeartbeat(node.Address, time.Now())
if err != nil {
return err
}
diff --git a/lxd/cluster/heartbeat_test.go b/lxd/cluster/heartbeat_test.go
index 680903b798..5807b0faa1 100644
--- a/lxd/cluster/heartbeat_test.go
+++ b/lxd/cluster/heartbeat_test.go
@@ -36,7 +36,7 @@ func TestHeartbeat(t *testing.T) {
nodes, err := tx.GetNodes()
require.NoError(t, err)
for _, node := range nodes {
- err := tx.NodeHeartbeat(node.Address, time.Now().Add(-time.Minute))
+ err := tx.SetNodeHeartbeat(node.Address, time.Now().Add(-time.Minute))
require.NoError(t, err)
}
return nil
diff --git a/lxd/cluster/notify_test.go b/lxd/cluster/notify_test.go
index 9c4291b3cb..4e19477d56 100644
--- a/lxd/cluster/notify_test.go
+++ b/lxd/cluster/notify_test.go
@@ -172,7 +172,7 @@ func (h *notifyFixtures) Down(i int) {
err := h.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
nodes, err := tx.GetNodes()
require.NoError(h.t, err)
- err = tx.NodeHeartbeat(nodes[i].Address, time.Now().Add(-time.Minute))
+ err = tx.SetNodeHeartbeat(nodes[i].Address, time.Now().Add(-time.Minute))
require.NoError(h.t, err)
return nil
})
diff --git a/lxd/db/containers_test.go b/lxd/db/containers_test.go
index f9e7ffde41..48068ec769 100644
--- a/lxd/db/containers_test.go
+++ b/lxd/db/containers_test.go
@@ -308,7 +308,7 @@ func TestGetInstanceNamesByNodeAddress(t *testing.T) {
nodeID3, err := tx.CreateNode("node3", "5.6.7.8:666")
require.NoError(t, err)
- require.NoError(t, tx.NodeHeartbeat("5.6.7.8:666", time.Now().Add(-time.Minute)))
+ require.NoError(t, tx.SetNodeHeartbeat("5.6.7.8:666", time.Now().Add(-time.Minute)))
addContainer(t, tx, nodeID2, "c1")
addContainer(t, tx, nodeID1, "c2")
diff --git a/lxd/db/images_test.go b/lxd/db/images_test.go
index 333be02ae3..2ba8ee421f 100644
--- a/lxd/db/images_test.go
+++ b/lxd/db/images_test.go
@@ -31,7 +31,7 @@ func TestLocateImage(t *testing.T) {
// Pretend that the target node is down
err = cluster.Transaction(func(tx *db.ClusterTx) error {
- return tx.NodeHeartbeat("0.0.0.0", time.Now().Add(-time.Minute))
+ return tx.SetNodeHeartbeat("0.0.0.0", time.Now().Add(-time.Minute))
})
require.NoError(t, err)
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 3f6d0b44a1..cc1731c992 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -470,8 +470,8 @@ func (c *ClusterTx) RemoveNode(id int64) error {
return nil
}
-// NodeHeartbeat updates the heartbeat column of the node with the given address.
-func (c *ClusterTx) NodeHeartbeat(address string, heartbeat time.Time) error {
+// SetNodeHeartbeat updates the heartbeat column of the node with the given address.
+func (c *ClusterTx) SetNodeHeartbeat(address string, heartbeat time.Time) error {
stmt := "UPDATE nodes SET heartbeat=? WHERE address=?"
result, err := c.tx.Exec(stmt, heartbeat, address)
if err != nil {
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 9c4ca275cd..b39f5c23a5 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -198,14 +198,14 @@ func TestSetNodePendingFlag(t *testing.T) {
}
// Update the heartbeat of a node.
-func TestNodeHeartbeat(t *testing.T) {
+func TestSetNodeHeartbeat(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
_, err := tx.CreateNode("buzz", "1.2.3.4:666")
require.NoError(t, err)
- err = tx.NodeHeartbeat("1.2.3.4:666", time.Now().Add(-time.Minute))
+ err = tx.SetNodeHeartbeat("1.2.3.4:666", time.Now().Add(-time.Minute))
require.NoError(t, err)
nodes, err := tx.GetNodes()
@@ -335,7 +335,7 @@ INSERT INTO instances (id, node_id, name, architecture, type, project_id) VALUES
require.NoError(t, err)
// Mark the default node has offline.
- err = tx.NodeHeartbeat("0.0.0.0", time.Now().Add(-time.Minute))
+ err = tx.SetNodeHeartbeat("0.0.0.0", time.Now().Add(-time.Minute))
require.NoError(t, err)
name, err := tx.NodeWithLeastContainers(nil)
From eda471276d0375f3869d6a7af66709a554889b95 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:42:24 +0100
Subject: [PATCH 18/41] lxd/db: Rename NodeOfflineThreshold to
GetNodeOfflineThreshold
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/events.go | 2 +-
lxd/cluster/heartbeat.go | 2 +-
lxd/cluster/heartbeat_test.go | 2 +-
lxd/cluster/membership.go | 4 ++--
lxd/cluster/notify.go | 2 +-
lxd/db/containers.go | 2 +-
lxd/db/images.go | 4 ++--
lxd/db/node.go | 6 +++---
8 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/lxd/cluster/events.go b/lxd/cluster/events.go
index 4260009562..2949be8de9 100644
--- a/lxd/cluster/events.go
+++ b/lxd/cluster/events.go
@@ -56,7 +56,7 @@ func eventsUpdateListeners(endpoints *endpoints.Endpoints, cluster *db.Cluster,
return err
}
- offlineThreshold, err = tx.NodeOfflineThreshold()
+ offlineThreshold, err = tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
diff --git a/lxd/cluster/heartbeat.go b/lxd/cluster/heartbeat.go
index 4bb76667f7..cfdb611bb7 100644
--- a/lxd/cluster/heartbeat.go
+++ b/lxd/cluster/heartbeat.go
@@ -232,7 +232,7 @@ func (g *Gateway) heartbeat(ctx context.Context, initialHeartbeat bool) {
return err
}
- offlineThreshold, err = tx.NodeOfflineThreshold()
+ offlineThreshold, err = tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
diff --git a/lxd/cluster/heartbeat_test.go b/lxd/cluster/heartbeat_test.go
index 5807b0faa1..e322f69fb0 100644
--- a/lxd/cluster/heartbeat_test.go
+++ b/lxd/cluster/heartbeat_test.go
@@ -54,7 +54,7 @@ func TestHeartbeat(t *testing.T) {
nodes, err := tx.GetNodes()
require.NoError(t, err)
- offlineThreshold, err := tx.NodeOfflineThreshold()
+ offlineThreshold, err := tx.GetNodeOfflineThreshold()
require.NoError(t, err)
for _, node := range nodes {
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 0fd0297a97..24d66604aa 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -875,7 +875,7 @@ func Handover(state *state.State, gateway *Gateway, address string) (string, []d
func isMemberOnline(state *state.State, cert *shared.CertInfo, address string) (bool, error) {
online := true
err := state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- offlineThreshold, err := tx.NodeOfflineThreshold()
+ offlineThreshold, err := tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
@@ -937,7 +937,7 @@ func List(state *state.State) ([]api.ClusterMember, error) {
return err
}
- offlineThreshold, err = tx.NodeOfflineThreshold()
+ offlineThreshold, err = tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
diff --git a/lxd/cluster/notify.go b/lxd/cluster/notify.go
index 267aa87d30..603f814093 100644
--- a/lxd/cluster/notify.go
+++ b/lxd/cluster/notify.go
@@ -47,7 +47,7 @@ func NewNotifier(state *state.State, cert *shared.CertInfo, policy NotifierPolic
var nodes []db.NodeInfo
var offlineThreshold time.Duration
err = state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- offlineThreshold, err = tx.NodeOfflineThreshold()
+ offlineThreshold, err = tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
diff --git a/lxd/db/containers.go b/lxd/db/containers.go
index 4b561c6c10..ad038c6d7b 100644
--- a/lxd/db/containers.go
+++ b/lxd/db/containers.go
@@ -273,7 +273,7 @@ SELECT nodes.id, nodes.address
//
// Containers whose node is down are addeded to the special address "0.0.0.0".
func (c *ClusterTx) GetInstanceNamesByNodeAddress(project string, instanceType instancetype.Type) (map[string][]string, error) {
- offlineThreshold, err := c.NodeOfflineThreshold()
+ offlineThreshold, err := c.GetNodeOfflineThreshold()
if err != nil {
return nil, err
}
diff --git a/lxd/db/images.go b/lxd/db/images.go
index 1e9659a0f5..d5019f06e9 100644
--- a/lxd/db/images.go
+++ b/lxd/db/images.go
@@ -590,7 +590,7 @@ WHERE images.fingerprint = ?
var addresses []string // Addresses of online nodes with the image
err := c.Transaction(func(tx *ClusterTx) error {
- offlineThreshold, err := tx.NodeOfflineThreshold()
+ offlineThreshold, err := tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
@@ -1148,7 +1148,7 @@ SELECT DISTINCT nodes.address FROM nodes WHERE nodes.address NOT IN (
func (c *Cluster) getNodesByImageFingerprint(stmt, fingerprint string) ([]string, error) {
var addresses []string // Addresses of online nodes with the image
err := c.Transaction(func(tx *ClusterTx) error {
- offlineThreshold, err := tx.NodeOfflineThreshold()
+ offlineThreshold, err := tx.GetNodeOfflineThreshold()
if err != nil {
return err
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index cc1731c992..df176f623d 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -599,10 +599,10 @@ func (c *ClusterTx) NodeClear(id int64) error {
return nil
}
-// NodeOfflineThreshold returns the amount of time that needs to elapse after
+// GetNodeOfflineThreshold returns the amount of time that needs to elapse after
// which a series of unsuccessful heartbeat will make the node be considered
// offline.
-func (c *ClusterTx) NodeOfflineThreshold() (time.Duration, error) {
+func (c *ClusterTx) GetNodeOfflineThreshold() (time.Duration, error) {
threshold := time.Duration(DefaultOfflineThreshold) * time.Second
values, err := query.SelectStrings(
c.tx, "SELECT value FROM config WHERE key='cluster.offline_threshold'")
@@ -624,7 +624,7 @@ func (c *ClusterTx) NodeOfflineThreshold() (time.Duration, error) {
// an operation). If archs is not empty, then return only nodes with an
// architecture in that list.
func (c *ClusterTx) NodeWithLeastContainers(archs []int) (string, error) {
- threshold, err := c.NodeOfflineThreshold()
+ threshold, err := c.GetNodeOfflineThreshold()
if err != nil {
return "", errors.Wrap(err, "failed to get offline threshold")
}
From e8515e17c82606e474d8171168100939645ae733 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:43:25 +0100
Subject: [PATCH 19/41] lxd/db: Rename NodeClear to ClearNode
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index 24d66604aa..dbb0384f2c 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -912,7 +912,7 @@ func Purge(cluster *db.Cluster, name string) error {
return errors.Wrapf(err, "failed to get node %s", name)
}
- err = tx.NodeClear(node.ID)
+ err = tx.ClearNode(node.ID)
if err != nil {
return errors.Wrapf(err, "failed to clear node %s", name)
}
diff --git a/lxd/db/node.go b/lxd/db/node.go
index df176f623d..d940d78932 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -562,8 +562,8 @@ SELECT fingerprint, node_id FROM images JOIN images_nodes ON images.id=images_no
return "", nil
}
-// NodeClear removes any container or image associated with this node.
-func (c *ClusterTx) NodeClear(id int64) error {
+// ClearNode removes any instance or image associated with this node.
+func (c *ClusterTx) ClearNode(id int64) error {
_, err := c.tx.Exec("DELETE FROM instances WHERE node_id=?", id)
if err != nil {
return err
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index b39f5c23a5..9c34ab62cc 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -237,7 +237,7 @@ INSERT INTO instances (id, node_id, name, architecture, type, project_id) VALUES
require.NoError(t, err)
assert.Equal(t, "Node still has the following containers: foo", message)
- err = tx.NodeClear(id)
+ err = tx.ClearNode(id)
require.NoError(t, err)
message, err = tx.NodeIsEmpty(id)
From 273068cf6d6cc86ff7519bf02c83b414956a366c Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:44:29 +0100
Subject: [PATCH 20/41] lxd/db: Rename NodeWithLeastContainers to
GetNodeWithLeastInstances
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 16 ++++++++--------
lxd/instances_post.go | 4 ++--
3 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/lxd/db/node.go b/lxd/db/node.go
index d940d78932..8852e5eab7 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -619,11 +619,11 @@ func (c *ClusterTx) GetNodeOfflineThreshold() (time.Duration, error) {
return threshold, nil
}
-// NodeWithLeastContainers returns the name of the non-offline node with with
+// GetNodeWithLeastInstances returns the name of the non-offline node with with
// the least number of containers (either already created or being created with
// an operation). If archs is not empty, then return only nodes with an
// architecture in that list.
-func (c *ClusterTx) NodeWithLeastContainers(archs []int) (string, error) {
+func (c *ClusterTx) GetNodeWithLeastInstances(archs []int) (string, error) {
threshold, err := c.GetNodeOfflineThreshold()
if err != nil {
return "", errors.Wrap(err, "failed to get offline threshold")
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 9c34ab62cc..6400efe20f 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -301,7 +301,7 @@ INSERT INTO storage_volumes(name, storage_pool_id, node_id, type, project_id)
// If there are 2 online nodes, return the address of the one with the least
// number of containers.
-func TestNodeWithLeastContainers(t *testing.T) {
+func TestGetNodeWithLeastInstances(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
@@ -314,14 +314,14 @@ INSERT INTO instances (id, node_id, name, architecture, type, project_id) VALUES
`)
require.NoError(t, err)
- name, err := tx.NodeWithLeastContainers(nil)
+ name, err := tx.GetNodeWithLeastInstances(nil)
require.NoError(t, err)
assert.Equal(t, "buzz", name)
}
// If there are nodes, and one of them is offline, return the name of the
// online node, even if the offline one has more containers.
-func TestNodeWithLeastContainers_OfflineNode(t *testing.T) {
+func TestGetNodeWithLeastInstances_OfflineNode(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
@@ -338,14 +338,14 @@ INSERT INTO instances (id, node_id, name, architecture, type, project_id) VALUES
err = tx.SetNodeHeartbeat("0.0.0.0", time.Now().Add(-time.Minute))
require.NoError(t, err)
- name, err := tx.NodeWithLeastContainers(nil)
+ name, err := tx.GetNodeWithLeastInstances(nil)
require.NoError(t, err)
assert.Equal(t, "buzz", name)
}
// If there are 2 online nodes, and a container is pending on one of them,
// return the address of the other one number of containers.
-func TestNodeWithLeastContainers_Pending(t *testing.T) {
+func TestGetNodeWithLeastInstances_Pending(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
@@ -358,14 +358,14 @@ INSERT INTO operations (id, uuid, node_id, type, project_id) VALUES (1, 'abc', 1
`, db.OperationContainerCreate)
require.NoError(t, err)
- name, err := tx.NodeWithLeastContainers(nil)
+ name, err := tx.GetNodeWithLeastInstances(nil)
require.NoError(t, err)
assert.Equal(t, "buzz", name)
}
// If specific architectures were selected, return only nodes with those
// architectures.
-func TestNodeWithLeastContainers_Architecture(t *testing.T) {
+func TestGetNodeWithLeastInstances_Architecture(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
@@ -382,7 +382,7 @@ INSERT INTO instances (id, node_id, name, architecture, type, project_id) VALUES
require.NoError(t, err)
// The local node is returned despite it has more containers.
- name, err := tx.NodeWithLeastContainers([]int{localArch})
+ name, err := tx.GetNodeWithLeastInstances([]int{localArch})
require.NoError(t, err)
assert.Equal(t, "none", name)
}
diff --git a/lxd/instances_post.go b/lxd/instances_post.go
index a4691988ac..3a29a1ae5f 100644
--- a/lxd/instances_post.go
+++ b/lxd/instances_post.go
@@ -749,7 +749,7 @@ func containersPost(d *Daemon, r *http.Request) response.Response {
// If no target node was specified, pick the node with the
// least number of containers. If there's just one node, or if
// the selected node is the local one, this is effectively a
- // no-op, since NodeWithLeastContainers() will return an empty
+ // no-op, since GetNodeWithLeastInstances() will return an empty
// string.
architectures, err := instance.SuitableArchitectures(d.State(), project, req)
if err != nil {
@@ -757,7 +757,7 @@ func containersPost(d *Daemon, r *http.Request) response.Response {
}
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- targetNode, err = tx.NodeWithLeastContainers(architectures)
+ targetNode, err = tx.GetNodeWithLeastInstances(architectures)
return err
})
if err != nil {
From 9f5f4a965540f60a27c7bd6023989c4b94b43521 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:45:26 +0100
Subject: [PATCH 21/41] lxd/db: Rename NodeUpdateVersion to SetNodeVersion
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/upgrade_test.go | 2 +-
lxd/db/node.go | 4 ++--
lxd/db/node_test.go | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/cluster/upgrade_test.go b/lxd/cluster/upgrade_test.go
index 56371e05ba..9c749bb3bd 100644
--- a/lxd/cluster/upgrade_test.go
+++ b/lxd/cluster/upgrade_test.go
@@ -74,7 +74,7 @@ func TestMaybeUpdate_Upgrade(t *testing.T) {
version := node.Version()
version[0]++
- err = tx.NodeUpdateVersion(id, version)
+ err = tx.SetNodeVersion(id, version)
require.NoError(t, err)
return nil
diff --git a/lxd/db/node.go b/lxd/db/node.go
index 8852e5eab7..5d74420109 100644
--- a/lxd/db/node.go
+++ b/lxd/db/node.go
@@ -667,9 +667,9 @@ func (c *ClusterTx) GetNodeWithLeastInstances(archs []int) (string, error) {
return name, nil
}
-// NodeUpdateVersion updates the schema and API version of the node with the
+// SetNodeVersion updates the schema and API version of the node with the
// given id. This is used only in tests.
-func (c *ClusterTx) NodeUpdateVersion(id int64, version [2]int) error {
+func (c *ClusterTx) SetNodeVersion(id int64, version [2]int) error {
stmt := "UPDATE nodes SET schema=?, api_extensions=? WHERE id=?"
result, err := c.tx.Exec(stmt, version[0], version[1], id)
diff --git a/lxd/db/node_test.go b/lxd/db/node_test.go
index 6400efe20f..f111fd3998 100644
--- a/lxd/db/node_test.go
+++ b/lxd/db/node_test.go
@@ -88,7 +88,7 @@ func TestNodeIsOutdated_OneNodeWithHigherVersion(t *testing.T) {
require.NoError(t, err)
version := [2]int{cluster.SchemaVersion + 1, len(version.APIExtensions)}
- err = tx.NodeUpdateVersion(id, version)
+ err = tx.SetNodeVersion(id, version)
require.NoError(t, err)
outdated, err := tx.NodeIsOutdated()
@@ -105,7 +105,7 @@ func TestNodeIsOutdated_OneNodeWithLowerVersion(t *testing.T) {
require.NoError(t, err)
version := [2]int{cluster.SchemaVersion, len(version.APIExtensions) - 1}
- err = tx.NodeUpdateVersion(id, version)
+ err = tx.SetNodeVersion(id, version)
require.NoError(t, err)
outdated, err := tx.NodeIsOutdated()
From 82ae72801fa2fc6f9dbe073f36cb2d4166e2735d Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:47:39 +0100
Subject: [PATCH 22/41] lxd/db: Rename Operations to GetLocalOperations
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/operations.go | 4 ++--
lxd/db/operations_test.go | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index dbb0384f2c..d48203fbcf 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -289,7 +289,7 @@ func Join(state *state.State, gateway *Gateway, cert *shared.CertInfo, name stri
if err != nil {
return err
}
- operations, err = tx.Operations()
+ operations, err = tx.GetLocalOperations()
if err != nil {
return err
}
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index a1ae48b383..272567d428 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -18,8 +18,8 @@ type Operation struct {
Type OperationType // Type of the operation
}
-// Operations returns all operations associated with this node.
-func (c *ClusterTx) Operations() ([]Operation, error) {
+// GetLocalOperations returns all operations associated with this node.
+func (c *ClusterTx) GetLocalOperations() ([]Operation, error) {
return c.operations("node_id=?", c.nodeID)
}
diff --git a/lxd/db/operations_test.go b/lxd/db/operations_test.go
index a76c6fff78..b259c734fa 100644
--- a/lxd/db/operations_test.go
+++ b/lxd/db/operations_test.go
@@ -19,7 +19,7 @@ func TestOperation(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, int64(1), id)
- operations, err := tx.Operations()
+ operations, err := tx.GetLocalOperations()
require.NoError(t, err)
assert.Len(t, operations, 1)
assert.Equal(t, operations[0].UUID, "abcd")
@@ -49,7 +49,7 @@ func TestOperationNoProject(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, int64(1), id)
- operations, err := tx.Operations()
+ operations, err := tx.GetLocalOperations()
require.NoError(t, err)
assert.Len(t, operations, 1)
assert.Equal(t, operations[0].UUID, "abcd")
From 1aa47e0c2c06e62d7c5d7bc7ad6e418c65d0b796 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:50:15 +0100
Subject: [PATCH 23/41] lxd/db: Rename OperationsUUIDs to
GetLocalOperationsUUIDs
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/operations.go | 4 ++--
lxd/db/operations_test.go | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index 272567d428..90d3b766dd 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -23,9 +23,9 @@ func (c *ClusterTx) GetLocalOperations() ([]Operation, error) {
return c.operations("node_id=?", c.nodeID)
}
-// OperationsUUIDs returns the UUIDs of all operations associated with this
+// GetLocalOperationsUUIDs returns the UUIDs of all operations associated with this
// node.
-func (c *ClusterTx) OperationsUUIDs() ([]string, error) {
+func (c *ClusterTx) GetLocalOperationsUUIDs() ([]string, error) {
stmt := "SELECT uuid FROM operations WHERE node_id=?"
return query.SelectStrings(c.tx, stmt, c.nodeID)
}
diff --git a/lxd/db/operations_test.go b/lxd/db/operations_test.go
index b259c734fa..a2071b37d4 100644
--- a/lxd/db/operations_test.go
+++ b/lxd/db/operations_test.go
@@ -29,7 +29,7 @@ func TestOperation(t *testing.T) {
assert.Equal(t, id, operation.ID)
assert.Equal(t, db.OperationContainerCreate, operation.Type)
- uuids, err := tx.OperationsUUIDs()
+ uuids, err := tx.GetLocalOperationsUUIDs()
require.NoError(t, err)
assert.Equal(t, []string{"abcd"}, uuids)
@@ -59,7 +59,7 @@ func TestOperationNoProject(t *testing.T) {
assert.Equal(t, id, operation.ID)
assert.Equal(t, db.OperationContainerCreate, operation.Type)
- uuids, err := tx.OperationsUUIDs()
+ uuids, err := tx.GetLocalOperationsUUIDs()
require.NoError(t, err)
assert.Equal(t, []string{"abcd"}, uuids)
From 1da96d0e74b4cd15f9247e403fdbfa88d8c5b31b Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:52:14 +0100
Subject: [PATCH 24/41] lxd/db: Rename OperationNodes to
GetNodesWithRunningOperations
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/operations.go | 4 ++--
lxd/operations.go | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index 90d3b766dd..b634dd8f93 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -30,8 +30,8 @@ func (c *ClusterTx) GetLocalOperationsUUIDs() ([]string, error) {
return query.SelectStrings(c.tx, stmt, c.nodeID)
}
-// OperationNodes returns a list of nodes that have running operations
-func (c *ClusterTx) OperationNodes(project string) ([]string, error) {
+// GetNodesWithRunningOperations returns a list of nodes that have running operations
+func (c *ClusterTx) GetNodesWithRunningOperations(project string) ([]string, error) {
stmt := `
SELECT DISTINCT nodes.address
FROM operations
diff --git a/lxd/operations.go b/lxd/operations.go
index 91c4588fcb..71db5aa988 100644
--- a/lxd/operations.go
+++ b/lxd/operations.go
@@ -247,7 +247,7 @@ func operationsGet(d *Daemon, r *http.Request) response.Response {
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
var err error
- nodes, err = tx.OperationNodes(project)
+ nodes, err = tx.GetNodesWithRunningOperations(project)
if err != nil {
return err
}
From d05f7534b9de3892745f77ddec07d8eaf96512b2 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:53:07 +0100
Subject: [PATCH 25/41] lxd/db: Rename OperationByUUID to GetOperationByUUID
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/operations.go | 4 ++--
lxd/db/operations_test.go | 8 ++++----
lxd/operations.go | 8 ++++----
3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index b634dd8f93..68b149f6a1 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -42,8 +42,8 @@ SELECT DISTINCT nodes.address
return query.SelectStrings(c.tx, stmt, project)
}
-// OperationByUUID returns the operation with the given UUID.
-func (c *ClusterTx) OperationByUUID(uuid string) (Operation, error) {
+// GetOperationByUUID returns the operation with the given UUID.
+func (c *ClusterTx) GetOperationByUUID(uuid string) (Operation, error) {
null := Operation{}
operations, err := c.operations("uuid=?", uuid)
if err != nil {
diff --git a/lxd/db/operations_test.go b/lxd/db/operations_test.go
index a2071b37d4..7931b39b96 100644
--- a/lxd/db/operations_test.go
+++ b/lxd/db/operations_test.go
@@ -24,7 +24,7 @@ func TestOperation(t *testing.T) {
assert.Len(t, operations, 1)
assert.Equal(t, operations[0].UUID, "abcd")
- operation, err := tx.OperationByUUID("abcd")
+ operation, err := tx.GetOperationByUUID("abcd")
require.NoError(t, err)
assert.Equal(t, id, operation.ID)
assert.Equal(t, db.OperationContainerCreate, operation.Type)
@@ -36,7 +36,7 @@ func TestOperation(t *testing.T) {
err = tx.OperationRemove("abcd")
require.NoError(t, err)
- _, err = tx.OperationByUUID("abcd")
+ _, err = tx.GetOperationByUUID("abcd")
assert.Equal(t, db.ErrNoSuchObject, err)
}
@@ -54,7 +54,7 @@ func TestOperationNoProject(t *testing.T) {
assert.Len(t, operations, 1)
assert.Equal(t, operations[0].UUID, "abcd")
- operation, err := tx.OperationByUUID("abcd")
+ operation, err := tx.GetOperationByUUID("abcd")
require.NoError(t, err)
assert.Equal(t, id, operation.ID)
assert.Equal(t, db.OperationContainerCreate, operation.Type)
@@ -66,6 +66,6 @@ func TestOperationNoProject(t *testing.T) {
err = tx.OperationRemove("abcd")
require.NoError(t, err)
- _, err = tx.OperationByUUID("abcd")
+ _, err = tx.GetOperationByUUID("abcd")
assert.Equal(t, db.ErrNoSuchObject, err)
}
diff --git a/lxd/operations.go b/lxd/operations.go
index 71db5aa988..7434be4be3 100644
--- a/lxd/operations.go
+++ b/lxd/operations.go
@@ -64,7 +64,7 @@ func operationGet(d *Daemon, r *http.Request) response.Response {
// Then check if the query is from an operation on another node, and, if so, forward it
var address string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- operation, err := tx.OperationByUUID(id)
+ operation, err := tx.GetOperationByUUID(id)
if err != nil {
return err
}
@@ -113,7 +113,7 @@ func operationDelete(d *Daemon, r *http.Request) response.Response {
// Then check if the query is from an operation on another node, and, if so, forward it
var address string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- operation, err := tx.OperationByUUID(id)
+ operation, err := tx.GetOperationByUUID(id)
if err != nil {
return err
}
@@ -343,7 +343,7 @@ func operationWaitGet(d *Daemon, r *http.Request) response.Response {
// Then check if the query is from an operation on another node, and, if so, forward it
var address string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- operation, err := tx.OperationByUUID(id)
+ operation, err := tx.GetOperationByUUID(id)
if err != nil {
return err
}
@@ -424,7 +424,7 @@ func operationWebsocketGet(d *Daemon, r *http.Request) response.Response {
var address string
err = d.cluster.Transaction(func(tx *db.ClusterTx) error {
- operation, err := tx.OperationByUUID(id)
+ operation, err := tx.GetOperationByUUID(id)
if err != nil {
return err
}
From c8d98310d64ef75f4d25642bc11df478e2870193 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:53:53 +0100
Subject: [PATCH 26/41] lxd/db: Rename OperationAdd to CreateOperation
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/cluster/membership.go | 2 +-
lxd/db/operations.go | 4 ++--
lxd/db/operations_test.go | 4 ++--
lxd/operations/linux.go | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lxd/cluster/membership.go b/lxd/cluster/membership.go
index d48203fbcf..788d7ac3f6 100644
--- a/lxd/cluster/membership.go
+++ b/lxd/cluster/membership.go
@@ -433,7 +433,7 @@ func Join(state *state.State, gateway *Gateway, cert *shared.CertInfo, name stri
// Migrate outstanding operations.
for _, operation := range operations {
- _, err := tx.OperationAdd("", operation.UUID, operation.Type)
+ _, err := tx.CreateOperation("", operation.UUID, operation.Type)
if err != nil {
return errors.Wrapf(err, "failed to migrate operation %s", operation.UUID)
}
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index 68b149f6a1..726b9c5923 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -59,8 +59,8 @@ func (c *ClusterTx) GetOperationByUUID(uuid string) (Operation, error) {
}
}
-// OperationAdd adds a new operations to the table.
-func (c *ClusterTx) OperationAdd(project, uuid string, typ OperationType) (int64, error) {
+// CreateOperation adds a new operations to the table.
+func (c *ClusterTx) CreateOperation(project, uuid string, typ OperationType) (int64, error) {
var projectID interface{}
if project != "" {
diff --git a/lxd/db/operations_test.go b/lxd/db/operations_test.go
index 7931b39b96..e190024065 100644
--- a/lxd/db/operations_test.go
+++ b/lxd/db/operations_test.go
@@ -15,7 +15,7 @@ func TestOperation(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.OperationAdd("default", "abcd", db.OperationContainerCreate)
+ id, err := tx.CreateOperation("default", "abcd", db.OperationContainerCreate)
require.NoError(t, err)
assert.Equal(t, int64(1), id)
@@ -45,7 +45,7 @@ func TestOperationNoProject(t *testing.T) {
tx, cleanup := db.NewTestClusterTx(t)
defer cleanup()
- id, err := tx.OperationAdd("", "abcd", db.OperationContainerCreate)
+ id, err := tx.CreateOperation("", "abcd", db.OperationContainerCreate)
require.NoError(t, err)
assert.Equal(t, int64(1), id)
diff --git a/lxd/operations/linux.go b/lxd/operations/linux.go
index 99ba7835a3..598fefa34f 100644
--- a/lxd/operations/linux.go
+++ b/lxd/operations/linux.go
@@ -14,7 +14,7 @@ func registerDBOperation(op *Operation, opType db.OperationType) error {
}
err := op.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- _, err := tx.OperationAdd(op.project, op.id, opType)
+ _, err := tx.CreateOperation(op.project, op.id, opType)
return err
})
if err != nil {
From 8d5c6ed10eb352231418cb3b3c2f034ea42ff767 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:54:36 +0100
Subject: [PATCH 27/41] lxd/db: Rename OperationRemove to RemoveOperation
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/operations.go | 4 ++--
lxd/db/operations_test.go | 4 ++--
lxd/operations/linux.go | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index 726b9c5923..3bb157e215 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -78,8 +78,8 @@ func (c *ClusterTx) CreateOperation(project, uuid string, typ OperationType) (in
return query.UpsertObject(c.tx, "operations", columns, values)
}
-// OperationRemove removes the operation with the given UUID.
-func (c *ClusterTx) OperationRemove(uuid string) error {
+// RemoveOperation removes the operation with the given UUID.
+func (c *ClusterTx) RemoveOperation(uuid string) error {
result, err := c.tx.Exec("DELETE FROM operations WHERE uuid=?", uuid)
if err != nil {
return err
diff --git a/lxd/db/operations_test.go b/lxd/db/operations_test.go
index e190024065..ecbdbf5c4b 100644
--- a/lxd/db/operations_test.go
+++ b/lxd/db/operations_test.go
@@ -33,7 +33,7 @@ func TestOperation(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{"abcd"}, uuids)
- err = tx.OperationRemove("abcd")
+ err = tx.RemoveOperation("abcd")
require.NoError(t, err)
_, err = tx.GetOperationByUUID("abcd")
@@ -63,7 +63,7 @@ func TestOperationNoProject(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{"abcd"}, uuids)
- err = tx.OperationRemove("abcd")
+ err = tx.RemoveOperation("abcd")
require.NoError(t, err)
_, err = tx.GetOperationByUUID("abcd")
diff --git a/lxd/operations/linux.go b/lxd/operations/linux.go
index 598fefa34f..5c74a33eea 100644
--- a/lxd/operations/linux.go
+++ b/lxd/operations/linux.go
@@ -30,7 +30,7 @@ func removeDBOperation(op *Operation) error {
}
err := op.state.Cluster.Transaction(func(tx *db.ClusterTx) error {
- return tx.OperationRemove(op.id)
+ return tx.RemoveOperation(op.id)
})
return err
From 7db180e427385627101ac49ff7ddf337f269685e Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 09:55:49 +0100
Subject: [PATCH 28/41] lxd/db: Rename OperationFlush to removeNodeOperations
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/db.go | 2 +-
lxd/db/operations.go | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/lxd/db/db.go b/lxd/db/db.go
index 9f3df99a85..01af99e127 100644
--- a/lxd/db/db.go
+++ b/lxd/db/db.go
@@ -283,7 +283,7 @@ func OpenCluster(name string, store driver.NodeStore, address, dir string, timeo
cluster.NodeID(nodeID)
// Delete any operation tied to this node
- err = tx.OperationFlush(nodeID)
+ err = tx.removeNodeOperations(nodeID)
if err != nil {
return err
}
diff --git a/lxd/db/operations.go b/lxd/db/operations.go
index 3bb157e215..da845b19a8 100644
--- a/lxd/db/operations.go
+++ b/lxd/db/operations.go
@@ -94,8 +94,8 @@ func (c *ClusterTx) RemoveOperation(uuid string) error {
return nil
}
-// OperationFlush removes all operations for the given node.
-func (c *ClusterTx) OperationFlush(nodeID int64) error {
+// Remove all operations for the given node.
+func (c *ClusterTx) removeNodeOperations(nodeID int64) error {
_, err := c.tx.Exec("DELETE FROM operations WHERE node_id=?", nodeID)
if err != nil {
return err
From 6f0d4b2b653ea44d001e0e421f6157c93cf5cbd7 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:00:08 +0100
Subject: [PATCH 29/41] lxd/db: Rename Patches to GetAppliedPatches
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/patches.go | 4 ++--
lxd/patches.go | 2 +-
lxd/storage.go | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/db/patches.go b/lxd/db/patches.go
index 4b5159566a..02996d303e 100644
--- a/lxd/db/patches.go
+++ b/lxd/db/patches.go
@@ -6,8 +6,8 @@ import (
"fmt"
)
-// Patches returns the names of all patches currently applied on this node.
-func (n *Node) Patches() ([]string, error) {
+// GetAppliedPatches returns the names of all patches currently applied on this node.
+func (n *Node) GetAppliedPatches() ([]string, error) {
inargs := []interface{}{}
outfmt := []interface{}{""}
diff --git a/lxd/patches.go b/lxd/patches.go
index e137109e10..e351b369c3 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -136,7 +136,7 @@ func patchesGetNames() []string {
// patchesApplyPostDaemonStorage applies the patches that need to run after the daemon storage is initialised.
func patchesApply(d *Daemon, stage patchStage) error {
- appliedPatches, err := d.db.Patches()
+ appliedPatches, err := d.db.GetAppliedPatches()
if err != nil {
return err
}
diff --git a/lxd/storage.go b/lxd/storage.go
index b95b9a7ca1..8ec8f512d3 100644
--- a/lxd/storage.go
+++ b/lxd/storage.go
@@ -82,7 +82,7 @@ func setupStorageDriver(s *state.State, forceCheck bool) error {
// but the upgrade somehow got messed up then there will be no
// "storage_api" entry in the db.
if len(pools) > 0 && !forceCheck {
- appliedPatches, err := s.Node.Patches()
+ appliedPatches, err := s.Node.GetAppliedPatches()
if err != nil {
return err
}
From 21c49d181f661e14ba261f63e7b385b3b034d8fb Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:01:12 +0100
Subject: [PATCH 30/41] lxd/db: Rename PatchesMarkApplied to MarkPatchAsApplied
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/daemon.go | 2 +-
lxd/db/patches.go | 4 ++--
lxd/patches.go | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/daemon.go b/lxd/daemon.go
index ce607be86f..977179e5a6 100644
--- a/lxd/daemon.go
+++ b/lxd/daemon.go
@@ -1419,7 +1419,7 @@ func initializeDbObject(d *Daemon) (*db.Dump, error) {
// create the default profile and mark all patches as applied.
freshHook := func(db *db.Node) error {
for _, patchName := range patchesGetNames() {
- err := db.PatchesMarkApplied(patchName)
+ err := db.MarkPatchAsApplied(patchName)
if err != nil {
return err
}
diff --git a/lxd/db/patches.go b/lxd/db/patches.go
index 02996d303e..f4539067c3 100644
--- a/lxd/db/patches.go
+++ b/lxd/db/patches.go
@@ -25,8 +25,8 @@ func (n *Node) GetAppliedPatches() ([]string, error) {
return response, nil
}
-// PatchesMarkApplied marks the patch with the given name as applied on this node.
-func (n *Node) PatchesMarkApplied(patch string) error {
+// MarkPatchAsApplied marks the patch with the given name as applied on this node.
+func (n *Node) MarkPatchAsApplied(patch string) error {
stmt := `INSERT INTO patches (name, applied_at) VALUES (?, strftime("%s"));`
_, err := n.db.Exec(stmt, patch)
return err
diff --git a/lxd/patches.go b/lxd/patches.go
index e351b369c3..e2d34cca55 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -113,7 +113,7 @@ func (p *patch) apply(d *Daemon) error {
return errors.Wrapf(err, "Failed applying patch %q", p.name)
}
- err = d.db.PatchesMarkApplied(p.name)
+ err = d.db.MarkPatchAsApplied(p.name)
if err != nil {
return errors.Wrapf(err, "Failed marking patch applied %q", p.name)
}
From b63c4564e7963c8144424631c3d7533072a27971 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:03:56 +0100
Subject: [PATCH 31/41] lxd/db: Rename Profiles to GetProfileNames
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/migration_test.go | 2 +-
lxd/db/profiles.go | 4 ++--
lxd/instance.go | 2 +-
lxd/instance/drivers/driver_lxc.go | 2 +-
lxd/instance/drivers/driver_qemu.go | 2 +-
lxd/instances_post.go | 2 +-
lxd/patches.go | 4 ++--
lxd/storage_pools_utils.go | 2 +-
lxd/storage_volumes_utils.go | 4 ++--
9 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/lxd/db/migration_test.go b/lxd/db/migration_test.go
index 4008ad7818..a9f3d7daad 100644
--- a/lxd/db/migration_test.go
+++ b/lxd/db/migration_test.go
@@ -132,7 +132,7 @@ func TestImportPreClusteringData(t *testing.T) {
require.NoError(t, err)
// profiles
- profiles, err := cluster.Profiles("default")
+ profiles, err := cluster.GetProfileNames("default")
require.NoError(t, err)
assert.Equal(t, []string{"default", "users"}, profiles)
_, profile, err := cluster.ProfileGet("default", "default")
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index 99083b511f..f368021c26 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -81,8 +81,8 @@ type ProfileFilter struct {
Name string
}
-// Profiles returns a string list of profiles.
-func (c *Cluster) Profiles(project string) ([]string, error) {
+// GetProfileNames returns the names of all profiles in the given project.
+func (c *Cluster) GetProfileNames(project string) ([]string, error) {
err := c.Transaction(func(tx *ClusterTx) error {
enabled, err := tx.ProjectHasProfiles(project)
if err != nil {
diff --git a/lxd/instance.go b/lxd/instance.go
index 360c5ba5c9..e34ed671cd 100644
--- a/lxd/instance.go
+++ b/lxd/instance.go
@@ -492,7 +492,7 @@ func instanceCreateInternal(s *state.State, args db.InstanceArgs) (instance.Inst
}
// Validate profiles.
- profiles, err := s.Cluster.Profiles(args.Project)
+ profiles, err := s.Cluster.GetProfileNames(args.Project)
if err != nil {
return nil, err
}
diff --git a/lxd/instance/drivers/driver_lxc.go b/lxd/instance/drivers/driver_lxc.go
index b2484aea43..d3ccf45387 100644
--- a/lxd/instance/drivers/driver_lxc.go
+++ b/lxd/instance/drivers/driver_lxc.go
@@ -3793,7 +3793,7 @@ func (c *lxc) Update(args db.InstanceArgs, userRequested bool) error {
}
// Validate the new profiles
- profiles, err := c.state.Cluster.Profiles(args.Project)
+ profiles, err := c.state.Cluster.GetProfileNames(args.Project)
if err != nil {
return errors.Wrap(err, "Failed to get profiles")
}
diff --git a/lxd/instance/drivers/driver_qemu.go b/lxd/instance/drivers/driver_qemu.go
index a6e6203f92..2c768041ad 100644
--- a/lxd/instance/drivers/driver_qemu.go
+++ b/lxd/instance/drivers/driver_qemu.go
@@ -2404,7 +2404,7 @@ func (vm *qemu) Update(args db.InstanceArgs, userRequested bool) error {
}
// Validate the new profiles.
- profiles, err := vm.state.Cluster.Profiles(args.Project)
+ profiles, err := vm.state.Cluster.GetProfileNames(args.Project)
if err != nil {
return errors.Wrap(err, "Failed to get profiles")
}
diff --git a/lxd/instances_post.go b/lxd/instances_post.go
index 3a29a1ae5f..26c37101de 100644
--- a/lxd/instances_post.go
+++ b/lxd/instances_post.go
@@ -194,7 +194,7 @@ func createFromMigration(d *Daemon, project string, req *api.InstancesPost) resp
}
// Early profile validation.
- profiles, err := d.cluster.Profiles(project)
+ profiles, err := d.cluster.GetProfileNames(project)
if err != nil {
return response.InternalError(err)
}
diff --git a/lxd/patches.go b/lxd/patches.go
index e2d34cca55..f4f7e107d4 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -274,7 +274,7 @@ func patchLeftoverProfileConfig(name string, d *Daemon) error {
}
func patchInvalidProfileNames(name string, d *Daemon) error {
- profiles, err := d.cluster.Profiles("default")
+ profiles, err := d.cluster.GetProfileNames("default")
if err != nil {
return err
}
@@ -1906,7 +1906,7 @@ func updatePoolPropertyForAllObjects(d *Daemon, poolName string, allcontainers [
// appropriate device including a pool is added to the default profile
// or the user explicitly passes the pool the container's storage volume
// is supposed to be created on.
- profiles, err := d.cluster.Profiles("default")
+ profiles, err := d.cluster.GetProfileNames("default")
if err == nil {
for _, pName := range profiles {
pID, p, err := d.cluster.ProfileGet("default", pName)
diff --git a/lxd/storage_pools_utils.go b/lxd/storage_pools_utils.go
index a069b8b200..4b6d1358f4 100644
--- a/lxd/storage_pools_utils.go
+++ b/lxd/storage_pools_utils.go
@@ -85,7 +85,7 @@ func storagePoolUsedByGet(state *state.State, project string, poolID int64, pool
func profilesUsingPoolGetNames(db *db.Cluster, project string, poolName string) ([]string, error) {
usedBy := []string{}
- profiles, err := db.Profiles(project)
+ profiles, err := db.GetProfileNames(project)
if err != nil {
return usedBy, err
}
diff --git a/lxd/storage_volumes_utils.go b/lxd/storage_volumes_utils.go
index 3de665d985..33b3c69242 100644
--- a/lxd/storage_volumes_utils.go
+++ b/lxd/storage_volumes_utils.go
@@ -132,7 +132,7 @@ func storagePoolVolumeUpdateUsers(d *Daemon, projectName string, oldPoolName str
}
// update all profiles
- profiles, err := s.Cluster.Profiles(project.Default)
+ profiles, err := s.Cluster.GetProfileNames(project.Default)
if err != nil {
return err
}
@@ -261,7 +261,7 @@ func storagePoolVolumeUsedByGet(s *state.State, project, poolName string, volume
func profilesUsingPoolVolumeGetNames(db *db.Cluster, volumeName string, volumeType string) ([]string, error) {
usedBy := []string{}
- profiles, err := db.Profiles(project.Default)
+ profiles, err := db.GetProfileNames(project.Default)
if err != nil {
return usedBy, err
}
From f4dc4e7db1db58b20b6ef8ddfc5e8fc660375f67 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:07:08 +0100
Subject: [PATCH 32/41] lxd/db: Rename ProfileGet to GetProfile
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/images.go | 2 +-
lxd/db/migration_test.go | 4 ++--
lxd/db/profiles.go | 4 ++--
lxd/images.go | 2 +-
lxd/instance/instance_utils.go | 2 +-
lxd/instances_post.go | 4 ++--
lxd/main_test.go | 2 +-
lxd/patches.go | 2 +-
lxd/profiles_utils.go | 2 +-
lxd/storage_pools_utils.go | 2 +-
lxd/storage_volumes_utils.go | 4 ++--
11 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/lxd/db/images.go b/lxd/db/images.go
index d5019f06e9..033725ffe7 100644
--- a/lxd/db/images.go
+++ b/lxd/db/images.go
@@ -970,7 +970,7 @@ func (c *Cluster) CreateImage(project, fp string, fname string, sz int64, public
return fmt.Errorf("Invalid image type: %v", typeName)
}
- defaultProfileID, _, err := c.ProfileGet(profileProject, "default")
+ defaultProfileID, _, err := c.GetProfile(profileProject, "default")
if err != nil {
return err
}
diff --git a/lxd/db/migration_test.go b/lxd/db/migration_test.go
index a9f3d7daad..b6bb7294aa 100644
--- a/lxd/db/migration_test.go
+++ b/lxd/db/migration_test.go
@@ -135,7 +135,7 @@ func TestImportPreClusteringData(t *testing.T) {
profiles, err := cluster.GetProfileNames("default")
require.NoError(t, err)
assert.Equal(t, []string{"default", "users"}, profiles)
- _, profile, err := cluster.ProfileGet("default", "default")
+ _, profile, err := cluster.GetProfile("default", "default")
require.NoError(t, err)
assert.Equal(t, map[string]string{}, profile.Config)
assert.Equal(t,
@@ -149,7 +149,7 @@ func TestImportPreClusteringData(t *testing.T) {
"nictype": "bridged",
"parent": "lxdbr0"}},
profile.Devices)
- _, profile, err = cluster.ProfileGet("default", "users")
+ _, profile, err = cluster.GetProfile("default", "users")
require.NoError(t, err)
assert.Equal(t,
map[string]string{
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index f368021c26..92303198bb 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -119,8 +119,8 @@ WHERE projects.name = ?
return response, nil
}
-// ProfileGet returns the profile with the given name.
-func (c *Cluster) ProfileGet(project, name string) (int64, *api.Profile, error) {
+// GetProfile returns the profile with the given name.
+func (c *Cluster) GetProfile(project, name string) (int64, *api.Profile, error) {
var result *api.Profile
var id int64
diff --git a/lxd/images.go b/lxd/images.go
index f222dcfcf8..58fadb7b16 100644
--- a/lxd/images.go
+++ b/lxd/images.go
@@ -1671,7 +1671,7 @@ func imagePut(d *Daemon, r *http.Request) response.Response {
}
profileIds := make([]int64, len(req.Profiles))
for i, profile := range req.Profiles {
- profileID, _, err := d.cluster.ProfileGet(project, profile)
+ profileID, _, err := d.cluster.GetProfile(project, profile)
if err == db.ErrNoSuchObject {
return response.BadRequest(fmt.Errorf("Profile '%s' doesn't exist", profile))
} else if err != nil {
diff --git a/lxd/instance/instance_utils.go b/lxd/instance/instance_utils.go
index 3aa47937df..fcb76deed1 100644
--- a/lxd/instance/instance_utils.go
+++ b/lxd/instance/instance_utils.go
@@ -485,7 +485,7 @@ func LoadAllInternal(s *state.State, dbInstances []db.Instance) ([]Instance, err
// Get the profile data
for project, projectProfiles := range profiles {
for name := range projectProfiles {
- _, profile, err := s.Cluster.ProfileGet(project, name)
+ _, profile, err := s.Cluster.GetProfile(project, name)
if err != nil {
return nil, err
}
diff --git a/lxd/instances_post.go b/lxd/instances_post.go
index 26c37101de..34a61cd55c 100644
--- a/lxd/instances_post.go
+++ b/lxd/instances_post.go
@@ -621,7 +621,7 @@ func createFromBackup(d *Daemon, project string, data io.Reader, pool string) re
}
// Otherwise try and restore to the project's default profile pool.
- _, profile, err := d.State().Cluster.ProfileGet(bInfo.Project, "default")
+ _, profile, err := d.State().Cluster.GetProfile(bInfo.Project, "default")
if err != nil {
return response.InternalError(errors.Wrap(err, "Failed to get default profile"))
}
@@ -916,7 +916,7 @@ func containerFindStoragePool(d *Daemon, project string, req *api.InstancesPost)
// If we don't have a valid pool yet, look through profiles
if storagePool == "" {
for _, pName := range req.Profiles {
- _, p, err := d.cluster.ProfileGet(project, pName)
+ _, p, err := d.cluster.GetProfile(project, pName)
if err != nil {
return "", "", "", nil, response.SmartError(err)
}
diff --git a/lxd/main_test.go b/lxd/main_test.go
index b4a3ecd820..104f57d7e7 100644
--- a/lxd/main_test.go
+++ b/lxd/main_test.go
@@ -82,7 +82,7 @@ func (suite *lxdTestSuite) SetupTest() {
devicesMap := deviceConfig.Devices{}
devicesMap["root"] = rootDev
- defaultID, _, err := suite.d.cluster.ProfileGet("default", "default")
+ defaultID, _, err := suite.d.cluster.GetProfile("default", "default")
if err != nil {
suite.T().Errorf("failed to get default profile: %v", err)
}
diff --git a/lxd/patches.go b/lxd/patches.go
index f4f7e107d4..7292891568 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -1909,7 +1909,7 @@ func updatePoolPropertyForAllObjects(d *Daemon, poolName string, allcontainers [
profiles, err := d.cluster.GetProfileNames("default")
if err == nil {
for _, pName := range profiles {
- pID, p, err := d.cluster.ProfileGet("default", pName)
+ pID, p, err := d.cluster.GetProfile("default", pName)
if err != nil {
logger.Errorf("Could not query database: %s", err)
return err
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index 9d658ff504..411d3e2ed1 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -56,7 +56,7 @@ func doProfileUpdate(d *Daemon, project, name string, id int64, profile *api.Pro
// Check what profile the device comes from
profiles := container.Profiles
for i := len(profiles) - 1; i >= 0; i-- {
- _, profile, err := d.cluster.ProfileGet(projecthelpers.Default, profiles[i])
+ _, profile, err := d.cluster.GetProfile(projecthelpers.Default, profiles[i])
if err != nil {
return err
}
diff --git a/lxd/storage_pools_utils.go b/lxd/storage_pools_utils.go
index 4b6d1358f4..4a14d1855e 100644
--- a/lxd/storage_pools_utils.go
+++ b/lxd/storage_pools_utils.go
@@ -91,7 +91,7 @@ func profilesUsingPoolGetNames(db *db.Cluster, project string, poolName string)
}
for _, pName := range profiles {
- _, profile, err := db.ProfileGet(project, pName)
+ _, profile, err := db.GetProfile(project, pName)
if err != nil {
return usedBy, err
}
diff --git a/lxd/storage_volumes_utils.go b/lxd/storage_volumes_utils.go
index 33b3c69242..7a014e13af 100644
--- a/lxd/storage_volumes_utils.go
+++ b/lxd/storage_volumes_utils.go
@@ -138,7 +138,7 @@ func storagePoolVolumeUpdateUsers(d *Daemon, projectName string, oldPoolName str
}
for _, pName := range profiles {
- id, profile, err := s.Cluster.ProfileGet(project.Default, pName)
+ id, profile, err := s.Cluster.GetProfile(project.Default, pName)
if err != nil {
return err
}
@@ -267,7 +267,7 @@ func profilesUsingPoolVolumeGetNames(db *db.Cluster, volumeName string, volumeTy
}
for _, pName := range profiles {
- _, profile, err := db.ProfileGet(project.Default, pName)
+ _, profile, err := db.GetProfile(project.Default, pName)
if err != nil {
return usedBy, err
}
From 4854eace41f9ad3a598ec6cb04b2b65f2c749b49 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:20:18 +0100
Subject: [PATCH 33/41] lxd/db: Rename ProfilesGet to GetProfiles
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/profiles.go | 4 ++--
lxd/instance/drivers/driver_common.go | 4 ++--
lxd/instance/drivers/driver_lxc.go | 4 ++--
lxd/profiles_utils.go | 2 +-
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index 92303198bb..27a1247308 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -150,8 +150,8 @@ func (c *Cluster) GetProfile(project, name string) (int64, *api.Profile, error)
return id, result, nil
}
-// ProfilesGet returns the profiles with the given names in the given project.
-func (c *Cluster) ProfilesGet(project string, names []string) ([]api.Profile, error) {
+// GetProfiles returns the profiles with the given names in the given project.
+func (c *Cluster) GetProfiles(project string, names []string) ([]api.Profile, error) {
profiles := make([]api.Profile, len(names))
err := c.Transaction(func(tx *ClusterTx) error {
diff --git a/lxd/instance/drivers/driver_common.go b/lxd/instance/drivers/driver_common.go
index 10d70c9dc1..cc856e2c41 100644
--- a/lxd/instance/drivers/driver_common.go
+++ b/lxd/instance/drivers/driver_common.go
@@ -48,7 +48,7 @@ func (c *common) LocalDevices() deviceConfig.Devices {
func (c *common) expandConfig(profiles []api.Profile) error {
if profiles == nil && len(c.profiles) > 0 {
var err error
- profiles, err = c.state.Cluster.ProfilesGet(c.project, c.profiles)
+ profiles, err = c.state.Cluster.GetProfiles(c.project, c.profiles)
if err != nil {
return err
}
@@ -62,7 +62,7 @@ func (c *common) expandConfig(profiles []api.Profile) error {
func (c *common) expandDevices(profiles []api.Profile) error {
if profiles == nil && len(c.profiles) > 0 {
var err error
- profiles, err = c.state.Cluster.ProfilesGet(c.project, c.profiles)
+ profiles, err = c.state.Cluster.GetProfiles(c.project, c.profiles)
if err != nil {
return err
}
diff --git a/lxd/instance/drivers/driver_lxc.go b/lxd/instance/drivers/driver_lxc.go
index d3ccf45387..72f46a0d4d 100644
--- a/lxd/instance/drivers/driver_lxc.go
+++ b/lxd/instance/drivers/driver_lxc.go
@@ -1860,7 +1860,7 @@ func (c *lxc) DeviceEventHandler(runConf *deviceConfig.RunConfig) error {
func (c *lxc) expandConfig(profiles []api.Profile) error {
if profiles == nil && len(c.profiles) > 0 {
var err error
- profiles, err = c.state.Cluster.ProfilesGet(c.project, c.profiles)
+ profiles, err = c.state.Cluster.GetProfiles(c.project, c.profiles)
if err != nil {
return err
}
@@ -1874,7 +1874,7 @@ func (c *lxc) expandConfig(profiles []api.Profile) error {
func (c *lxc) expandDevices(profiles []api.Profile) error {
if profiles == nil && len(c.profiles) > 0 {
var err error
- profiles, err = c.state.Cluster.ProfilesGet(c.project, c.profiles)
+ profiles, err = c.state.Cluster.GetProfiles(c.project, c.profiles)
if err != nil {
return err
}
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index 411d3e2ed1..d20ba141e7 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -204,7 +204,7 @@ func doProfileUpdateContainer(d *Daemon, name string, old api.ProfilePut, nodeNa
return nil
}
- profiles, err := d.cluster.ProfilesGet(args.Project, args.Profiles)
+ profiles, err := d.cluster.GetProfiles(args.Project, args.Profiles)
if err != nil {
return err
}
From c21e0e60d1f858e2879f6950ffe3d711beea280f Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:21:36 +0100
Subject: [PATCH 34/41] lxd/db: Drop ProfileConfig
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/db_internal_test.go | 24 ---------------
lxd/db/profiles.go | 60 --------------------------------------
2 files changed, 84 deletions(-)
diff --git a/lxd/db/db_internal_test.go b/lxd/db/db_internal_test.go
index 94b698b107..dca559b6be 100644
--- a/lxd/db/db_internal_test.go
+++ b/lxd/db/db_internal_test.go
@@ -4,7 +4,6 @@ package db
import (
"database/sql"
- "fmt"
"testing"
"time"
@@ -267,26 +266,3 @@ func (s *dbTestSuite) Test_ImageSourceGetCachedFingerprint_no_match() {
_, err = s.db.ImageSourceGetCachedFingerprint("server.remote", "lxd", "test", "container", 0)
s.Equal(err, ErrNoSuchObject)
}
-
-func (s *dbTestSuite) Test_dbProfileConfig() {
- var err error
- var result map[string]string
- var expected map[string]string
-
- tx, commit := s.CreateTestTx()
-
- _, err = tx.Exec("INSERT INTO profiles_config (profile_id, key, value) VALUES (2, 'something', 'something else');")
- s.Nil(err)
-
- commit()
-
- result, err = s.db.ProfileConfig("default", "theprofile")
- s.Nil(err)
-
- expected = map[string]string{"thekey": "thevalue", "something": "something else"}
-
- for key, value := range expected {
- s.Equal(result[key], value,
- fmt.Sprintf("Mismatching value for key %s: %s != %s", key, result[key], value))
- }
-}
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index 27a1247308..e7b5ece8ee 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -180,66 +180,6 @@ func (c *Cluster) GetProfiles(project string, names []string) ([]api.Profile, er
return profiles, nil
}
-// ProfileConfig gets the profile configuration map from the DB.
-func (c *Cluster) ProfileConfig(project, name string) (map[string]string, error) {
- err := c.Transaction(func(tx *ClusterTx) error {
- enabled, err := tx.ProjectHasProfiles(project)
- if err != nil {
- return errors.Wrap(err, "Check if project has profiles")
- }
- if !enabled {
- project = "default"
- }
- return nil
- })
- if err != nil {
- return nil, err
- }
-
- var key, value string
- query := `
- SELECT
- key, value
- FROM profiles_config
- JOIN profiles ON profiles_config.profile_id=profiles.id
- JOIN projects ON projects.id = profiles.project_id
- WHERE projects.name=? AND profiles.name=?`
- inargs := []interface{}{project, name}
- outfmt := []interface{}{key, value}
- results, err := queryScan(c.db, query, inargs, outfmt)
- if err != nil {
- return nil, errors.Wrapf(err, "Failed to get profile '%s'", name)
- }
-
- if len(results) == 0 {
- /*
- * If we didn't get any rows here, let's check to make sure the
- * profile really exists; if it doesn't, let's send back a 404.
- */
- query := "SELECT id FROM profiles WHERE name=?"
- var id int
- results, err := queryScan(c.db, query, []interface{}{name}, []interface{}{id})
- if err != nil {
- return nil, err
- }
-
- if len(results) == 0 {
- return nil, ErrNoSuchObject
- }
- }
-
- config := map[string]string{}
-
- for _, r := range results {
- key = r[0].(string)
- value = r[1].(string)
-
- config[key] = value
- }
-
- return config, nil
-}
-
// ProfileDescriptionUpdate updates the description of the profile with the given ID.
func ProfileDescriptionUpdate(tx *sql.Tx, id int64, description string) error {
_, err := tx.Exec("UPDATE profiles SET description=? WHERE id=?", description, id)
From 9a756f59a02dc2baa7237b2c58c5d75a36994b83 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:22:29 +0100
Subject: [PATCH 35/41] lxd/db: Rename ProfileDescriptionUpdate to
UpdateProfileDescription
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/profiles.go | 4 ++--
lxd/profiles_utils.go | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index e7b5ece8ee..47f1830da6 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -180,8 +180,8 @@ func (c *Cluster) GetProfiles(project string, names []string) ([]api.Profile, er
return profiles, nil
}
-// ProfileDescriptionUpdate updates the description of the profile with the given ID.
-func ProfileDescriptionUpdate(tx *sql.Tx, id int64, description string) error {
+// UpdateProfileDescription updates the description of the profile with the given ID.
+func UpdateProfileDescription(tx *sql.Tx, id int64, description string) error {
_, err := tx.Exec("UPDATE profiles SET description=? WHERE id=?", description, id)
return err
}
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index d20ba141e7..c315934e35 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -85,7 +85,7 @@ func doProfileUpdate(d *Daemon, project, name string, id int64, profile *api.Pro
}
if profile.Description != req.Description {
- err = db.ProfileDescriptionUpdate(tx, id, req.Description)
+ err = db.UpdateProfileDescription(tx, id, req.Description)
if err != nil {
tx.Rollback()
return err
From 910c9239e929a122f71b367dd51d3bcf5493d16b Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:23:21 +0100
Subject: [PATCH 36/41] lxd/db: Rename ProfileConfigClear to ClearProfileConfig
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/profiles.go | 4 ++--
lxd/patches.go | 2 +-
lxd/profiles_utils.go | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index 47f1830da6..b4842a3747 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -186,8 +186,8 @@ func UpdateProfileDescription(tx *sql.Tx, id int64, description string) error {
return err
}
-// ProfileConfigClear resets the config of the profile with the given ID.
-func ProfileConfigClear(tx *sql.Tx, id int64) error {
+// ClearProfileConfig resets the config of the profile with the given ID.
+func ClearProfileConfig(tx *sql.Tx, id int64) error {
_, err := tx.Exec("DELETE FROM profiles_config WHERE profile_id=?", id)
if err != nil {
return err
diff --git a/lxd/patches.go b/lxd/patches.go
index 7292891568..0ac9385df2 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -1955,7 +1955,7 @@ func updatePoolPropertyForAllObjects(d *Daemon, poolName string, allcontainers [
return err
}
- err = db.ProfileConfigClear(tx, pID)
+ err = db.ClearProfileConfig(tx, pID)
if err != nil {
logger.Errorf("Failed to clear old profile configuration for profile %s: %s", pName, err)
tx.Rollback()
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index c315934e35..aa438e9e56 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -102,7 +102,7 @@ func doProfileUpdate(d *Daemon, project, name string, id int64, profile *api.Pro
return nil
}
- err = db.ProfileConfigClear(tx, id)
+ err = db.ClearProfileConfig(tx, id)
if err != nil {
tx.Rollback()
return err
From d1d86f71844ae9f20267c8e11c96265e6bbf5396 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:24:08 +0100
Subject: [PATCH 37/41] lxd/db: Rename ProfileConfigAdd to CreateProfileConfig
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/profiles.go | 4 ++--
lxd/patches.go | 2 +-
lxd/profiles_utils.go | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index b4842a3747..70439afd9f 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -208,8 +208,8 @@ func ClearProfileConfig(tx *sql.Tx, id int64) error {
return nil
}
-// ProfileConfigAdd adds a config to the profile with the given ID.
-func ProfileConfigAdd(tx *sql.Tx, id int64, config map[string]string) error {
+// CreateProfileConfig adds a config to the profile with the given ID.
+func CreateProfileConfig(tx *sql.Tx, id int64, config map[string]string) error {
str := fmt.Sprintf("INSERT INTO profiles_config (profile_id, key, value) VALUES(?, ?, ?)")
stmt, err := tx.Prepare(str)
defer stmt.Close()
diff --git a/lxd/patches.go b/lxd/patches.go
index 0ac9385df2..984d39b352 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -1962,7 +1962,7 @@ func updatePoolPropertyForAllObjects(d *Daemon, poolName string, allcontainers [
continue
}
- err = db.ProfileConfigAdd(tx, pID, p.Config)
+ err = db.CreateProfileConfig(tx, pID, p.Config)
if err != nil {
logger.Errorf("Failed to add new profile configuration: %s: %s", pName, err)
tx.Rollback()
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index aa438e9e56..0feab387ff 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -108,7 +108,7 @@ func doProfileUpdate(d *Daemon, project, name string, id int64, profile *api.Pro
return err
}
- err = db.ProfileConfigAdd(tx, id, req.Config)
+ err = db.CreateProfileConfig(tx, id, req.Config)
if err != nil {
tx.Rollback()
return err
From 4383c42541847b9dcba19f049fd5e20803a0ca86 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:25:05 +0100
Subject: [PATCH 38/41] lxd/db: Rename ProfileContainersGet to
GetInstancesWithProfile
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/profiles.go | 6 +++---
lxd/profiles_utils.go | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index 70439afd9f..1c8753a816 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -231,9 +231,9 @@ func CreateProfileConfig(tx *sql.Tx, id int64, config map[string]string) error {
return nil
}
-// ProfileContainersGet gets the names of the containers associated with the
-// profile with the given name.
-func (c *Cluster) ProfileContainersGet(project, profile string) (map[string][]string, error) {
+// GetInstancesWithProfile gets the names of the instance associated with the
+// profile with the given name in the given project.
+func (c *Cluster) GetInstancesWithProfile(project, profile string) (map[string][]string, error) {
err := c.Transaction(func(tx *ClusterTx) error {
enabled, err := tx.ProjectHasProfiles(project)
if err != nil {
diff --git a/lxd/profiles_utils.go b/lxd/profiles_utils.go
index 0feab387ff..a81caee7da 100644
--- a/lxd/profiles_utils.go
+++ b/lxd/profiles_utils.go
@@ -243,7 +243,7 @@ func doProfileUpdateContainer(d *Daemon, name string, old api.ProfilePut, nodeNa
func getProfileContainersInfo(cluster *db.Cluster, project, profile string) ([]db.InstanceArgs, error) {
// Query the db for information about containers associated with the
// given profile.
- names, err := cluster.ProfileContainersGet(project, profile)
+ names, err := cluster.GetInstancesWithProfile(project, profile)
if err != nil {
return nil, errors.Wrapf(err, "Failed to query instances with profile '%s'", profile)
}
From 1b8f894b141c2a29b9658bad0075db5bd50f64a6 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:25:55 +0100
Subject: [PATCH 39/41] lxd/db: Rename ProfileCleanupLeftover to
RemoveUnreferencedProfiles
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/profiles.go | 4 ++--
lxd/patches.go | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index 1c8753a816..d5114a220f 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -278,8 +278,8 @@ func (c *Cluster) GetInstancesWithProfile(project, profile string) (map[string][
return results, nil
}
-// ProfileCleanupLeftover removes unreferenced profiles.
-func (c *Cluster) ProfileCleanupLeftover() error {
+// RemoveUnreferencedProfiles removes unreferenced profiles.
+func (c *Cluster) RemoveUnreferencedProfiles() error {
stmt := `
DELETE FROM profiles_config WHERE profile_id NOT IN (SELECT id FROM profiles);
DELETE FROM profiles_devices WHERE profile_id NOT IN (SELECT id FROM profiles);
diff --git a/lxd/patches.go b/lxd/patches.go
index 984d39b352..9c565b9f5a 100644
--- a/lxd/patches.go
+++ b/lxd/patches.go
@@ -270,7 +270,7 @@ func patchRenameCustomVolumeLVs(name string, d *Daemon) error {
}
func patchLeftoverProfileConfig(name string, d *Daemon) error {
- return d.cluster.ProfileCleanupLeftover()
+ return d.cluster.RemoveUnreferencedProfiles()
}
func patchInvalidProfileNames(name string, d *Daemon) error {
From 22dbdc7b2136b15edd3c4bd85d9cd3684a0660c1 Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:28:06 +0100
Subject: [PATCH 40/41] lxd/db: Rename ProfilesExpandConfig to
ExpandInstanceConfig
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/containers.go | 2 +-
lxd/db/profiles.go | 4 ++--
lxd/instance/drivers/driver_common.go | 2 +-
lxd/instance/drivers/driver_lxc.go | 2 +-
lxd/project/permissions.go | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lxd/db/containers.go b/lxd/db/containers.go
index ad038c6d7b..aa8404680c 100644
--- a/lxd/db/containers.go
+++ b/lxd/db/containers.go
@@ -383,7 +383,7 @@ func (c *ClusterTx) instanceListExpanded() ([]Instance, error) {
profiles[j] = *ProfileToAPI(&profile)
}
- instances[i].Config = ProfilesExpandConfig(instance.Config, profiles)
+ instances[i].Config = ExpandInstanceConfig(instance.Config, profiles)
instances[i].Devices = ProfilesExpandDevices(deviceConfig.NewDevices(instance.Devices), profiles).CloneNative()
}
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index d5114a220f..d686f2ade1 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -293,9 +293,9 @@ DELETE FROM profiles_devices_config WHERE profile_device_id NOT IN (SELECT id FR
return nil
}
-// ProfilesExpandConfig expands the given container config with the config
+// ExpandInstanceConfig expands the given instance config with the config
// values of the given profiles.
-func ProfilesExpandConfig(config map[string]string, profiles []api.Profile) map[string]string {
+func ExpandInstanceConfig(config map[string]string, profiles []api.Profile) map[string]string {
expandedConfig := map[string]string{}
// Apply all the profiles
diff --git a/lxd/instance/drivers/driver_common.go b/lxd/instance/drivers/driver_common.go
index cc856e2c41..d399fa2a71 100644
--- a/lxd/instance/drivers/driver_common.go
+++ b/lxd/instance/drivers/driver_common.go
@@ -54,7 +54,7 @@ func (c *common) expandConfig(profiles []api.Profile) error {
}
}
- c.expandedConfig = db.ProfilesExpandConfig(c.localConfig, profiles)
+ c.expandedConfig = db.ExpandInstanceConfig(c.localConfig, profiles)
return nil
}
diff --git a/lxd/instance/drivers/driver_lxc.go b/lxd/instance/drivers/driver_lxc.go
index 72f46a0d4d..dc9dd34a72 100644
--- a/lxd/instance/drivers/driver_lxc.go
+++ b/lxd/instance/drivers/driver_lxc.go
@@ -1866,7 +1866,7 @@ func (c *lxc) expandConfig(profiles []api.Profile) error {
}
}
- c.expandedConfig = db.ProfilesExpandConfig(c.localConfig, profiles)
+ c.expandedConfig = db.ExpandInstanceConfig(c.localConfig, profiles)
return nil
}
diff --git a/lxd/project/permissions.go b/lxd/project/permissions.go
index 9ad6e868a2..348e4e7700 100644
--- a/lxd/project/permissions.go
+++ b/lxd/project/permissions.go
@@ -747,7 +747,7 @@ func expandInstancesConfigAndDevices(instances []db.Instance, profiles []db.Prof
}
expandedInstances[i] = instance
- expandedInstances[i].Config = db.ProfilesExpandConfig(instance.Config, profiles)
+ expandedInstances[i].Config = db.ExpandInstanceConfig(instance.Config, profiles)
expandedInstances[i].Devices = db.ProfilesExpandDevices(
deviceconfig.NewDevices(instance.Devices), profiles).CloneNative()
}
From f9407fb591af30a49b86ee90d2beacd4723534ec Mon Sep 17 00:00:00 2001
From: Free Ekanayaka <free.ekanayaka at canonical.com>
Date: Tue, 5 May 2020 10:29:32 +0100
Subject: [PATCH 41/41] lxd/db: Rename ProfilesExpandDevices to
ExpandInstanceDevices
Signed-off-by: Free Ekanayaka <free.ekanayaka at canonical.com>
---
lxd/db/containers.go | 2 +-
lxd/db/profiles.go | 4 ++--
lxd/instance/drivers/driver_common.go | 2 +-
lxd/instance/drivers/driver_lxc.go | 2 +-
lxd/project/permissions.go | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lxd/db/containers.go b/lxd/db/containers.go
index aa8404680c..6a5d22a412 100644
--- a/lxd/db/containers.go
+++ b/lxd/db/containers.go
@@ -384,7 +384,7 @@ func (c *ClusterTx) instanceListExpanded() ([]Instance, error) {
}
instances[i].Config = ExpandInstanceConfig(instance.Config, profiles)
- instances[i].Devices = ProfilesExpandDevices(deviceConfig.NewDevices(instance.Devices), profiles).CloneNative()
+ instances[i].Devices = ExpandInstanceDevices(deviceConfig.NewDevices(instance.Devices), profiles).CloneNative()
}
return instances, nil
diff --git a/lxd/db/profiles.go b/lxd/db/profiles.go
index d686f2ade1..246b856fee 100644
--- a/lxd/db/profiles.go
+++ b/lxd/db/profiles.go
@@ -318,9 +318,9 @@ func ExpandInstanceConfig(config map[string]string, profiles []api.Profile) map[
return expandedConfig
}
-// ProfilesExpandDevices expands the given container devices with the devices
+// ExpandInstanceDevices expands the given instance devices with the devices
// defined in the given profiles.
-func ProfilesExpandDevices(devices deviceConfig.Devices, profiles []api.Profile) deviceConfig.Devices {
+func ExpandInstanceDevices(devices deviceConfig.Devices, profiles []api.Profile) deviceConfig.Devices {
expandedDevices := deviceConfig.Devices{}
// Apply all the profiles
diff --git a/lxd/instance/drivers/driver_common.go b/lxd/instance/drivers/driver_common.go
index d399fa2a71..cceb455fc9 100644
--- a/lxd/instance/drivers/driver_common.go
+++ b/lxd/instance/drivers/driver_common.go
@@ -68,7 +68,7 @@ func (c *common) expandDevices(profiles []api.Profile) error {
}
}
- c.expandedDevices = db.ProfilesExpandDevices(c.localDevices, profiles)
+ c.expandedDevices = db.ExpandInstanceDevices(c.localDevices, profiles)
return nil
}
diff --git a/lxd/instance/drivers/driver_lxc.go b/lxd/instance/drivers/driver_lxc.go
index dc9dd34a72..47828c0c06 100644
--- a/lxd/instance/drivers/driver_lxc.go
+++ b/lxd/instance/drivers/driver_lxc.go
@@ -1880,7 +1880,7 @@ func (c *lxc) expandDevices(profiles []api.Profile) error {
}
}
- c.expandedDevices = db.ProfilesExpandDevices(c.localDevices, profiles)
+ c.expandedDevices = db.ExpandInstanceDevices(c.localDevices, profiles)
return nil
}
diff --git a/lxd/project/permissions.go b/lxd/project/permissions.go
index 348e4e7700..c1a250252e 100644
--- a/lxd/project/permissions.go
+++ b/lxd/project/permissions.go
@@ -748,7 +748,7 @@ func expandInstancesConfigAndDevices(instances []db.Instance, profiles []db.Prof
expandedInstances[i] = instance
expandedInstances[i].Config = db.ExpandInstanceConfig(instance.Config, profiles)
- expandedInstances[i].Devices = db.ProfilesExpandDevices(
+ expandedInstances[i].Devices = db.ExpandInstanceDevices(
deviceconfig.NewDevices(instance.Devices), profiles).CloneNative()
}
More information about the lxc-devel
mailing list