2016-09-12 02:33:09 +00:00
|
|
|
// Copyright © 2013, 2014, The Go-LXC Authors. All rights reserved.
|
|
|
|
// Use of this source code is governed by a LGPLv2.1
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
// +build linux,cgo
|
|
|
|
|
|
|
|
package lxc
|
|
|
|
|
|
|
|
var (
|
|
|
|
ErrAddDeviceNodeFailed = NewError("adding device to container failed")
|
|
|
|
ErrAllocationFailed = NewError("allocating memory failed")
|
|
|
|
ErrAlreadyDefined = NewError("container already defined")
|
|
|
|
ErrAlreadyFrozen = NewError("container is already frozen")
|
|
|
|
ErrAlreadyRunning = NewError("container is already running")
|
|
|
|
ErrAttachFailed = NewError("attaching to the container failed")
|
|
|
|
ErrAttachInterfaceFailed = NewError("attaching specified netdev to the container failed")
|
|
|
|
ErrBlkioUsage = NewError("BlkioUsage for the container failed")
|
|
|
|
ErrCheckpointFailed = NewError("checkpoint failed")
|
2018-11-25 16:55:01 +00:00
|
|
|
ErrClearingConfigItemFailed = NewError("clearing config item for the container failed")
|
2016-09-12 02:33:09 +00:00
|
|
|
ErrClearingCgroupItemFailed = NewError("clearing cgroup item for the container failed")
|
|
|
|
ErrCloneFailed = NewError("cloning the container failed")
|
|
|
|
ErrCloseAllFdsFailed = NewError("setting close_all_fds flag for container failed")
|
|
|
|
ErrCreateFailed = NewError("creating the container failed")
|
|
|
|
ErrCreateSnapshotFailed = NewError("snapshotting the container failed")
|
|
|
|
ErrDaemonizeFailed = NewError("setting daemonize flag for container failed")
|
|
|
|
ErrDestroyAllSnapshotsFailed = NewError("destroying all snapshots failed")
|
|
|
|
ErrDestroyFailed = NewError("destroying the container failed")
|
|
|
|
ErrDestroySnapshotFailed = NewError("destroying the snapshot failed")
|
|
|
|
ErrDestroyWithAllSnapshotsFailed = NewError("destroying the container with all snapshots failed")
|
|
|
|
ErrDetachInterfaceFailed = NewError("detaching specified netdev to the container failed")
|
|
|
|
ErrExecuteFailed = NewError("executing the command in a temporary container failed")
|
|
|
|
ErrFreezeFailed = NewError("freezing the container failed")
|
|
|
|
ErrInsufficientNumberOfArguments = NewError("insufficient number of arguments were supplied")
|
|
|
|
ErrInterfaces = NewError("getting interface names for the container failed")
|
|
|
|
ErrIPAddresses = NewError("getting IP addresses of the container failed")
|
|
|
|
ErrIPAddress = NewError("getting IP address on the interface of the container failed")
|
|
|
|
ErrIPv4Addresses = NewError("getting IPv4 addresses of the container failed")
|
|
|
|
ErrIPv6Addresses = NewError("getting IPv6 addresses of the container failed")
|
|
|
|
ErrKMemLimit = NewError("your kernel does not support cgroup kernel memory controller")
|
|
|
|
ErrLoadConfigFailed = NewError("loading config file for the container failed")
|
|
|
|
ErrMemLimit = NewError("your kernel does not support cgroup memory controller")
|
|
|
|
ErrMemorySwapLimit = NewError("your kernel does not support cgroup swap controller")
|
|
|
|
ErrMethodNotAllowed = NewError("the requested method is not currently supported with unprivileged containers")
|
|
|
|
ErrNewFailed = NewError("allocating the container failed")
|
|
|
|
ErrNoSnapshot = NewError("container has no snapshot")
|
|
|
|
ErrNotDefined = NewError("container is not defined")
|
|
|
|
ErrNotFrozen = NewError("container is not frozen")
|
|
|
|
ErrNotRunning = NewError("container is not running")
|
|
|
|
ErrNotSupported = NewError("method is not supported by this LXC version")
|
|
|
|
ErrRebootFailed = NewError("rebooting the container failed")
|
|
|
|
ErrRemoveDeviceNodeFailed = NewError("removing device from container failed")
|
|
|
|
ErrRenameFailed = NewError("renaming the container failed")
|
|
|
|
ErrRestoreFailed = NewError("restore failed")
|
|
|
|
ErrRestoreSnapshotFailed = NewError("restoring the container failed")
|
|
|
|
ErrSaveConfigFailed = NewError("saving config file for the container failed")
|
|
|
|
ErrSettingCgroupItemFailed = NewError("setting cgroup item for the container failed")
|
|
|
|
ErrSettingConfigItemFailed = NewError("setting config item for the container failed")
|
|
|
|
ErrSettingConfigPathFailed = NewError("setting config file for the container failed")
|
|
|
|
ErrSettingKMemoryLimitFailed = NewError("setting kernel memory limit for the container failed")
|
|
|
|
ErrSettingMemoryLimitFailed = NewError("setting memory limit for the container failed")
|
|
|
|
ErrSettingMemorySwapLimitFailed = NewError("setting memory+swap limit for the container failed")
|
|
|
|
ErrSettingSoftMemoryLimitFailed = NewError("setting soft memory limit for the container failed")
|
|
|
|
ErrShutdownFailed = NewError("shutting down the container failed")
|
|
|
|
ErrSoftMemLimit = NewError("your kernel does not support cgroup memory controller")
|
|
|
|
ErrStartFailed = NewError("starting the container failed")
|
|
|
|
ErrStopFailed = NewError("stopping the container failed")
|
|
|
|
ErrTemplateNotAllowed = NewError("unprivileged users only allowed to use \"download\" template")
|
|
|
|
ErrUnfreezeFailed = NewError("unfreezing the container failed")
|
|
|
|
ErrUnknownBackendStore = NewError("unknown backend type")
|
|
|
|
)
|
|
|
|
|
|
|
|
// Error represents a basic error that implies the error interface.
|
|
|
|
type Error struct {
|
|
|
|
Message string
|
|
|
|
}
|
|
|
|
|
|
|
|
// NewError creates a new error with the given msg argument.
|
|
|
|
func NewError(msg string) error {
|
|
|
|
return &Error{
|
|
|
|
Message: msg,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (e *Error) Error() string {
|
|
|
|
return e.Message
|
|
|
|
}
|