diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2022-08-17 14:02:00 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-17 14:02:00 +0000 |
commit | c2f9ab1a1ae3adf0afb80faebead8fcc7a5b53d0 (patch) | |
tree | 9ab74df204c01b0989a863bac646c3a902080631 /libpod/runtime_volume_unsupported.go | |
parent | c90eec2700d2e00a4b8f1e06ca640c034af5a530 (diff) | |
parent | 1572420c3fbf8a8022faaa93848a7239037a77e4 (diff) | |
download | podman-c2f9ab1a1ae3adf0afb80faebead8fcc7a5b53d0.tar.gz podman-c2f9ab1a1ae3adf0afb80faebead8fcc7a5b53d0.tar.bz2 podman-c2f9ab1a1ae3adf0afb80faebead8fcc7a5b53d0.zip |
Merge pull request #15357 from dfr/freebsd-build
Add non-linux build stubs for libpod
Diffstat (limited to 'libpod/runtime_volume_unsupported.go')
-rw-r--r-- | libpod/runtime_volume_unsupported.go | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/libpod/runtime_volume_unsupported.go b/libpod/runtime_volume_unsupported.go new file mode 100644 index 000000000..c2816b817 --- /dev/null +++ b/libpod/runtime_volume_unsupported.go @@ -0,0 +1,42 @@ +//go:build !linux +// +build !linux + +package libpod + +import ( + "context" + "errors" + + "github.com/containers/podman/v4/libpod/define" +) + +// NewVolume creates a new empty volume +func (r *Runtime) NewVolume(ctx context.Context, options ...VolumeCreateOption) (*Volume, error) { + if !r.valid { + return nil, define.ErrRuntimeStopped + } + return r.newVolume(false, options...) +} + +// NewVolume creates a new empty volume +func (r *Runtime) newVolume(noCreatePluginVolume bool, options ...VolumeCreateOption) (*Volume, error) { + return nil, errors.New("not implemented (*Runtime) newVolume") +} + +// UpdateVolumePlugins reads all volumes from all configured volume plugins and +// imports them into the libpod db. It also checks if existing libpod volumes +// are removed in the plugin, in this case we try to remove it from libpod. +// On errors we continue and try to do as much as possible. all errors are +// returned as array in the returned struct. +// This function has many race conditions, it is best effort but cannot guarantee +// a perfect state since plugins can be modified from the outside at any time. +func (r *Runtime) UpdateVolumePlugins(ctx context.Context) *define.VolumeReload { + return nil +} + +// removeVolume removes the specified volume from state as well tears down its mountpoint and storage. +// ignoreVolumePlugin is used to only remove the volume from the db and not the plugin, +// this is required when the volume was already removed from the plugin, i.e. in UpdateVolumePlugins(). +func (r *Runtime) removeVolume(ctx context.Context, v *Volume, force bool, timeout *uint, ignoreVolumePlugin bool) error { + return errors.New("not implemented (*Runtime) removeVolume") +} |