summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Holzinger <pholzing@redhat.com>2021-09-02 09:25:36 +0200
committerPaul Holzinger <pholzing@redhat.com>2021-09-07 10:24:10 +0200
commit3d02cfb5e05e14050f47ee446d3ed23d0948b90c (patch)
tree433afc0c842c0ec6ce838c02a71fdad9fc53c80b
parent4207d959a68c1ee2b805b7113838580c14f4bbc6 (diff)
downloadpodman-3d02cfb5e05e14050f47ee446d3ed23d0948b90c.tar.gz
podman-3d02cfb5e05e14050f47ee446d3ed23d0948b90c.tar.bz2
podman-3d02cfb5e05e14050f47ee446d3ed23d0948b90c.zip
network create: add warning for deprecated macvlan flag
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 <pholzing@redhat.com>
-rw-r--r--cmd/podman/networks/create.go9
-rw-r--r--docs/source/markdown/podman-network-create.1.md10
2 files changed, 10 insertions, 9 deletions
diff --git a/cmd/podman/networks/create.go b/cmd/podman/networks/create.go
index 1f3b321ba..b5ddd215f 100644
--- a/cmd/podman/networks/create.go
+++ b/cmd/podman/networks/create.go
@@ -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"
)
@@ -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")
@@ -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
diff --git a/docs/source/markdown/podman-network-create.1.md b/docs/source/markdown/podman-network-create.1.md
index d110c4ceb..04290c188 100644
--- a/docs/source/markdown/podman-network-create.1.md
+++ b/docs/source/markdown/podman-network-create.1.md
@@ -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**
@@ -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.