Skip to content

Commit

Permalink
Drop podman create --storage-opt container flag
Browse files Browse the repository at this point in the history
The global flag will work in either location, and this flag just breaks
users expectations, and is basically a noop.

Also fix global storage-opt so that podman-remote can use it.

[NO TESTS NEEDED] Since it would be difficult to test in ci/cd.

Fixes: #10264

Signed-off-by: Daniel J Walsh <[email protected]>
  • Loading branch information
rhatdan committed Jul 20, 2021
1 parent 389c9b8 commit db2f474
Show file tree
Hide file tree
Showing 5 changed files with 7 additions and 14 deletions.
9 changes: 0 additions & 9 deletions cmd/podman/common/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -655,15 +655,6 @@ func DefineCreateFlags(cmd *cobra.Command, cf *ContainerCLIOpts) {
)
_ = cmd.RegisterFlagCompletionFunc(stopTimeoutFlagName, completion.AutocompleteNone)

storageOptFlagName := "storage-opt"
createFlags.StringSliceVar(
&cf.StorageOpt,
storageOptFlagName, []string{},
"Storage driver options per container",
)
//FIXME: What should we suggest here? The flag is not in the man page.
_ = cmd.RegisterFlagCompletionFunc(storageOptFlagName, completion.AutocompleteNone)

subgidnameFlagName := "subgidname"
createFlags.StringVar(
&cf.SubUIDName,
Expand Down
2 changes: 2 additions & 0 deletions cmd/podman/containers/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,8 @@ func replaceContainer(name string) error {
}

func createInit(c *cobra.Command) error {
cliVals.StorageOpt = registry.PodmanConfig().StorageOpts

if c.Flag("shm-size").Changed {
cliVals.ShmSize = c.Flag("shm-size").Value.String()
}
Expand Down
8 changes: 4 additions & 4 deletions cmd/podman/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -342,10 +342,6 @@ func rootFlags(cmd *cobra.Command, opts *entities.PodmanConfig) {
pFlags.StringVar(&opts.StorageDriver, storageDriverFlagName, "", "Select which storage driver is used to manage storage of images and containers (default is overlay)")
_ = cmd.RegisterFlagCompletionFunc(storageDriverFlagName, completion.AutocompleteNone) //TODO: what can we recommend here?

storageOptFlagName := "storage-opt"
pFlags.StringArrayVar(&opts.StorageOpts, storageOptFlagName, []string{}, "Used to pass an option to the storage driver")
_ = cmd.RegisterFlagCompletionFunc(storageOptFlagName, completion.AutocompleteNone)

tmpdirFlagName := "tmpdir"
pFlags.StringVar(&opts.Engine.TmpDir, tmpdirFlagName, "", "Path to the tmp directory for libpod state content.\n\nNote: use the environment variable 'TMPDIR' to change the temporary storage location for container images, '/var/tmp'.\n")
_ = cmd.RegisterFlagCompletionFunc(tmpdirFlagName, completion.AutocompleteDefault)
Expand All @@ -365,6 +361,10 @@ func rootFlags(cmd *cobra.Command, opts *entities.PodmanConfig) {
}
}
}
storageOptFlagName := "storage-opt"
pFlags.StringArrayVar(&opts.StorageOpts, storageOptFlagName, []string{}, "Used to pass an option to the storage driver")
_ = cmd.RegisterFlagCompletionFunc(storageOptFlagName, completion.AutocompleteNone)

// Override default --help information of `--help` global flag
var dummyHelp bool
pFlags.BoolVar(&dummyHelp, "help", false, "Help for podman")
Expand Down
1 change: 0 additions & 1 deletion libpod/container_internal.go
Original file line number Diff line number Diff line change
Expand Up @@ -420,7 +420,6 @@ func (c *Container) setupStorage(ctx context.Context) error {
if c.config.Rootfs == "" && (c.config.RootfsImageID == "" || c.config.RootfsImageName == "") {
return errors.Wrapf(define.ErrInvalidArg, "must provide image ID and image name to use an image")
}

options := storage.ContainerOptions{
IDMappingOptions: storage.IDMappingOptions{
HostUIDMapping: true,
Expand Down
1 change: 1 addition & 0 deletions pkg/api/handlers/libpod/containers_create.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ func CreateContainer(w http.ResponseWriter, r *http.Request) {
utils.Error(w, "Something went wrong.", http.StatusInternalServerError, errors.Wrap(err, "Decode()"))
return
}

warn, err := generate.CompleteSpec(r.Context(), runtime, &sg)
if err != nil {
utils.InternalServerError(w, err)
Expand Down

0 comments on commit db2f474

Please sign in to comment.