diff options
author | Jhon Honce <jhonce@redhat.com> | 2020-06-22 14:29:04 -0700 |
---|---|---|
committer | Matthew Heon <matthew.heon@pm.me> | 2020-07-06 14:14:53 -0400 |
commit | 8dd26289bf516dcfbd9aaad6d2dd65c9f84380c8 (patch) | |
tree | a60eae9ebbd9536d322a707bea2c760f9d94abf3 /cmd/podman/registry/remote.go | |
parent | de6a8609a81472b5be786c7404576905ebb981fb (diff) | |
download | podman-8dd26289bf516dcfbd9aaad6d2dd65c9f84380c8.tar.gz podman-8dd26289bf516dcfbd9aaad6d2dd65c9f84380c8.tar.bz2 podman-8dd26289bf516dcfbd9aaad6d2dd65c9f84380c8.zip |
Fixes --remote flag issues
* --remote, --url and --identity are now anchored to podman command.
Subcommands should no longer have issues
* TraverseChildren now set to V1 expectations
* Latest flag now has helper function. Now has consistent usage.
* IsRemote() uses cobra parser to determin if --remote is given
* Moved validation functions from parser pkg to validate pkg
*
Fixes #6598
Fixes #6704
Signed-off-by: Jhon Honce <jhonce@redhat.com>
<MH: Fixed import issues>
Signed-off-by: Matt Heon <matthew.heon@pm.me>
Diffstat (limited to 'cmd/podman/registry/remote.go')
-rw-r--r-- | cmd/podman/registry/remote.go | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/cmd/podman/registry/remote.go b/cmd/podman/registry/remote.go index 3040c4c2a..006a1b900 100644 --- a/cmd/podman/registry/remote.go +++ b/cmd/podman/registry/remote.go @@ -1,9 +1,26 @@ package registry import ( + "os" + "sync" + "github.com/containers/libpod/v2/pkg/domain/entities" + "github.com/spf13/cobra" +) + +var ( + // Was --remote given on command line + remoteOverride bool + remoteSync sync.Once ) +// IsRemote returns true if podman was built to run remote +// Use in init() functions as a initialization check func IsRemote() bool { - return podmanOptions.EngineMode == entities.TunnelMode + remoteSync.Do(func() { + remote := &cobra.Command{} + remote.Flags().BoolVarP(&remoteOverride, "remote", "r", false, "") + _ = remote.ParseFlags(os.Args) + }) + return podmanOptions.EngineMode == entities.TunnelMode || remoteOverride } |