diff options
author | Matthew Heon <matthew.heon@gmail.com> | 2017-12-13 22:02:15 -0500 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2018-02-12 14:28:07 +0000 |
commit | b4cdc27b31a638322fb83b64aea869ce8600ea01 (patch) | |
tree | 5d248aeafa1f54a2c169d1d51deaaeb5de1e0e23 /libpod/runtime.go | |
parent | 2e96acf3007cbd05a37a8af7156f0abda073cb5a (diff) | |
download | podman-b4cdc27b31a638322fb83b64aea869ce8600ea01.tar.gz podman-b4cdc27b31a638322fb83b64aea869ce8600ea01.tar.bz2 podman-b4cdc27b31a638322fb83b64aea869ce8600ea01.zip |
Add implementation for BoltDB-backed state
Signed-off-by: Matthew Heon <matthew.heon@gmail.com>
Closes: #184
Approved by: baude
Diffstat (limited to 'libpod/runtime.go')
-rw-r--r-- | libpod/runtime.go | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/libpod/runtime.go b/libpod/runtime.go index cce396764..6e26b0f1b 100644 --- a/libpod/runtime.go +++ b/libpod/runtime.go @@ -27,6 +27,9 @@ const ( InMemoryStateStore RuntimeStateStore = iota // SQLiteStateStore is a state backed by a SQLite database SQLiteStateStore RuntimeStateStore = iota + // BoltDBStateStore is a state backed by a BoltDB database + BoltDBStateStore RuntimeStateStore = iota + // SeccompDefaultPath defines the default seccomp path SeccompDefaultPath = "/usr/share/containers/seccomp.json" // SeccompOverridePath if this exists it overrides the default seccomp path @@ -76,7 +79,7 @@ var ( // Leave this empty so containers/storage will use its defaults StorageConfig: storage.StoreOptions{}, ImageDefaultTransport: DefaultTransport, - StateType: SQLiteStateStore, + StateType: BoltDBStateStore, RuntimePath: findRuncPath(), ConmonPath: findConmonPath(), ConmonEnvVars: []string{ @@ -235,6 +238,14 @@ func NewRuntime(options ...RuntimeOption) (runtime *Runtime, err error) { return nil, err } runtime.state = state + case BoltDBStateStore: + dbPath := filepath.Join(runtime.config.StaticDir, "bolt_state.db") + + state, err := NewBoltState(dbPath, runtime.lockDir, runtime) + if err != nil { + return nil, err + } + runtime.state = state default: return nil, errors.Wrapf(ErrInvalidArg, "unrecognized state type passed") } |