mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
9c4570a958
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com> Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com> Signed-off-by: Anusha Ragunathan <anusha@docker.com>
38 lines
882 B
Go
38 lines
882 B
Go
package libcontainerd
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/docker/docker/restartmanager"
|
|
)
|
|
|
|
const (
|
|
// InitFriendlyName is the name given in the lookup map of processes
|
|
// for the first process started in a container.
|
|
InitFriendlyName = "init"
|
|
configFilename = "config.json"
|
|
)
|
|
|
|
type containerCommon struct {
|
|
process
|
|
restartManager restartmanager.RestartManager
|
|
restarting bool
|
|
processes map[string]*process
|
|
}
|
|
|
|
// WithRestartManager sets the restartmanager to be used with the container.
|
|
func WithRestartManager(rm restartmanager.RestartManager) CreateOption {
|
|
return restartManager{rm}
|
|
}
|
|
|
|
type restartManager struct {
|
|
rm restartmanager.RestartManager
|
|
}
|
|
|
|
func (rm restartManager) Apply(p interface{}) error {
|
|
if pr, ok := p.(*container); ok {
|
|
pr.restartManager = rm.rm
|
|
return nil
|
|
}
|
|
return fmt.Errorf("WithRestartManager option not supported for this client")
|
|
}
|