Skip to content

Commit

Permalink
network create: add warning for deprecated macvlan flag
Browse files Browse the repository at this point in the history
The macvlan driver is not deprecated, only the --macvlan flag is.
Remove the flag from the man page since it is deprecated and add a
warning to podman network create if it is used.

[NO TESTS NEEDED]

Fixes #11400

Signed-off-by: Paul Holzinger <[email protected]>
  • Loading branch information
Luap99 committed Sep 7, 2021
1 parent 4207d95 commit 3d02cfb
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 9 deletions.
9 changes: 8 additions & 1 deletion cmd/podman/networks/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import (
"github.com/containers/podman/v3/libpod/define"
"github.com/containers/podman/v3/pkg/domain/entities"
"github.com/pkg/errors"
"github.com/sirupsen/logrus"
"github.com/spf13/cobra"
)

Expand Down Expand Up @@ -56,7 +57,8 @@ func networkCreateFlags(cmd *cobra.Command) {

macvlanFlagName := "macvlan"
flags.StringVar(&networkCreateOptions.MacVLAN, macvlanFlagName, "", "create a Macvlan connection based on this device")
_ = cmd.RegisterFlagCompletionFunc(macvlanFlagName, completion.AutocompleteNone)
// This option is deprecated
flags.MarkHidden(macvlanFlagName)

labelFlagName := "label"
flags.StringArrayVar(&labels, labelFlagName, nil, "set metadata on a network")
Expand Down Expand Up @@ -100,6 +102,11 @@ func networkCreate(cmd *cobra.Command, args []string) error {
if err != nil {
return errors.Wrapf(err, "unable to process options")
}

if networkCreateOptions.MacVLAN != "" {
logrus.Warn("The --macvlan option is deprecated, use `--driver macvlan --opt parent=<device>` instead")
}

response, err := registry.ContainerEngine().NetworkCreate(registry.Context(), name, networkCreateOptions)
if err != nil {
return err
Expand Down
10 changes: 2 additions & 8 deletions docs/source/markdown/podman-network-create.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ resolution.

#### **--driver**, **-d**

Driver to manage the network (default "bridge"). Currently only `bridge` is supported.
Driver to manage the network. Currently `bridge` and `macvlan` is supported. Defaults to `bridge`.
As rootless the `macvlan` driver has no access to the host network interfaces because rootless networking requires a separate network namespace.

#### **--opt**=*option*, **-o**

Expand Down Expand Up @@ -54,13 +55,6 @@ must be used with a *subnet* option.

Set metadata for a network (e.g., --label mykey=value).

#### **--macvlan**

*This option is being deprecated*

Create a *Macvlan* based connection rather than a classic bridge. You must pass an interface name from the host for the
Macvlan connection.

#### **--subnet**

The subnet in CIDR notation.
Expand Down

0 comments on commit 3d02cfb

Please sign in to comment.