summaryrefslogtreecommitdiff
path: root/cmd/podman/run.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/podman/run.go')
-rw-r--r--cmd/podman/run.go78
1 files changed, 0 insertions, 78 deletions
diff --git a/cmd/podman/run.go b/cmd/podman/run.go
deleted file mode 100644
index 27247c5b5..000000000
--- a/cmd/podman/run.go
+++ /dev/null
@@ -1,78 +0,0 @@
-package main
-
-import (
- "os"
-
- "github.com/containers/libpod/cmd/podman/cliconfig"
- "github.com/containers/libpod/pkg/adapter"
- "github.com/opentracing/opentracing-go"
- "github.com/pkg/errors"
- "github.com/sirupsen/logrus"
- "github.com/spf13/cobra"
-)
-
-var (
- runCommand cliconfig.RunValues
-
- runDescription = "Runs a command in a new container from the given image"
- _runCommand = &cobra.Command{
- Use: "run [flags] IMAGE [COMMAND [ARG...]]",
- Short: "Run a command in a new container",
- Long: runDescription,
- RunE: func(cmd *cobra.Command, args []string) error {
- runCommand.InputArgs = args
- runCommand.GlobalFlags = MainGlobalOpts
- runCommand.Remote = remoteclient
- return runCmd(&runCommand)
- },
- Example: `podman run imageID ls -alF /etc
- podman run --network=host imageID dnf -y install java
- podman run --volume /var/hostdir:/var/ctrdir -i -t fedora /bin/bash`,
- }
-)
-
-func init() {
- runCommand.Command = _runCommand
- runCommand.SetHelpTemplate(HelpTemplate())
- runCommand.SetUsageTemplate(UsageTemplate())
- flags := runCommand.Flags()
- flags.SetInterspersed(false)
- flags.SetNormalizeFunc(aliasFlags)
- flags.Bool("sig-proxy", true, "Proxy received signals to the process")
- flags.Bool("rmi", false, "Remove container image unless used by other containers")
- flags.AddFlagSet(getNetFlags())
- getCreateFlags(&runCommand.PodmanCommand)
- markFlagHiddenForRemoteClient("authfile", flags)
-}
-
-func runCmd(c *cliconfig.RunValues) error {
- if !remote && c.Bool("trace") {
- span, _ := opentracing.StartSpanFromContext(Ctx, "runCmd")
- defer span.Finish()
- }
- if c.String("authfile") != "" {
- if _, err := os.Stat(c.String("authfile")); err != nil {
- return errors.Wrapf(err, "error checking authfile path %s", c.String("authfile"))
- }
- }
- if err := createInit(&c.PodmanCommand); err != nil {
- return err
- }
-
- runtime, err := adapter.GetRuntime(getContext(), &c.PodmanCommand)
- if err != nil {
- return errors.Wrapf(err, "error creating libpod runtime")
- }
- defer runtime.DeferredShutdown(false)
-
- exitCode, err = runtime.Run(getContext(), c, exitCode)
- if c.Bool("rmi") {
- imageName := c.InputArgs[0]
- if newImage, newImageErr := runtime.NewImageFromLocal(imageName); newImageErr != nil {
- logrus.Errorf("%s", errors.Wrapf(newImageErr, "failed creating image object"))
- } else if _, errImage := runtime.RemoveImage(getContext(), newImage, false); errImage != nil {
- logrus.Errorf("%s", errors.Wrapf(errImage, "failed removing image"))
- }
- }
- return err
-}