Files
kata-containers/virtcontainers/spawner.go
Graham whaley d6c3ec864b license: SPDX: update all vc files to use SPDX style
When imported, the vc files carried in the 'full style' apache
license text, but the standard for kata is to use SPDX style.
Update the relevant files to SPDX.

Fixes: #227

Signed-off-by: Graham whaley <graham.whaley@intel.com>
2018-04-18 13:43:15 +01:00

55 lines
1.0 KiB
Go

// Copyright (c) 2016 Intel Corporation
//
// SPDX-License-Identifier: Apache-2.0
//
package virtcontainers
import (
"fmt"
)
// SpawnerType describes the type of guest agent a Sandbox should run.
type SpawnerType string
const (
// NsEnter is the nsenter spawner type
NsEnter SpawnerType = "nsenter"
)
// Set sets an agent type based on the input string.
func (spawnerType *SpawnerType) Set(value string) error {
switch value {
case "nsenter":
*spawnerType = NsEnter
return nil
default:
return fmt.Errorf("Unknown spawner type %s", value)
}
}
// String converts an agent type to a string.
func (spawnerType *SpawnerType) String() string {
switch *spawnerType {
case NsEnter:
return string(NsEnter)
default:
return ""
}
}
// newSpawner returns an agent from and agent type.
func newSpawner(spawnerType SpawnerType) spawner {
switch spawnerType {
case NsEnter:
return &nsenter{}
default:
return nil
}
}
// spawner is the virtcontainers spawner interface.
type spawner interface {
formatArgs(args []string) ([]string, error)
}