The following pull request was submitted through Github. It can be accessed and reviewed at: https://github.com/lxc/lxd/pull/6209
This e-mail was sent by the LXC bot, direct replies will not reach the author unless they happen to be subscribed to this list. === Description (from pull-request) === And changes import alias to instanceDBTypes. This is to accommodate the Instance interface being added to the lxd/instance package without creating import loops. Signed-off-by: Thomas Parrott <t...@tomp.uk>
From 49ba8f46f4e050806c488fb5facd3c4d1ee48397 Mon Sep 17 00:00:00 2001 From: Thomas Parrott <t...@tomp.uk> Date: Mon, 16 Sep 2019 09:58:51 +0100 Subject: [PATCH] lxd: Renames instance package to types and changes import alias to instanceDBTypes This is to accommodate the Instance interface being added to the lxd/instance package without creating import loops. Signed-off-by: Thomas Parrott <t...@tomp.uk> --- lxd/api_internal.go | 6 ++-- lxd/cluster/connect.go | 4 +-- lxd/container.go | 10 +++--- lxd/container_lxc.go | 6 ++-- lxd/container_post.go | 4 +-- lxd/container_test.go | 32 +++++++++---------- lxd/containers_get.go | 16 +++++----- lxd/containers_post.go | 12 +++---- lxd/db/containers.go | 32 +++++++++---------- lxd/db/containers_test.go | 20 ++++++------ lxd/db/images.go | 14 ++++---- lxd/db/instances.mapper.go | 4 +-- lxd/db/snapshots_test.go | 6 ++-- lxd/device/device_instance_id.go | 4 +-- lxd/device/disk.go | 4 +-- lxd/device/gpu.go | 4 +-- lxd/device/infiniband_physical.go | 4 +-- lxd/device/infiniband_sriov.go | 4 +-- lxd/device/nic_bridged.go | 4 +-- lxd/device/nic_ipvlan.go | 4 +-- lxd/device/nic_macvlan.go | 4 +-- lxd/device/nic_p2p.go | 4 +-- lxd/device/nic_physical.go | 4 +-- lxd/device/nic_sriov.go | 4 +-- lxd/device/proxy.go | 4 +-- lxd/device/unix_common.go | 4 +-- lxd/device/usb.go | 4 +-- lxd/images.go | 10 +++--- .../{instance.go => types/instance_types.go} | 0 lxd/logging.go | 4 +-- lxd/main_activateifneeded.go | 4 +-- lxd/response.go | 4 +-- lxd/storage_lvm_utils.go | 4 +-- lxd/storage_migration.go | 4 +-- 34 files changed, 126 insertions(+), 126 deletions(-) rename lxd/instance/{instance.go => types/instance_types.go} (100%) diff --git a/lxd/api_internal.go b/lxd/api_internal.go index 06b05f3f35..ad74e0d05a 100644 --- a/lxd/api_internal.go +++ b/lxd/api_internal.go @@ -22,7 +22,7 @@ import ( "github.com/lxc/lxd/lxd/db/node" "github.com/lxc/lxd/lxd/db/query" deviceConfig "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/project" driver "github.com/lxc/lxd/lxd/storage" "github.com/lxc/lxd/shared" @@ -906,7 +906,7 @@ func internalImport(d *Daemon, r *http.Request) Response { BaseImage: baseImage, Config: backup.Container.Config, CreationDate: backup.Container.CreatedAt, - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Description: backup.Container.Description, Devices: deviceConfig.NewDevices(backup.Container.Devices), Ephemeral: backup.Container.Ephemeral, @@ -1012,7 +1012,7 @@ func internalImport(d *Daemon, r *http.Request) Response { BaseImage: baseImage, Config: snap.Config, CreationDate: snap.CreatedAt, - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Snapshot: true, Devices: deviceConfig.NewDevices(snap.Devices), Ephemeral: snap.Ephemeral, diff --git a/lxd/cluster/connect.go b/lxd/cluster/connect.go index 6f26255894..0ac689e919 100644 --- a/lxd/cluster/connect.go +++ b/lxd/cluster/connect.go @@ -7,7 +7,7 @@ import ( lxd "github.com/lxc/lxd/client" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" "github.com/pkg/errors" @@ -38,7 +38,7 @@ func Connect(address string, cert *shared.CertInfo, notify bool) (lxd.InstanceSe // running the container with the given name. If it's not the local node will // connect to it and return the connected client, otherwise it will just return // nil. -func ConnectIfContainerIsRemote(cluster *db.Cluster, project, name string, cert *shared.CertInfo, instanceType instance.Type) (lxd.InstanceServer, error) { +func ConnectIfContainerIsRemote(cluster *db.Cluster, project, name string, cert *shared.CertInfo, instanceType instanceDBTypes.Type) (lxd.InstanceServer, error) { var address string // Node address err := cluster.Transaction(func(tx *db.ClusterTx) error { var err error diff --git a/lxd/container.go b/lxd/container.go index dc97c5686c..f34ba574a3 100644 --- a/lxd/container.go +++ b/lxd/container.go @@ -20,7 +20,7 @@ import ( "github.com/lxc/lxd/lxd/db" "github.com/lxc/lxd/lxd/device" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/state" "github.com/lxc/lxd/lxd/sys" "github.com/lxc/lxd/lxd/task" @@ -293,7 +293,7 @@ type container interface { Location() string Project() string Name() string - Type() instance.Type + Type() instanceDBTypes.Type Description() string Architecture() int CreationDate() time.Time @@ -452,7 +452,7 @@ func containerCreateFromImage(d *Daemon, args db.ContainerArgs, hash string, tra } // Validate the type of the image matches the type of the instance. - imgType, err := instance.New(img.Type) + imgType, err := instanceDBTypes.New(img.Type) if err != nil { return nil, err } @@ -1094,7 +1094,7 @@ func containerLoadByProject(s *state.State, project string) ([]container, error) err := s.Cluster.Transaction(func(tx *db.ClusterTx) error { filter := db.InstanceFilter{ Project: project, - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, } var err error cts, err = tx.InstanceList(filter) @@ -1162,7 +1162,7 @@ func containerLoadNodeAll(s *state.State) ([]container, error) { } // Load all containers of this nodes under the given project. -func containerLoadNodeProjectAll(s *state.State, project string, instanceType instance.Type) ([]container, error) { +func containerLoadNodeProjectAll(s *state.State, project string, instanceType instanceDBTypes.Type) ([]container, error) { // Get all the container arguments var cts []db.Instance err := s.Cluster.Transaction(func(tx *db.ClusterTx) error { diff --git a/lxd/container_lxc.go b/lxd/container_lxc.go index 140b735cd6..083d6f8427 100644 --- a/lxd/container_lxc.go +++ b/lxd/container_lxc.go @@ -30,7 +30,7 @@ import ( "github.com/lxc/lxd/lxd/db/query" "github.com/lxc/lxd/lxd/device" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/maas" "github.com/lxc/lxd/lxd/project" "github.com/lxc/lxd/lxd/state" @@ -595,7 +595,7 @@ func containerLXCInstantiate(s *state.State, args db.ContainerArgs) *containerLX type containerLXC struct { // Properties architecture int - dbType instance.Type + dbType instanceDBTypes.Type snapshot bool creationDate time.Time lastUsedDate time.Time @@ -633,7 +633,7 @@ type containerLXC struct { expiryDate time.Time } -func (c *containerLXC) Type() instance.Type { +func (c *containerLXC) Type() instanceDBTypes.Type { return c.dbType } diff --git a/lxd/container_post.go b/lxd/container_post.go index e428b0d098..8492a6d495 100644 --- a/lxd/container_post.go +++ b/lxd/container_post.go @@ -14,7 +14,7 @@ import ( lxd "github.com/lxc/lxd/client" "github.com/lxc/lxd/lxd/cluster" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" driver "github.com/lxc/lxd/lxd/storage" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" @@ -400,7 +400,7 @@ func containerPostClusteringMigrate(d *Daemon, c container, oldName, newName, ne } // Special case migrating a container backed by ceph across two cluster nodes. -func containerPostClusteringMigrateWithCeph(d *Daemon, c container, project, oldName, newName, newNode string, instanceType instance.Type) Response { +func containerPostClusteringMigrateWithCeph(d *Daemon, c container, project, oldName, newName, newNode string, instanceType instanceDBTypes.Type) Response { run := func(*operation) error { // If source node is online (i.e. we're serving the request on // it, and c != nil), let's unmap the RBD volume locally diff --git a/lxd/container_test.go b/lxd/container_test.go index 878b88b24c..b79445f616 100644 --- a/lxd/container_test.go +++ b/lxd/container_test.go @@ -8,7 +8,7 @@ import ( "github.com/lxc/lxd/lxd/db" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" driver "github.com/lxc/lxd/lxd/storage" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" @@ -21,7 +21,7 @@ type containerTestSuite struct { func (suite *containerTestSuite) TestContainer_ProfilesDefault() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Name: "testFoo", } @@ -63,7 +63,7 @@ func (suite *containerTestSuite) TestContainer_ProfilesMulti() { }() args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Profiles: []string{"default", "unprivileged"}, Name: "testFoo", @@ -86,7 +86,7 @@ func (suite *containerTestSuite) TestContainer_ProfilesMulti() { func (suite *containerTestSuite) TestContainer_ProfilesOverwriteDefaultNic() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Config: map[string]string{"security.privileged": "true"}, Devices: config.Devices{ @@ -116,7 +116,7 @@ func (suite *containerTestSuite) TestContainer_ProfilesOverwriteDefaultNic() { func (suite *containerTestSuite) TestContainer_LoadFromDB() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Config: map[string]string{"security.privileged": "true"}, Devices: config.Devices{ @@ -154,7 +154,7 @@ func (suite *containerTestSuite) TestContainer_LoadFromDB() { func (suite *containerTestSuite) TestContainer_Path_Regular() { // Regular args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Name: "testFoo", } @@ -170,7 +170,7 @@ func (suite *containerTestSuite) TestContainer_Path_Regular() { func (suite *containerTestSuite) TestContainer_LogPath() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Name: "testFoo", } @@ -184,7 +184,7 @@ func (suite *containerTestSuite) TestContainer_LogPath() { func (suite *containerTestSuite) TestContainer_IsPrivileged_Privileged() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Config: map[string]string{"security.privileged": "true"}, Name: "testFoo", @@ -199,7 +199,7 @@ func (suite *containerTestSuite) TestContainer_IsPrivileged_Privileged() { func (suite *containerTestSuite) TestContainer_IsPrivileged_Unprivileged() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Config: map[string]string{"security.privileged": "false"}, Name: "testFoo", @@ -214,7 +214,7 @@ func (suite *containerTestSuite) TestContainer_IsPrivileged_Unprivileged() { func (suite *containerTestSuite) TestContainer_Rename() { args := db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Ephemeral: false, Name: "testFoo", } @@ -229,7 +229,7 @@ func (suite *containerTestSuite) TestContainer_Rename() { func (suite *containerTestSuite) TestContainer_findIdmap_isolated() { c1, err := containerCreateInternal(suite.d.State(), db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Name: "isol-1", Config: map[string]string{ "security.idmap.isolated": "true", @@ -239,7 +239,7 @@ func (suite *containerTestSuite) TestContainer_findIdmap_isolated() { defer c1.Delete() c2, err := containerCreateInternal(suite.d.State(), db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Name: "isol-2", Config: map[string]string{ "security.idmap.isolated": "true", @@ -270,7 +270,7 @@ func (suite *containerTestSuite) TestContainer_findIdmap_isolated() { func (suite *containerTestSuite) TestContainer_findIdmap_mixed() { c1, err := containerCreateInternal(suite.d.State(), db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Name: "isol-1", Config: map[string]string{ "security.idmap.isolated": "false", @@ -280,7 +280,7 @@ func (suite *containerTestSuite) TestContainer_findIdmap_mixed() { defer c1.Delete() c2, err := containerCreateInternal(suite.d.State(), db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Name: "isol-2", Config: map[string]string{ "security.idmap.isolated": "true", @@ -311,7 +311,7 @@ func (suite *containerTestSuite) TestContainer_findIdmap_mixed() { func (suite *containerTestSuite) TestContainer_findIdmap_raw() { c1, err := containerCreateInternal(suite.d.State(), db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Name: "isol-1", Config: map[string]string{ "security.idmap.isolated": "false", @@ -350,7 +350,7 @@ func (suite *containerTestSuite) TestContainer_findIdmap_maxed() { for i := 0; i < 7; i++ { c, err := containerCreateInternal(suite.d.State(), db.ContainerArgs{ - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Name: fmt.Sprintf("isol-%d", i), Config: map[string]string{ "security.idmap.isolated": "true", diff --git a/lxd/containers_get.go b/lxd/containers_get.go index 8d42f15da3..de41dd1478 100644 --- a/lxd/containers_get.go +++ b/lxd/containers_get.go @@ -15,7 +15,7 @@ import ( "github.com/lxc/lxd/lxd/cluster" "github.com/lxc/lxd/lxd/db" "github.com/lxc/lxd/lxd/db/query" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" "github.com/lxc/lxd/shared/logger" @@ -24,19 +24,19 @@ import ( // urlInstanceTypeDetect detects what sort of instance type filter is being requested. Either // explicitly via the instance-type query param or implicitly via the endpoint URL used. -func urlInstanceTypeDetect(r *http.Request) (instance.Type, error) { +func urlInstanceTypeDetect(r *http.Request) (instanceDBTypes.Type, error) { reqInstanceType := r.URL.Query().Get("instance-type") if strings.HasPrefix(mux.CurrentRoute(r).GetName(), "container") { - return instance.TypeContainer, nil + return instanceDBTypes.TypeContainer, nil } else if reqInstanceType != "" { - instanceType, err := instance.New(reqInstanceType) + instanceType, err := instanceDBTypes.New(reqInstanceType) if err != nil { - return instance.TypeAny, err + return instanceDBTypes.TypeAny, err } return instanceType, nil } - return instance.TypeAny, nil + return instanceDBTypes.TypeAny, nil } func containersGet(d *Daemon, r *http.Request) Response { @@ -292,7 +292,7 @@ func doContainersGet(d *Daemon, r *http.Request) (interface{}, error) { // Fetch information about the containers on the given remote node, using the // rest API and with a timeout of 30 seconds. -func doContainersGetFromNode(project, node string, cert *shared.CertInfo, instanceType instance.Type) ([]api.Instance, error) { +func doContainersGetFromNode(project, node string, cert *shared.CertInfo, instanceType instanceDBTypes.Type) ([]api.Instance, error) { f := func() ([]api.Instance, error) { client, err := cluster.Connect(node, cert, true) if err != nil { @@ -329,7 +329,7 @@ func doContainersGetFromNode(project, node string, cert *shared.CertInfo, instan return containers, err } -func doContainersFullGetFromNode(project, node string, cert *shared.CertInfo, instanceType instance.Type) ([]api.InstanceFull, error) { +func doContainersFullGetFromNode(project, node string, cert *shared.CertInfo, instanceType instanceDBTypes.Type) ([]api.InstanceFull, error) { f := func() ([]api.InstanceFull, error) { client, err := cluster.Connect(node, cert, true) if err != nil { diff --git a/lxd/containers_post.go b/lxd/containers_post.go index 753db8b259..7ba41721e3 100644 --- a/lxd/containers_post.go +++ b/lxd/containers_post.go @@ -20,7 +20,7 @@ import ( "github.com/lxc/lxd/lxd/cluster" "github.com/lxc/lxd/lxd/db" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/migration" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" @@ -93,7 +93,7 @@ func createFromImage(d *Daemon, project string, req *api.InstancesPost) Response return BadRequest(fmt.Errorf("Must specify one of alias, fingerprint or properties for init from image")) } - dbType, err := instance.New(string(req.Type)) + dbType, err := instanceDBTypes.New(string(req.Type)) if err != nil { return BadRequest(err) } @@ -155,7 +155,7 @@ func createFromImage(d *Daemon, project string, req *api.InstancesPost) Response } func createFromNone(d *Daemon, project string, req *api.InstancesPost) Response { - dbType, err := instance.New(string(req.Type)) + dbType, err := instanceDBTypes.New(string(req.Type)) if err != nil { return BadRequest(err) } @@ -214,7 +214,7 @@ func createFromMigration(d *Daemon, project string, req *api.InstancesPost) Resp req.Profiles = []string{"default"} } - dbType, err := instance.New(string(req.Type)) + dbType, err := instanceDBTypes.New(string(req.Type)) if err != nil { return BadRequest(err) } @@ -567,12 +567,12 @@ func createFromCopy(d *Daemon, project string, req *api.InstancesPost) Response } } - dbType, err := instance.New(string(req.Type)) + dbType, err := instanceDBTypes.New(string(req.Type)) if err != nil { return BadRequest(err) } - if dbType != instance.TypeAny && dbType != source.Type() { + if dbType != instanceDBTypes.TypeAny && dbType != source.Type() { return BadRequest(fmt.Errorf("Instance type should not be specified or should match source type")) } diff --git a/lxd/db/containers.go b/lxd/db/containers.go index 9bda7f6e3f..de77da3fc3 100644 --- a/lxd/db/containers.go +++ b/lxd/db/containers.go @@ -10,7 +10,7 @@ import ( "github.com/lxc/lxd/lxd/db/query" "github.com/lxc/lxd/lxd/device/config" deviceConfig "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" "github.com/lxc/lxd/shared/logger" @@ -70,7 +70,7 @@ type Instance struct { Project string `db:"primary=yes&join=projects.name"` Name string `db:"primary=yes"` Node string `db:"join=nodes.name"` - Type instance.Type + Type instanceDBTypes.Type Snapshot bool Architecture int Ephemeral bool @@ -89,7 +89,7 @@ type InstanceFilter struct { Project string Name string Node string - Type instance.Type + Type instanceDBTypes.Type } // ContainerToArgs is a convenience to convert the new Container db struct into @@ -127,7 +127,7 @@ type ContainerArgs struct { // Don't set manually ID int Node string - Type instance.Type + Type instanceDBTypes.Type Snapshot bool // Creation only @@ -168,14 +168,14 @@ SELECT instances.name FROM instances JOIN projects ON projects.id = instances.project_id WHERE projects.name = ? AND instances.type = ? ` - return query.SelectStrings(c.tx, stmt, project, instance.TypeContainer) + return query.SelectStrings(c.tx, stmt, project, instanceDBTypes.TypeContainer) } // ContainerNodeAddress returns the address of the node hosting the container // with the given name in the given project. // // It returns the empty string if the container is hosted on this node. -func (c *ClusterTx) ContainerNodeAddress(project string, name string, instanceType instance.Type) (string, error) { +func (c *ClusterTx) ContainerNodeAddress(project string, name string, instanceType instanceDBTypes.Type) (string, error) { var stmt string args := make([]interface{}, 0, 4) // Expect up to 4 filters. @@ -186,7 +186,7 @@ func (c *ClusterTx) ContainerNodeAddress(project string, name string, instanceTy args = append(args, project) // Instance type filter. - if instanceType != instance.TypeAny { + if instanceType != instanceDBTypes.TypeAny { filters.WriteString(" AND instances.type = ?") args = append(args, instanceType) } @@ -264,7 +264,7 @@ SELECT nodes.id, nodes.address // string, to distinguish it from remote nodes. // // Containers whose node is down are addeded to the special address "0.0.0.0". -func (c *ClusterTx) ContainersListByNodeAddress(project string, instanceType instance.Type) (map[string][]string, error) { +func (c *ClusterTx) ContainersListByNodeAddress(project string, instanceType instanceDBTypes.Type) (map[string][]string, error) { offlineThreshold, err := c.NodeOfflineThreshold() if err != nil { return nil, err @@ -278,7 +278,7 @@ func (c *ClusterTx) ContainersListByNodeAddress(project string, instanceType ins args = append(args, project) // Instance type filter. - if instanceType != instance.TypeAny { + if instanceType != instanceDBTypes.TypeAny { filters.WriteString(" AND instances.type = ?") args = append(args, instanceType) } @@ -364,7 +364,7 @@ func (c *ClusterTx) ContainerListExpanded() ([]Instance, error) { // ContainersByNodeName returns a map associating each container to the name of // its node. -func (c *ClusterTx) ContainersByNodeName(project string, instanceType instance.Type) (map[string]string, error) { +func (c *ClusterTx) ContainersByNodeName(project string, instanceType instanceDBTypes.Type) (map[string]string, error) { args := make([]interface{}, 0, 2) // Expect up to 2 filters. var filters strings.Builder @@ -373,7 +373,7 @@ func (c *ClusterTx) ContainersByNodeName(project string, instanceType instance.T args = append(args, project) // Instance type filter. - if instanceType != instance.TypeAny { + if instanceType != instanceDBTypes.TypeAny { filters.WriteString(" AND instances.type = ?") args = append(args, instanceType) } @@ -532,14 +532,14 @@ func (c *ClusterTx) ContainerNodeList() ([]Instance, error) { } filter := InstanceFilter{ Node: node, - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, } return c.InstanceList(filter) } // ContainerNodeProjectList returns all container objects on the local node within the given project. -func (c *ClusterTx) ContainerNodeProjectList(project string, instanceType instance.Type) ([]Instance, error) { +func (c *ClusterTx) ContainerNodeProjectList(project string, instanceType instanceDBTypes.Type) ([]Instance, error) { node, err := c.NodeName() if err != nil { return nil, errors.Wrap(err, "Local node name") @@ -839,7 +839,7 @@ func (c *Cluster) ContainerConfig(id int) (map[string]string, error) { // use it for new code. func (c *Cluster) LegacyContainersList() ([]string, error) { q := fmt.Sprintf("SELECT name FROM instances WHERE type=? ORDER BY name") - inargs := []interface{}{instance.TypeContainer} + inargs := []interface{}{instanceDBTypes.TypeContainer} var container string outfmt := []interface{}{container} result, err := queryScan(c.db, q, inargs, outfmt) @@ -866,7 +866,7 @@ FROM instances_snapshots JOIN instances ON instances.id = instances_snapshots.instance_id WHERE type=? ORDER BY instances.name, instances_snapshots.name `) - inargs := []interface{}{instance.TypeContainer} + inargs := []interface{}{instanceDBTypes.TypeContainer} var container string var snapshot string outfmt := []interface{}{container, snapshot} @@ -885,7 +885,7 @@ WHERE type=? ORDER BY instances.name, instances_snapshots.name // ContainersNodeList returns the names of all the containers of the given type // running on the local node. -func (c *Cluster) ContainersNodeList(instanceType instance.Type) ([]string, error) { +func (c *Cluster) ContainersNodeList(instanceType instanceDBTypes.Type) ([]string, error) { q := fmt.Sprintf("SELECT name FROM instances WHERE type=? AND node_id=? ORDER BY name") inargs := []interface{}{instanceType, c.nodeID} var container string diff --git a/lxd/db/containers_test.go b/lxd/db/containers_test.go index ef829b9e37..49baa05bf6 100644 --- a/lxd/db/containers_test.go +++ b/lxd/db/containers_test.go @@ -8,7 +8,7 @@ import ( "github.com/stretchr/testify/require" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared/api" ) @@ -32,7 +32,7 @@ func TestContainerList(t *testing.T) { addContainerDevice(t, tx, "c2", "eth0", "nic", nil) addContainerDevice(t, tx, "c3", "root", "disk", map[string]string{"x": "y"}) - filter := db.InstanceFilter{Type: instance.TypeContainer} + filter := db.InstanceFilter{Type: instanceDBTypes.TypeContainer} containers, err := tx.InstanceList(filter) require.NoError(t, err) assert.Len(t, containers, 3) @@ -74,7 +74,7 @@ func TestContainerList_FilterByNode(t *testing.T) { filter := db.InstanceFilter{ Project: "default", Node: "node2", - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, } containers, err := tx.InstanceList(filter) @@ -119,7 +119,7 @@ func TestInstanceList_ContainerWithSameNameInDifferentProjects(t *testing.T) { Project: "blah", Name: "c1", Node: "none", - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Architecture: 1, Ephemeral: false, Stateful: true, @@ -134,7 +134,7 @@ func TestInstanceList_ContainerWithSameNameInDifferentProjects(t *testing.T) { Project: "test", Name: "c1", Node: "none", - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Architecture: 1, Ephemeral: false, Stateful: true, @@ -173,7 +173,7 @@ func TestInstanceListExpanded(t *testing.T) { Project: "default", Name: "c1", Node: "none", - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Architecture: 1, Ephemeral: false, Stateful: true, @@ -313,7 +313,7 @@ func TestContainersListByNodeAddress(t *testing.T) { addContainer(t, tx, nodeID3, "c3") addContainer(t, tx, nodeID2, "c4") - result, err := tx.ContainersListByNodeAddress("default", instance.TypeContainer) + result, err := tx.ContainersListByNodeAddress("default", instanceDBTypes.TypeContainer) require.NoError(t, err) assert.Equal( t, @@ -337,7 +337,7 @@ func TestContainersByNodeName(t *testing.T) { addContainer(t, tx, nodeID2, "c1") addContainer(t, tx, nodeID1, "c2") - result, err := tx.ContainersByNodeName("default", instance.TypeContainer) + result, err := tx.ContainersByNodeName("default", instanceDBTypes.TypeContainer) require.NoError(t, err) assert.Equal( t, @@ -398,7 +398,7 @@ func TestContainersNodeList(t *testing.T) { }) require.NoError(t, err) - names, err := cluster.ContainersNodeList(instance.TypeContainer) + names, err := cluster.ContainersNodeList(instanceTypess.TypeContainer) require.NoError(t, err) assert.Equal(t, names, []string{"c1"}) } @@ -450,7 +450,7 @@ func addContainer(t *testing.T, tx *db.ClusterTx, nodeID int64, name string) { stmt := ` INSERT INTO instances(node_id, name, architecture, type, project_id) VALUES (?, ?, 1, ?, 1) ` - _, err := tx.Tx().Exec(stmt, nodeID, name, instance.TypeContainer) + _, err := tx.Tx().Exec(stmt, nodeID, name, instanceDBTypes.TypeContainer) require.NoError(t, err) } diff --git a/lxd/db/images.go b/lxd/db/images.go index 294ec0a348..af5b911455 100644 --- a/lxd/db/images.go +++ b/lxd/db/images.go @@ -8,7 +8,7 @@ import ( "github.com/pkg/errors" "github.com/lxc/lxd/lxd/db/query" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared/api" "github.com/lxc/lxd/shared/osarch" ) @@ -157,10 +157,10 @@ func (c *Cluster) ImageSourceGet(imageID int) (int, api.ImageSource, error) { // cached image that matches the given remote details (server, protocol and // alias). Return the fingerprint linked to the matching entry, if any. func (c *Cluster) ImageSourceGetCachedFingerprint(server string, protocol string, alias string, typeName string) (string, error) { - imageType := instance.TypeAny + imageType := instanceDBTypes.TypeAny if typeName != "" { var err error - imageType, err = instance.New(typeName) + imageType, err = instanceDBTypes.New(typeName) if err != nil { return "", err } @@ -431,7 +431,7 @@ func (c *Cluster) imageFill(id int, image *api.Image, create, expire, used, uplo } image.Architecture, _ = osarch.ArchitectureName(arch) - image.Type = instance.Type(imageType).String() + image.Type = instanceDBTypes.Type(imageType).String() // The upload date is enforced by NOT NULL in the schema, so it can never be nil. image.UploadedAt = *upload @@ -647,7 +647,7 @@ func (c *Cluster) ImageAliasGet(project, name string, isTrustedClient bool) (int entry.Name = name entry.Target = fingerprint entry.Description = description - entry.Type = instance.Type(imageType).String() + entry.Type = instanceDBTypes.Type(imageType).String() return id, entry, nil } @@ -807,10 +807,10 @@ func (c *Cluster) ImageInsert(project, fp string, fname string, sz int64, public arch = 0 } - imageType := instance.TypeAny + imageType := instanceDBTypes.TypeAny if typeName != "" { var err error - imageType, err = instance.New(typeName) + imageType, err = instanceDBTypes.New(typeName) if err != nil { return err } diff --git a/lxd/db/instances.mapper.go b/lxd/db/instances.mapper.go index 74389ef9e7..8fb29c96c8 100644 --- a/lxd/db/instances.mapper.go +++ b/lxd/db/instances.mapper.go @@ -10,7 +10,7 @@ import ( "github.com/lxc/lxd/lxd/db/cluster" "github.com/lxc/lxd/lxd/db/query" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared/api" ) @@ -166,7 +166,7 @@ func (c *ClusterTx) InstanceList(filter InstanceFilter) ([]Instance, error) { if filter.Node != "" { criteria["Node"] = filter.Node } - if filter.Type != instance.TypeAny { + if filter.Type != instanceDBTypes.TypeAny { criteria["Type"] = filter.Type } diff --git a/lxd/db/snapshots_test.go b/lxd/db/snapshots_test.go index 0ef5121170..6c34db19cd 100644 --- a/lxd/db/snapshots_test.go +++ b/lxd/db/snapshots_test.go @@ -8,7 +8,7 @@ import ( "github.com/stretchr/testify/require" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared/api" ) @@ -97,7 +97,7 @@ func TestInstanceSnapshotList_SameNameInDifferentProjects(t *testing.T) { Project: "default", Name: "i1", Node: "none", - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Architecture: 1, Ephemeral: false, Stateful: true, @@ -110,7 +110,7 @@ func TestInstanceSnapshotList_SameNameInDifferentProjects(t *testing.T) { Project: "p1", Name: "i1", Node: "none", - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Architecture: 1, Ephemeral: false, Stateful: true, diff --git a/lxd/device/device_instance_id.go b/lxd/device/device_instance_id.go index c92bb6ae95..7f83824b1f 100644 --- a/lxd/device/device_instance_id.go +++ b/lxd/device/device_instance_id.go @@ -2,7 +2,7 @@ package device import ( "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" ) // InstanceIdentifier is an interface that allows us to identify an Instance and its properties. @@ -10,7 +10,7 @@ import ( // independent of when they're called in the instance lifecycle. type InstanceIdentifier interface { Name() string - Type() instance.Type + Type() instanceDBTypes.Type Project() string DevicesPath() string RootfsPath() string diff --git a/lxd/device/disk.go b/lxd/device/disk.go index a695d0a0c4..92c455cba0 100644 --- a/lxd/device/disk.go +++ b/lxd/device/disk.go @@ -14,7 +14,7 @@ import ( "github.com/lxc/lxd/lxd/db" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/util" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/logger" @@ -44,7 +44,7 @@ func (d *disk) isRequired() bool { // validateConfig checks the supplied config for correctness. func (d *disk) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/gpu.go b/lxd/device/gpu.go index fdcfa69846..2b8142ee8e 100644 --- a/lxd/device/gpu.go +++ b/lxd/device/gpu.go @@ -11,7 +11,7 @@ import ( "golang.org/x/sys/unix" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/resources" "github.com/lxc/lxd/shared" ) @@ -31,7 +31,7 @@ type gpu struct { // validateConfig checks the supplied config for correctness. func (d *gpu) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/infiniband_physical.go b/lxd/device/infiniband_physical.go index 9c181be6e8..0592a460b3 100644 --- a/lxd/device/infiniband_physical.go +++ b/lxd/device/infiniband_physical.go @@ -3,7 +3,7 @@ package device import ( "fmt" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/resources" "github.com/lxc/lxd/shared" ) @@ -14,7 +14,7 @@ type infinibandPhysical struct { // validateConfig checks the supplied config for correctness. func (d *infinibandPhysical) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/infiniband_sriov.go b/lxd/device/infiniband_sriov.go index 6d96b0c4aa..d531e64d58 100644 --- a/lxd/device/infiniband_sriov.go +++ b/lxd/device/infiniband_sriov.go @@ -3,7 +3,7 @@ package device import ( "fmt" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/resources" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" @@ -15,7 +15,7 @@ type infinibandSRIOV struct { // validateConfig checks the supplied config for correctness. func (d *infinibandSRIOV) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/nic_bridged.go b/lxd/device/nic_bridged.go index f1e834d263..6a3620516e 100644 --- a/lxd/device/nic_bridged.go +++ b/lxd/device/nic_bridged.go @@ -21,7 +21,7 @@ import ( "github.com/lxc/lxd/lxd/device/config" "github.com/lxc/lxd/lxd/dnsmasq" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/iptables" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/logger" @@ -47,7 +47,7 @@ type nicBridged struct { // validateConfig checks the supplied config for correctness. func (d *nicBridged) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/nic_ipvlan.go b/lxd/device/nic_ipvlan.go index 66b547c12b..74098696da 100644 --- a/lxd/device/nic_ipvlan.go +++ b/lxd/device/nic_ipvlan.go @@ -4,7 +4,7 @@ import ( "fmt" "strings" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -18,7 +18,7 @@ func (d *nicIPVLAN) CanHotPlug() (bool, []string) { // validateConfig checks the supplied config for correctness. func (d *nicIPVLAN) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/nic_macvlan.go b/lxd/device/nic_macvlan.go index 60f731f52e..9b890f3fd8 100644 --- a/lxd/device/nic_macvlan.go +++ b/lxd/device/nic_macvlan.go @@ -3,7 +3,7 @@ package device import ( "fmt" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -13,7 +13,7 @@ type nicMACVLAN struct { // validateConfig checks the supplied config for correctness. func (d *nicMACVLAN) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/nic_p2p.go b/lxd/device/nic_p2p.go index 35b7d7e815..8421e436af 100644 --- a/lxd/device/nic_p2p.go +++ b/lxd/device/nic_p2p.go @@ -4,7 +4,7 @@ import ( "fmt" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -14,7 +14,7 @@ type nicP2P struct { // validateConfig checks the supplied config for correctness. func (d *nicP2P) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/nic_physical.go b/lxd/device/nic_physical.go index 41e8ce4b90..fd4f67c66c 100644 --- a/lxd/device/nic_physical.go +++ b/lxd/device/nic_physical.go @@ -3,7 +3,7 @@ package device import ( "fmt" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -13,7 +13,7 @@ type nicPhysical struct { // validateConfig checks the supplied config for correctness. func (d *nicPhysical) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/nic_sriov.go b/lxd/device/nic_sriov.go index c63401acfa..213e451f0f 100644 --- a/lxd/device/nic_sriov.go +++ b/lxd/device/nic_sriov.go @@ -13,7 +13,7 @@ import ( "strings" "time" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -23,7 +23,7 @@ type nicSRIOV struct { // validateConfig checks the supplied config for correctness. func (d *nicSRIOV) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/proxy.go b/lxd/device/proxy.go index 2efd0f9b09..854fc5672c 100644 --- a/lxd/device/proxy.go +++ b/lxd/device/proxy.go @@ -15,7 +15,7 @@ import ( "golang.org/x/sys/unix" "gopkg.in/lxc/go-lxc.v2" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/iptables" "github.com/lxc/lxd/lxd/project" "github.com/lxc/lxd/shared" @@ -40,7 +40,7 @@ type proxyProcInfo struct { // validateConfig checks the supplied config for correctness. func (d *proxy) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/unix_common.go b/lxd/device/unix_common.go index 09ae89dcdf..16c9dbfdfc 100644 --- a/lxd/device/unix_common.go +++ b/lxd/device/unix_common.go @@ -6,7 +6,7 @@ import ( "strings" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -39,7 +39,7 @@ func (d *unixCommon) isRequired() bool { // validateConfig checks the supplied config for correctness. func (d *unixCommon) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/device/usb.go b/lxd/device/usb.go index 4a1ad538f5..fe906190b7 100644 --- a/lxd/device/usb.go +++ b/lxd/device/usb.go @@ -8,7 +8,7 @@ import ( "strings" "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/shared" ) @@ -43,7 +43,7 @@ func (d *usb) isRequired() bool { // validateConfig checks the supplied config for correctness. func (d *usb) validateConfig() error { - if d.instance.Type() != instance.TypeContainer { + if d.instance.Type() != instanceDBTypes.TypeContainer { return ErrUnsupportedDevType } diff --git a/lxd/images.go b/lxd/images.go index e15cefbfb6..8525e09f33 100644 --- a/lxd/images.go +++ b/lxd/images.go @@ -28,7 +28,7 @@ import ( lxd "github.com/lxc/lxd/client" "github.com/lxc/lxd/lxd/cluster" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/node" "github.com/lxc/lxd/lxd/state" "github.com/lxc/lxd/lxd/task" @@ -475,9 +475,9 @@ func getImgPostInfo(d *Daemon, r *http.Request, builddir string, project string, } if part.FormName() == "rootfs" { - info.Type = instance.TypeContainer.String() + info.Type = instanceDBTypes.TypeContainer.String() } else if part.FormName() == "rootfs.img" { - info.Type = instance.TypeVM.String() + info.Type = instanceDBTypes.TypeVM.String() } else { logger.Error("Invalid multipart image") return nil, fmt.Errorf("Invalid multipart image") @@ -865,12 +865,12 @@ func getImageMetadata(fname string) (*api.ImageMetadata, string, error) { if strings.HasPrefix(hdr.Name, "rootfs/") || strings.HasPrefix(hdr.Name, "./rootfs/") { hasRoot = true - imageType = instance.TypeContainer.String() + imageType = instanceDBTypes.TypeContainer.String() } if hdr.Name == "rootfs.img" || hdr.Name == "./rootfs.img" { hasRoot = true - imageType = instance.TypeVM.String() + imageType = instanceDBTypes.TypeVM.String() } if hasMeta && hasRoot { diff --git a/lxd/instance/instance.go b/lxd/instance/types/instance_types.go similarity index 100% rename from lxd/instance/instance.go rename to lxd/instance/types/instance_types.go diff --git a/lxd/logging.go b/lxd/logging.go index 162ad51a3d..c8ea74d407 100644 --- a/lxd/logging.go +++ b/lxd/logging.go @@ -7,7 +7,7 @@ import ( "time" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/state" "github.com/lxc/lxd/lxd/task" "github.com/lxc/lxd/shared" @@ -53,7 +53,7 @@ func expireLogs(ctx context.Context, state *state.State) error { var containers []string ch := make(chan struct{}) go func() { - containers, err = state.Cluster.ContainersNodeList(instance.TypeContainer) + containers, err = state.Cluster.ContainersNodeList(instanceDBTypes.TypeContainer) ch <- struct{}{} }() select { diff --git a/lxd/main_activateifneeded.go b/lxd/main_activateifneeded.go index 16196ef827..4220577e21 100644 --- a/lxd/main_activateifneeded.go +++ b/lxd/main_activateifneeded.go @@ -10,7 +10,7 @@ import ( lxd "github.com/lxc/lxd/client" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/node" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/idmap" @@ -112,7 +112,7 @@ func (c *cmdActivateifneeded) Run(cmd *cobra.Command, args []string) error { var containers []db.Instance err = d.cluster.Transaction(func(tx *db.ClusterTx) error { - filter := db.InstanceFilter{Type: instance.TypeContainer} + filter := db.InstanceFilter{Type: instanceDBTypes.TypeContainer} var err error containers, err = tx.InstanceList(filter) return err diff --git a/lxd/response.go b/lxd/response.go index 7bca1b4e17..deb24c7101 100644 --- a/lxd/response.go +++ b/lxd/response.go @@ -18,7 +18,7 @@ import ( lxd "github.com/lxc/lxd/client" "github.com/lxc/lxd/lxd/cluster" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/util" "github.com/lxc/lxd/shared" "github.com/lxc/lxd/shared/api" @@ -192,7 +192,7 @@ func ForwardedResponseIfTargetIsRemote(d *Daemon, request *http.Request) Respons // ForwardedResponseIfContainerIsRemote redirects a request to the node running // the container with the given name. If the container is local, nothing gets // done and nil is returned. -func ForwardedResponseIfContainerIsRemote(d *Daemon, r *http.Request, project, name string, instanceType instance.Type) (Response, error) { +func ForwardedResponseIfContainerIsRemote(d *Daemon, r *http.Request, project, name string, instanceType instanceDBTypes.Type) (Response, error) { cert := d.endpoints.NetworkCert() client, err := cluster.ConnectIfContainerIsRemote(d.cluster, project, name, cert, instanceType) if err != nil { diff --git a/lxd/storage_lvm_utils.go b/lxd/storage_lvm_utils.go index 7ea61f13f2..aab5504a90 100644 --- a/lxd/storage_lvm_utils.go +++ b/lxd/storage_lvm_utils.go @@ -11,7 +11,7 @@ import ( "github.com/pkg/errors" "github.com/lxc/lxd/lxd/db" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/project" "github.com/lxc/lxd/lxd/state" driver "github.com/lxc/lxd/lxd/storage" @@ -722,7 +722,7 @@ func storageLVMThinpoolExists(vgName string, poolName string) (bool, error) { func storageLVMGetThinPoolUsers(s *state.State) ([]string, error) { results := []string{} - cNames, err := s.Cluster.ContainersNodeList(instance.TypeContainer) + cNames, err := s.Cluster.ContainersNodeList(instanceDBTypes.TypeContainer) if err != nil { return results, err } diff --git a/lxd/storage_migration.go b/lxd/storage_migration.go index 218458d118..fcb5d8a143 100644 --- a/lxd/storage_migration.go +++ b/lxd/storage_migration.go @@ -8,7 +8,7 @@ import ( "github.com/lxc/lxd/lxd/db" deviceConfig "github.com/lxc/lxd/lxd/device/config" - "github.com/lxc/lxd/lxd/instance" + instanceDBTypes "github.com/lxc/lxd/lxd/instance/types" "github.com/lxc/lxd/lxd/migration" "github.com/lxc/lxd/lxd/project" driver "github.com/lxc/lxd/lxd/storage" @@ -199,7 +199,7 @@ func snapshotProtobufToContainerArgs(project string, containerName string, snap args := db.ContainerArgs{ Architecture: int(snap.GetArchitecture()), Config: config, - Type: instance.TypeContainer, + Type: instanceDBTypes.TypeContainer, Snapshot: true, Devices: devices, Ephemeral: snap.GetEphemeral(),
_______________________________________________ lxc-devel mailing list lxc-devel@lists.linuxcontainers.org http://lists.linuxcontainers.org/listinfo/lxc-devel