podman
27 строк · 721.0 Байт
1package bind
2
3import (
4"github.com/opencontainers/runtime-spec/specs-go"
5"golang.org/x/exp/slices"
6)
7
8const (
9// NoBindOption is an option which, if present in a Mount structure's
10// options list, will cause SetupIntermediateMountNamespace to not
11// redirect it through a bind mount.
12NoBindOption = "nobuildahbind"
13)
14
15func stripNoBindOption(spec *specs.Spec) {
16for i := range spec.Mounts {
17if slices.Contains(spec.Mounts[i].Options, NoBindOption) {
18prunedOptions := make([]string, 0, len(spec.Mounts[i].Options))
19for _, option := range spec.Mounts[i].Options {
20if option != NoBindOption {
21prunedOptions = append(prunedOptions, option)
22}
23}
24spec.Mounts[i].Options = prunedOptions
25}
26}
27}
28