diff options
-rw-r--r-- | .cirrus.yml | 57 | ||||
-rwxr-xr-x | API.md | 10 | ||||
-rw-r--r-- | CONTRIBUTING.md | 2 | ||||
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | cmd/podman/commit.go | 6 | ||||
-rw-r--r-- | cmd/podman/main.go | 7 | ||||
-rw-r--r-- | cmd/podman/main_remote.go | 39 | ||||
-rw-r--r-- | cmd/podman/shared/container.go | 2 | ||||
-rw-r--r-- | cmd/podman/shared/container_inspect.go | 2 | ||||
-rw-r--r-- | cmd/podman/system_df.go | 2 | ||||
-rw-r--r-- | cmd/podman/varlink/io.podman.varlink | 10 | ||||
-rwxr-xr-x | contrib/cirrus/logcollector.sh | 36 | ||||
l---------[-rwxr-xr-x] | contrib/cirrus/system_test.sh | 22 | ||||
-rw-r--r-- | docs/podman-build.1.md | 2 | ||||
-rw-r--r-- | docs/podman-commit.1.md | 8 | ||||
-rw-r--r-- | docs/podman-create.1.md | 6 | ||||
-rw-r--r-- | docs/podman-generate-kube.1.md | 2 | ||||
-rw-r--r-- | docs/podman-run.1.md | 2 | ||||
-rw-r--r-- | docs/podman.1.md | 6 | ||||
-rw-r--r-- | libpod/container_internal_linux.go | 2 | ||||
-rw-r--r-- | libpod/image/pull.go | 8 | ||||
-rw-r--r-- | logo/podman-logo-source.svg | 608 | ||||
-rw-r--r-- | logo/podman-logo.svg | 1 | ||||
-rw-r--r-- | test/system/030-run.bats | 4 | ||||
-rw-r--r-- | test/utils/utils.go | 2 |
25 files changed, 146 insertions, 707 deletions
diff --git a/.cirrus.yml b/.cirrus.yml index 848dc2b6d..3b1c60638 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -21,12 +21,10 @@ env: CIRRUS_SHELL: "/bin/bash" # Save a little typing (path relative to $CIRRUS_WORKING_DIR) SCRIPT_BASE: "./contrib/cirrus" - # Command to prefix every output line with a timestamp + CIRRUS_CLONE_DEPTH: 50 + # Command to prefix output lines with timing information # (can't do inline awk script, Cirrus-CI or YAML mangles quoting) TIMESTAMP: "awk --file ${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/timestamp.awk" - # Command to log critical filesystems, types, and sizes. - DFCMD: "df -lhTx tmpfs" - CIRRUS_CLONE_DEPTH: 50 #### #### Cache-image names to test with @@ -280,18 +278,16 @@ testing_task: setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' unit_test_script: '$SCRIPT_BASE/unit_test.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' - ginkgo_node_logs_script: 'cat $CIRRUS_WORKING_DIR/test/e2e/ginkgo-node-*.log || echo "Ginkgo node logs not found"' - df_script: '${DFCMD}' - audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log' - journalctl_b_script: 'journalctl -b' + system_test_script: '$SCRIPT_BASE/system_test.sh |& ${TIMESTAMP}' on_failure: failed_master_script: '$CIRRUS_WORKING_DIR/$SCRIPT_BASE/notice_master_failure.sh' - # Job has already failed, don't fail again and miss collecting data - failed_ginkgo_node_logs_script: 'cat $CIRRUS_WORKING_DIR/test/e2e/ginkgo-node-*.log || echo "Ginkgo node logs not found"' - failed_df_script: '${DFCMD}' - failed_audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log || echo "Uh oh, cat audit.log failed"' - failed_journalctl_b_script: 'journalctl -b || echo "Uh oh, journalctl -b failed"' + + always: &standardlogs + ginkgo_node_logs_script: '$SCRIPT_BASE/logcollector.sh ginkgo' + df_script: '$SCRIPT_BASE/logcollector.sh df' + audit_log_script: '$SCRIPT_BASE/logcollector.sh audit' + journal_script: '$SCRIPT_BASE/logcollector.sh journal' # This task executes tests under unique environments/conditions @@ -316,16 +312,14 @@ special_testing_rootless_task: setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' - df_script: '${DFCMD}' - audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log' - journalctl_b_script: 'journalctl -b' + system_test_script: '$SCRIPT_BASE/system_test.sh |& ${TIMESTAMP}' on_failure: failed_master_script: '$CIRRUS_WORKING_DIR/$SCRIPT_BASE/notice_master_failure.sh' - # Job has already failed, don't fail again and miss collecting data - failed_df_script: '${DFCMD}' - failed_audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log || echo "Uh oh, cat audit.log failed"' - failed_journalctl_b_script: 'journalctl -b || echo "Uh oh, journalctl -b failed"' + + always: + <<: *standardlogs + special_testing_in_podman_task: @@ -344,16 +338,12 @@ special_testing_in_podman_task: setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' - df_script: '${DFCMD}' - audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log' - journalctl_b_script: 'journalctl -b' on_failure: failed_master_script: '$CIRRUS_WORKING_DIR/$SCRIPT_BASE/notice_master_failure.sh' - # Job has already failed, don't fail again and miss collecting data - failed_df_script: '${DFCMD}' - failed_audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log || echo "Uh oh, cat audit.log failed"' - failed_journalctl_b_script: 'journalctl -b || echo "Uh oh, journalctl -b failed"' + + always: + <<: *standardlogs # Test building of new cache-images for future PR testing, in this PR. @@ -416,16 +406,9 @@ verify_test_built_images_task: environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' - ginkgo_node_logs_script: 'cat $CIRRUS_WORKING_DIR/test/e2e/ginkgo-node-*.log || echo "Ginkgo node logs not found"' - df_script: '${DFCMD}' - audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log' - journalctl_b_script: 'journalctl -b' - on_failure: - # Job has already failed, don't fail again and miss collecting data - failed_ginkgo_node_logs_script: 'cat $CIRRUS_WORKING_DIR/test/e2e/ginkgo-node-*.log || echo "Ginkgo node logs not found"' - failed_df_script: '${DFCMD}' - failed_audit_log_script: 'cat /var/log/audit/audit.log || cat /var/log/kern.log || echo "Uh oh, cat audit.log failed"' - failed_journalctl_b_script: 'journalctl -b || echo "Uh oh, journalctl -b failed"' + + always: + <<: *standardlogs # Build new cache-images for future PR testing, but only after a PR merge. @@ -286,7 +286,7 @@ in the [API.md](https://github.com/containers/libpod/blob/master/API.md) file in <div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;"> method Attach(name: [string](https://godoc.org/builtin#string), detachKeys: [string](https://godoc.org/builtin#string), start: [bool](https://godoc.org/builtin#bool)) </div> -Attach takes the name or ID of a container and sets up a the ability to remotely attach to its console. The start +Attach takes the name or ID of a container and sets up the ability to remotely attach to its console. The start bool is whether you wish to start the container in question first. ### <a name="AttachControl"></a>func AttachControl <div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;"> @@ -459,7 +459,7 @@ $ varlink call -m unix:/run/podman/io.podman/io.podman.ExportContainer '{"name": method ExportImage(name: [string](https://godoc.org/builtin#string), destination: [string](https://godoc.org/builtin#string), compress: [bool](https://godoc.org/builtin#bool), tags: [[]string](#[]string)) [string](https://godoc.org/builtin#string)</div> ExportImage takes the name or ID of an image and exports it to a destination like a tarball. There is also -a booleon option to force compression. It also takes in a string array of tags to be able to save multiple +a boolean option to force compression. It also takes in a string array of tags to be able to save multiple tags of the same image to a tarball (each tag should be of the form <image>:<tag>). Upon completion, the ID of the image is returned. If the image cannot be found in local storage, an [ImageNotFound](#ImageNotFound) error will be returned. See also [ImportImage](ImportImage). @@ -729,14 +729,14 @@ error will be returned if the container cannot be found. See also [InspectImage] <div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;"> method InspectImage(name: [string](https://godoc.org/builtin#string)) [string](https://godoc.org/builtin#string)</div> -InspectImage takes the name or ID of an image and returns a string respresentation of data associated with the +InspectImage takes the name or ID of an image and returns a string representation of data associated with the mage. You must serialize the string into JSON to use it further. An [ImageNotFound](#ImageNotFound) error will be returned if the image cannot be found. ### <a name="InspectPod"></a>func InspectPod <div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;"> method InspectPod(name: [string](https://godoc.org/builtin#string)) [string](https://godoc.org/builtin#string)</div> -InspectPod takes the name or ID of an image and returns a string respresentation of data associated with the +InspectPod takes the name or ID of an image and returns a string representation of data associated with the pod. You must serialize the string into JSON to use it further. A [PodNotFound](#PodNotFound) error will be returned if the pod cannot be found. ### <a name="KillContainer"></a>func KillContainer @@ -1650,7 +1650,7 @@ name [string](https://godoc.org/builtin#string) star_count [int](https://godoc.org/builtin#int) ### <a name="InfoDistribution"></a>type InfoDistribution -InfoDistribution describes the the host's distribution +InfoDistribution describes the host's distribution distribution [string](https://godoc.org/builtin#string) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8b7544ba0..b86f3e345 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -315,7 +315,7 @@ branches, which you may occasionally see [red bars on the status graph .](https://cirrus-ci.com/github/containers/libpod/master) When the graph shows mostly green bars on the right, it's a good indication -the master branch is currently stable. Alternating red/green bars is indicitave +the master branch is currently stable. Alternating red/green bars is indicative of a testing "flake", and should be examined (anybody can do this): * *One or a small handful of tests, on a single task, (i.e. specific distro/version) @@ -220,8 +220,11 @@ localintegration: varlink_generate test-binaries ginkgo remoteintegration: varlink_generate test-binaries ginkgo-remote -localsystem: .install.ginkgo - ginkgo -v -noColor test/system/ +localsystem: + if timeout -v 1 true; then PODMAN=./bin/podman bats test/system/; else echo "Skipping localsystem: 'timeout -v' unavailable'"; fi + +remotesystem: + @echo "remotesystem - unimplemented" system.test-binary: .install.ginkgo $(GO) test -c ./test/system diff --git a/cmd/podman/commit.go b/cmd/podman/commit.go index 01e2ec701..db0b8241e 100644 --- a/cmd/podman/commit.go +++ b/cmd/podman/commit.go @@ -26,9 +26,9 @@ var ( commitCommand.Remote = remoteclient return commitCmd(&commitCommand) }, - Example: `podman commit -q --message "committing container to image" reverent_golick image-commited - podman commit -q --author "firstName lastName" reverent_golick image-commited - podman commit -q --pause=false containerID image-commited`, + Example: `podman commit -q --message "committing container to image" reverent_golick image-committed + podman commit -q --author "firstName lastName" reverent_golick image-committed + podman commit -q --pause=false containerID image-committed`, } ) diff --git a/cmd/podman/main.go b/cmd/podman/main.go index cbca32cc8..847cc0731 100644 --- a/cmd/podman/main.go +++ b/cmd/podman/main.go @@ -104,9 +104,7 @@ func before(cmd *cobra.Command, args []string) error { logrus.Errorf(err.Error()) os.Exit(1) } - if err := setSyslog(); err != nil { - return err - } + if err := setupRootless(cmd, args); err != nil { return err } @@ -121,6 +119,9 @@ func before(cmd *cobra.Command, args []string) error { return err } logrus.SetLevel(level) + if err := setSyslog(); err != nil { + return err + } if err := setRLimits(); err != nil { return err diff --git a/cmd/podman/main_remote.go b/cmd/podman/main_remote.go index 1b9430e92..ecbb44d5a 100644 --- a/cmd/podman/main_remote.go +++ b/cmd/podman/main_remote.go @@ -3,8 +3,13 @@ package main import ( + "fmt" + "os" "os/user" + "path/filepath" + "github.com/docker/docker/pkg/homedir" + "github.com/sirupsen/logrus" "github.com/spf13/cobra" ) @@ -20,11 +25,41 @@ func init() { rootCmd.PersistentFlags().StringVar(&MainGlobalOpts.RemoteUserName, "username", username, "username on the remote host") rootCmd.PersistentFlags().StringVar(&MainGlobalOpts.RemoteHost, "remote-host", "", "remote host") // TODO maybe we allow the altering of this for bridge connections? - //rootCmd.PersistentFlags().StringVar(&MainGlobalOpts.VarlinkAddress, "varlink-address", adapter.DefaultAddress, "address of the varlink socket") - rootCmd.PersistentFlags().StringVar(&MainGlobalOpts.LogLevel, "log-level", "error", "Log messages above specified level: debug, info, warn, error, fatal or panic") + // rootCmd.PersistentFlags().StringVar(&MainGlobalOpts.VarlinkAddress, "varlink-address", adapter.DefaultAddress, "address of the varlink socket") + rootCmd.PersistentFlags().StringVar(&MainGlobalOpts.LogLevel, "log-level", "error", "Log messages above specified level: debug, info, warn, error, fatal or panic. Logged to ~/.config/containers/podman.log") + rootCmd.PersistentFlags().BoolVar(&MainGlobalOpts.Syslog, "syslog", false, "Output logging information to syslog as well as the console") } func setSyslog() error { + // Log to file if not using syslog + homeDir := homedir.Get() + path := filepath.Join(homeDir, ".config", "containers") + + if _, err := os.Stat(path); os.IsNotExist(err) { + if err := os.MkdirAll(path, 0750); err != nil { + fmt.Fprintf(os.Stderr, "%v", err) + return err + } + } + + // Update path to include file name + path = filepath.Join(path, "podman.log") + + // Create the log file if doesn't exist. And append to it if it already exists. + file, err := os.OpenFile(path, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0640) + if err != nil { + // Cannot open log file. Logging to stderr + fmt.Fprintf(os.Stderr, "%v", err) + return err + } else { + formatter := new(logrus.TextFormatter) + formatter.FullTimestamp = true + logrus.SetFormatter(formatter) + logrus.SetOutput(file) + } + + // Note this message is only logged if --log-level >= Info! + logrus.Infof("Logging level set to %s", logrus.GetLevel().String()) return nil } diff --git a/cmd/podman/shared/container.go b/cmd/podman/shared/container.go index c97eaa290..f24a2358f 100644 --- a/cmd/podman/shared/container.go +++ b/cmd/podman/shared/container.go @@ -710,7 +710,7 @@ func portsToString(ports []ocicni.PortMapping) string { } // GetRunlabel is a helper function for runlabel; it gets the image if needed and begins the -// contruction of the runlabel output and environment variables +// construction of the runlabel output and environment variables func GetRunlabel(label string, runlabelImage string, ctx context.Context, runtime *libpod.Runtime, pull bool, inputCreds string, dockerRegistryOptions image.DockerRegistryOptions, authfile string, signaturePolicyPath string, output io.Writer) (string, string, error) { var ( newImage *image.Image diff --git a/cmd/podman/shared/container_inspect.go b/cmd/podman/shared/container_inspect.go index f4031ae34..c89daf6bb 100644 --- a/cmd/podman/shared/container_inspect.go +++ b/cmd/podman/shared/container_inspect.go @@ -79,7 +79,7 @@ type InspectContainerHostConfig struct { } // InspectLogConfig holds information about a container's configured log driver -// and is presently unused. It is retained for Docker compatability. +// and is presently unused. It is retained for Docker compatibility. type InspectLogConfig struct { Type string `json:"Type"` Config map[string]string `json:"Config"` //idk type, TODO diff --git a/cmd/podman/system_df.go b/cmd/podman/system_df.go index 840916547..d2163d0d7 100644 --- a/cmd/podman/system_df.go +++ b/cmd/podman/system_df.go @@ -586,7 +586,7 @@ func volumesVerboseOutput(ctx context.Context, metaData dfMetaData) error { } volumesVerboseDiskUsage, err := getVolumeVerboseDiskUsage(metaData.volumes, metaData.volumeUsedByContainerMap) if err != nil { - return errors.Wrapf(err, "error getting verbose ouput of volumes") + return errors.Wrapf(err, "error getting verbose output of volumes") } os.Stderr.WriteString("\nLocal Volumes space usage:\n\n") out := formats.StdoutTemplateArray{Output: systemDfVolumeVerboseDiskUsageToGeneric(volumesVerboseDiskUsage), Template: volumeVerboseFormat, Fields: volumeVerboseHeader} diff --git a/cmd/podman/varlink/io.podman.varlink b/cmd/podman/varlink/io.podman.varlink index 5b3d5ae4c..9410b9459 100644 --- a/cmd/podman/varlink/io.podman.varlink +++ b/cmd/podman/varlink/io.podman.varlink @@ -207,7 +207,7 @@ type ContainerNameSpace ( ipc: string ) -# InfoDistribution describes the the host's distribution +# InfoDistribution describes the host's distribution type InfoDistribution ( distribution: string, version: string @@ -671,7 +671,7 @@ method PauseContainer(name: string) -> (container: string) # See also [PauseContainer](#PauseContainer). method UnpauseContainer(name: string) -> (container: string) -# Attach takes the name or ID of a container and sets up a the ability to remotely attach to its console. The start +# Attach takes the name or ID of a container and sets up the ability to remotely attach to its console. The start # bool is whether you wish to start the container in question first. method Attach(name: string, detachKeys: string, start: bool) -> () @@ -744,7 +744,7 @@ method BuildImage(build: BuildInfo) -> (image: MoreResponse) # This function is not implemented yet. # method CreateImage() -> (notimplemented: NotImplemented) -# InspectImage takes the name or ID of an image and returns a string respresentation of data associated with the +# InspectImage takes the name or ID of an image and returns a string representation of data associated with the #image. You must serialize the string into JSON to use it further. An [ImageNotFound](#ImageNotFound) error will # be returned if the image cannot be found. method InspectImage(name: string) -> (image: string) @@ -810,7 +810,7 @@ method Commit(name: string, image_name: string, changes: []string, author: strin method ImportImage(source: string, reference: string, message: string, changes: []string, delete: bool) -> (image: string) # ExportImage takes the name or ID of an image and exports it to a destination like a tarball. There is also -# a booleon option to force compression. It also takes in a string array of tags to be able to save multiple +# a boolean option to force compression. It also takes in a string array of tags to be able to save multiple # tags of the same image to a tarball (each tag should be of the form <image>:<tag>). Upon completion, the ID # of the image is returned. If the image cannot be found in local storage, an [ImageNotFound](#ImageNotFound) # error will be returned. See also [ImportImage](ImportImage). @@ -915,7 +915,7 @@ method ListPods() -> (pods: []ListPodData) # ~~~ method GetPod(name: string) -> (pod: ListPodData) -# InspectPod takes the name or ID of an image and returns a string respresentation of data associated with the +# InspectPod takes the name or ID of an image and returns a string representation of data associated with the # pod. You must serialize the string into JSON to use it further. A [PodNotFound](#PodNotFound) error will # be returned if the pod cannot be found. method InspectPod(name: string) -> (pod: string) diff --git a/contrib/cirrus/logcollector.sh b/contrib/cirrus/logcollector.sh new file mode 100755 index 000000000..425a619b0 --- /dev/null +++ b/contrib/cirrus/logcollector.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +set -e + +source $(dirname $0)/lib.sh + +req_env_var CIRRUS_WORKING_DIR OS_RELEASE_ID + +# Assume there are other log collection commands to follow - Don't +# let one break another that may be useful, but also keep any +# actual script-problems fatal so they are noticed right away. +showrun() { + echo '+ '$(printf " %q" "$@") + set +e + echo '------------------------------------------------------------' + "$@" + local status=$? + [[ $status -eq 0 ]] || \ + echo "[ rc = $status -- proceeding anyway ]" + echo '------------------------------------------------------------' + set -e +} + +case $1 in + audit) + case $OS_RELEASE_ID in + ubuntu) showrun cat /var/log/kern.log ;; + fedora) showrun cat /var/log/audit/audit.log ;; + *) bad_os_id_ver ;; + esac + ;; + df) showrun df -lhTx tmpfs ;; + ginkgo) showrun cat $CIRRUS_WORKING_DIR/test/e2e/ginkgo-node-*.log ;; + journal) showrun journalctl -b ;; + *) die 1 "Warning, $(basename $0) doesn't know how to handle the parameter '$1'" +esac diff --git a/contrib/cirrus/system_test.sh b/contrib/cirrus/system_test.sh index a2cc1af05..cbc481d6b 100755..120000 --- a/contrib/cirrus/system_test.sh +++ b/contrib/cirrus/system_test.sh @@ -1,21 +1 @@ -#!/bin/bash - -set -e -source $(dirname $0)/lib.sh - -req_env_var GOSRC OS_RELEASE_ID OS_RELEASE_VER - -set -x -cd "$GOSRC" - -case "${OS_RELEASE_ID}" in - ubuntu) ;& # Continue to the next item - fedora) - make install.tools - make - make test-binaries - ;; - *) bad_os_id_ver ;; -esac - -make localsystem +integration_test.sh
\ No newline at end of file diff --git a/docs/podman-build.1.md b/docs/podman-build.1.md index 12e8c3bf0..120573235 100644 --- a/docs/podman-build.1.md +++ b/docs/podman-build.1.md @@ -172,7 +172,7 @@ value can be entered. The password is entered without echo. This is a Docker specific option to disable image verification to a Docker registry and is not supported by Podman. This flag is a NOOP and provided -soley for scripting compatibility. +solely for scripting compatibility. **--dns**=*dns* diff --git a/docs/podman-commit.1.md b/docs/podman-commit.1.md index bf0df0dda..a269d0fae 100644 --- a/docs/podman-commit.1.md +++ b/docs/podman-commit.1.md @@ -58,7 +58,7 @@ Suppress output ## EXAMPLES ``` -$ podman commit --change CMD=/bin/bash --change ENTRYPOINT=/bin/sh --change LABEL=blue=image reverent_golick image-commited +$ podman commit --change CMD=/bin/bash --change ENTRYPOINT=/bin/sh --change LABEL=blue=image reverent_golick image-committed Getting image source signatures Copying blob sha256:b41deda5a2feb1f03a5c1bb38c598cbc12c9ccd675f438edc6acd815f7585b86 25.80 MB / 25.80 MB [======================================================] 0s @@ -70,17 +70,17 @@ e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8 ``` ``` -$ podman commit -q --message "committing container to image" reverent_golick image-commited +$ podman commit -q --message "committing container to image" reverent_golick image-committed e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8 ``` ``` -$ podman commit -q --author "firstName lastName" reverent_golick image-commited +$ podman commit -q --author "firstName lastName" reverent_golick image-committed e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8 ``` ``` -$ podman commit -q --pause=false containerID image-commited +$ podman commit -q --pause=false containerID image-committed e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8 ``` diff --git a/docs/podman-create.1.md b/docs/podman-create.1.md index a4eebef4c..9ab7b201a 100644 --- a/docs/podman-create.1.md +++ b/docs/podman-create.1.md @@ -55,11 +55,11 @@ Block IO weight (relative weight) accepts a weight value between 10 and 1000. Block IO weight (relative device weight, format: `DEVICE_NAME:WEIGHT`). -**--cap-add**=*capabilitiy* +**--cap-add**=*capability* Add Linux capabilities -**--cap-drop**=*capabilitiy* +**--cap-drop**=*capability* Drop Linux capabilities @@ -382,7 +382,7 @@ Not implemented **--log-driver**="*k8s-file*" -Logging driver for the container. Currently not supported. This flag is a NOOP provided soley for scripting compatibility. +Logging driver for the container. Currently not supported. This flag is a NOOP provided solely for scripting compatibility. **--log-opt**=*path* diff --git a/docs/podman-generate-kube.1.md b/docs/podman-generate-kube.1.md index 88d8e9627..76baad83a 100644 --- a/docs/podman-generate-kube.1.md +++ b/docs/podman-generate-kube.1.md @@ -20,7 +20,7 @@ Output to the given file, instead of STDOUT. If the file already exists, `genera **--service**, **-s** -Generate a Kubernetes service object in addition to the Pods. Used to generate a Service specification for the corresponding Pod ouput. In particular, if the object has portmap bindings, the service specification will include a NodePort declaration to expose the service. A +Generate a Kubernetes service object in addition to the Pods. Used to generate a Service specification for the corresponding Pod output. In particular, if the object has portmap bindings, the service specification will include a NodePort declaration to expose the service. A random port is assigned by Podman in the specification. ## Examples diff --git a/docs/podman-run.1.md b/docs/podman-run.1.md index 123f7ee5f..c678d2a4c 100644 --- a/docs/podman-run.1.md +++ b/docs/podman-run.1.md @@ -395,7 +395,7 @@ Not implemented **--log-driver**="*k8s-file*" -Logging driver for the container. Currently not supported. This flag is a NOOP provided soley for scripting compatibility. +Logging driver for the container. Currently not supported. This flag is a NOOP provided solely for scripting compatibility. **--log-opt**=*path* diff --git a/docs/podman.1.md b/docs/podman.1.md index 84e695d23..c23075718 100644 --- a/docs/podman.1.md +++ b/docs/podman.1.md @@ -90,6 +90,8 @@ Storage driver option, Default storage driver options are configured in /etc/con output logging information to syslog as well as the console +On remote clients, logging is directed to the file ~/.config/containers/podman.log + **--version**, **-v** Print the version @@ -106,13 +108,13 @@ the exit codes follow the `chroot` standard, see below: Error: unknown flag: --foo 125 -**_126_** if executing a **_contained command_** and the the **_command_** cannot be invoked +**_126_** if executing a **_contained command_** and the **_command_** cannot be invoked $ podman run busybox /etc; echo $? Error: container_linux.go:346: starting container process caused "exec: \"/etc\": permission denied": OCI runtime error 126 -**_127_** if executing a **_contained command_** and the the **_command_** cannot be found +**_127_** if executing a **_contained command_** and the **_command_** cannot be found $ podman run busybox foo; echo $? Error: container_linux.go:346: starting container process caused "exec: \"foo\": executable file not found in $PATH": OCI runtime error 127 diff --git a/libpod/container_internal_linux.go b/libpod/container_internal_linux.go index 0be5427d9..55cc5089b 100644 --- a/libpod/container_internal_linux.go +++ b/libpod/container_internal_linux.go @@ -424,7 +424,7 @@ func (c *Container) generateSpec(ctx context.Context) (*spec.Spec, error) { // It also expects to be able to write to /sys/fs/cgroup/systemd and /var/log/journal func (c *Container) setupSystemd(mounts []spec.Mount, g generate.Generator) error { options := []string{"rw", "rprivate", "noexec", "nosuid", "nodev"} - for _, dest := range []string{"/run"} { + for _, dest := range []string{"/run", "/run/lock"} { if MountExists(mounts, dest) { continue } diff --git a/libpod/image/pull.go b/libpod/image/pull.go index cb7411ce5..644a9ae86 100644 --- a/libpod/image/pull.go +++ b/libpod/image/pull.go @@ -149,6 +149,13 @@ func (ir *Runtime) pullGoalFromImageReference(ctx context.Context, srcRef types. // Need to load in all the repo tags from the manifest res := []pullRefPair{} for _, dst := range manifest[0].RepoTags { + //check if image exists and gives a warning of untagging + localImage, err := ir.NewFromLocal(dst) + imageID := strings.TrimSuffix(manifest[0].Config, ".json") + if err == nil && imageID != localImage.ID() { + logrus.Errorf("the image %s already exists, renaming the old one with ID %s to empty string", dst, localImage.ID()) + } + pullInfo, err := ir.getPullRefPair(srcRef, dst) if err != nil { return nil, err @@ -168,7 +175,6 @@ func (ir *Runtime) pullGoalFromImageReference(ctx context.Context, srcRef types. if err != nil { return nil, errors.Wrapf(err, "error loading manifest for %q", srcRef) } - var dest string if manifest.Annotations == nil || manifest.Annotations["org.opencontainers.image.ref.name"] == "" { // If the input image has no image.ref.name, we need to feed it a dest anyways diff --git a/logo/podman-logo-source.svg b/logo/podman-logo-source.svg deleted file mode 100644 index 7964b8326..000000000 --- a/logo/podman-logo-source.svg +++ /dev/null @@ -1,608 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="864.88531" - height="221.40775" - viewBox="0 0 228.83423 58.580801" - version="1.1" - id="svg194630" - inkscape:version="0.92.2 2405546, 2018-03-11" - sodipodi:docname="podman-source.svg"> - <defs - id="defs194624"> - <inkscape:path-effect - is_visible="true" - id="path-effect10334-3" - effect="spiro" /> - <inkscape:path-effect - effect="spiro" - id="path-effect10336-6" - is_visible="true" /> - <inkscape:path-effect - is_visible="true" - id="path-effect9986-7" - effect="spiro" /> - <inkscape:path-effect - effect="spiro" - id="path-effect9984-5" - is_visible="true" /> - <inkscape:path-effect - effect="spiro" - id="path-effect10300-3" - is_visible="true" /> - <inkscape:path-effect - is_visible="true" - id="path-effect10304-5" - effect="spiro" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="0.35" - inkscape:cx="71.014106" - inkscape:cy="693.56104" - inkscape:document-units="mm" - inkscape:current-layer="layer1" - showgrid="false" - units="px" - fit-margin-top="20" - fit-margin-left="20" - fit-margin-right="20" - fit-margin-bottom="20" - inkscape:window-width="1712" - inkscape:window-height="899" - inkscape:window-x="0" - inkscape:window-y="27" - inkscape:window-maximized="1" /> - <metadata - id="metadata194627"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> - </cc:Work> - </rdf:RDF> - </metadata> - <g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(90.226649,-273.75722)"> - <g - transform="translate(997.58958,163.05706)" - id="g194622"> - <text - id="text194074" - y="150.27197" - x="-1022.7543" - style="font-style:normal;font-weight:normal;font-size:37.59195328px;line-height:22.55517006px;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#892ca0;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - xml:space="preserve" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868"><tspan - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Montserrat;-inkscape-font-specification:Montserrat;fill:#892ca0;fill-opacity:1;stroke-width:0.26458332px" - y="150.27197" - x="-1022.7543" - id="tspan194072" - sodipodi:role="line">pod<tspan - id="tspan194070" - style="fill:#000000">man</tspan></tspan></text> - <g - id="g194220" - transform="translate(-2257.9336,340.05556)"> - <path - id="path194076" - d="m 1200.0567,-176.59543 -19.2981,-9.23285 -4.8204,-20.8616 13.2871,-16.78059 21.3893,-0.0641 13.3849,16.70113 -4.699,20.88969 z" - style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#892ca0;stroke-width:1.0583334;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - inkscape:connector-curvature="0" /> - <path - style="fill:none;fill-rule:evenodd;stroke:#cccccc;stroke-width:0.79375005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.95294118" - d="m 1189.7397,-221.65207 1.5045,2.52085" - id="path194078" - inkscape:connector-curvature="0" /> - <path - inkscape:connector-curvature="0" - id="path194080" - d="m 1209.7268,-221.94151 -1.4308,2.56335" - style="fill:none;fill-rule:evenodd;stroke:#cccccc;stroke-width:0.79375005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.95294118" /> - <g - id="g194084" - inkscape:transform-center-x="-17.08132" - inkscape:transform-center-y="5.3335262" - transform="rotate(106.71323,1247.9186,-137.82522)"> - <path - style="fill:none;fill-rule:evenodd;stroke:#cccccc;stroke-width:0.79375005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.95294118" - d="m 1189.7571,-94.267724 1.4678,2.542367" - id="path194082" - inkscape:connector-curvature="0" /> - </g> - <g - transform="matrix(0.28758168,0.95775612,0.95775612,-0.28758168,925.52985,-1372.6632)" - inkscape:transform-center-y="5.3335446" - inkscape:transform-center-x="17.08132" - id="g194088"> - <path - inkscape:connector-curvature="0" - id="path194086" - d="m 1189.7571,-94.267724 1.4678,2.542367" - style="fill:none;fill-rule:evenodd;stroke:#cccccc;stroke-width:0.79375005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.95294118" /> - </g> - <path - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1217.3928,-198.86664 c -1.6026,0.3763 -2.7924,0.4881 -4.4867,0.49355" - id="path194090" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cc" /> - <g - style="stroke-width:1.07322586" - transform="matrix(0.93201038,0,0,0.93153044,84.668387,39.521136)" - id="g194148"> - <path - style="opacity:1;fill:#d7d8da;fill-opacity:1;stroke:#000000;stroke-width:0.85187292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1196.4002,-277.28841 c -6.3145,0 -11.4334,5.11824 -11.4334,11.4319 0,5.60953 0.1555,10.87478 -3.8973,11.52796 2.2201,1.74955 31.1822,1.47773 31.1822,0.0657 -3.9446,-0.40986 -3.9311,-5.05055 -4.1745,-11.47895 -0.2435,-6.42839 -5.3624,-11.54663 -11.677,-11.54663 z" - id="path194092" - inkscape:connector-curvature="0" - sodipodi:nodetypes="sccccs" /> - <ellipse - ry="1.2784375" - rx="1.2185711" - cy="-221.69182" - cx="1196.4897" - id="ellipse194094" - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.85187298;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - transform="matrix(0.99938194,-0.03515294,0.03512104,0.99938307,0,0)" /> - <ellipse - ry="3.3919933" - rx="3.8366725" - cy="-224.76184" - cx="1205.7982" - id="ellipse194096" - style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#60605b;stroke-width:0.85187823;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - transform="matrix(0.99946418,-0.03273147,0.0377188,0.99928839,0,0)" /> - <path - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - sodipodi:nodetypes="csc" - inkscape:original-d="m 1203.9748,-270.3367 c -0.4929,-0.18136 -0.8779,-0.48319 -1.375,-0.66415 -0.4972,-0.18083 -0.9228,0.4235 -1.3258,0.57498" - inkscape:path-effect="#path-effect10334-3" - inkscape:connector-curvature="0" - id="path194098" - d="m 1203.9748,-270.3367 c -0.3302,-0.40944 -0.849,-0.66007 -1.375,-0.66415 -0.4959,-0.004 -0.9897,0.21029 -1.3258,0.57498" - style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.56791532;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> - <g - transform="matrix(0.69366503,-0.00293008,0.00289825,0.69135666,529.16872,-257.19815)" - style="stroke-width:0.82007539;stroke-miterlimit:4;stroke-dasharray:none" - id="g194106"> - <g - transform="translate(0,-0.52916667)" - id="g194104" - style="stroke-width:0.82007539;stroke-miterlimit:4;stroke-dasharray:none"> - <path - sodipodi:nodetypes="cccc" - inkscape:connector-curvature="0" - id="path194100" - d="m 962.30591,-5.7829972 0.0993,1.9843749 c 0,0 1.58751,1.4221355 2.51355,-0.033073 0,0 -0.0993,-0.8268214 -0.16541,-1.0914047" - style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.82007539;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.82007539;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 962.28751,-5.7829972 -0.0993,1.9843749 c 0,0 -1.58751,1.4221355 -2.51355,-0.033073 0,0 0.0993,-0.8268214 0.16541,-1.0914047" - id="path194102" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cccc" /> - </g> - </g> - <path - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - sodipodi:nodetypes="cszsccc" - inkscape:connector-curvature="0" - d="m 1197.9362,-265.07184 c -0.1012,-0.25799 -0.1029,-0.77483 -0.4026,-0.77357 -0.2995,0.002 -0.5774,-0.1914 -0.872,-0.19011 -0.2946,0.002 -0.571,0.19636 -0.8707,0.19765 -0.2993,0.002 -0.2975,0.51817 -0.396,0.77704 -0.1011,0.25897 1.275,1.09288 1.275,1.09288 0,0 1.3673,-0.84575 1.2663,-1.10389 z" - style="fill:#808080;fill-opacity:1;stroke:#000000;stroke-width:0.56791532;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="path194108" /> - <path - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.56791532;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - d="m 1188.9919,-270.28459 c 0.3005,-0.43161 0.8005,-0.71808 1.3248,-0.75912 0.4944,-0.0387 1.002,0.14023 1.3629,0.48043" - id="path194110" - inkscape:connector-curvature="0" - inkscape:path-effect="#path-effect10336-6" - inkscape:original-d="m 1188.9919,-270.28459 c 0.479,-0.21554 0.8417,-0.54368 1.3248,-0.75912 0.4832,-0.21531 0.9505,0.35763 1.3629,0.48043" - sodipodi:nodetypes="csc" /> - <g - style="stroke-width:1.07322586" - id="g194116" - transform="translate(-0.1322934,-148.99351)"> - <ellipse - transform="matrix(-0.99938215,0.03514721,0.03512674,0.99938287,0,0)" - style="fill:#000000;fill-opacity:1;stroke:#892ca0;stroke-width:0.8518728;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="ellipse194112" - cx="-1206.3459" - cy="-75.635956" - rx="1.8695227" - ry="1.9430941" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <ellipse - transform="matrix(0.99938215,-0.03514721,0.03512674,0.99938287,0,0)" - ry="0.96816051" - rx="0.91933995" - cy="-76.182663" - cx="1206.9153" - id="ellipse194114" - style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.8518728;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - </g> - <g - transform="matrix(-0.86763199,-0.04368486,-0.04400126,0.8648962,2029.5877,-215.68906)" - style="stroke:#60605b;stroke-width:0.65475416;stroke-miterlimit:4;stroke-dasharray:none" - id="g194126"> - <g - id="g194124" - style="stroke-width:0.65475416"> - <path - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.65475416;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 956.32834,-6.2874931 c -2.17461,0.00852 -3.90258,0.727992 -5.25392,1.62519" - id="path194118" - inkscape:connector-curvature="0" /> - <path - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.65475416;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 957.00529,-5.3889116 c -2.45021,0.3102076 -3.99116,1.6666651 -5.21618,2.999397" - id="path194120" - inkscape:connector-curvature="0" /> - <path - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.65475416;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 957.14608,-4.4502461 c -2.0377,0.8062397 -3.03766,2.4684328 -3.7999,4.05763317" - id="path194122" - inkscape:connector-curvature="0" /> - </g> - </g> - <g - id="g194136" - style="stroke:#60605b;stroke-width:0.65475416;stroke-miterlimit:4;stroke-dasharray:none" - transform="matrix(0.86340059,-0.09610492,0.09623303,0.86064955,368.1354,-165.50024)"> - <g - style="stroke-width:0.65475416" - id="g194134"> - <path - inkscape:connector-curvature="0" - id="path194128" - d="m 956.32834,-6.2874931 c -2.17461,0.00852 -3.90258,0.727992 -5.25392,1.62519" - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.65475416;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - inkscape:connector-curvature="0" - id="path194130" - d="m 957.00529,-5.3889116 c -2.45021,0.3102076 -3.99116,1.6666651 -5.21618,2.999397" - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.65475416;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - inkscape:connector-curvature="0" - id="path194132" - d="m 956.99206,-4.4197862 c -2.0377,0.8062397 -3.03766,2.4684328 -3.7999,4.05763312" - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.65475416;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - </g> - </g> - <g - style="stroke-width:1.07322586" - id="g194142" - transform="translate(-0.1322934,-149.16808)"> - <ellipse - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - ry="1.9430944" - rx="1.8695223" - cy="-87.545464" - cx="1193.2991" - id="ellipse194138" - style="fill:#000000;fill-opacity:1;stroke:#892ca0;stroke-width:0.8518728;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(0.99967764,-0.0253894,0.02538424,0.99967777,0,0)" /> - <ellipse - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.8518728;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="ellipse194140" - cx="-1192.7297" - cy="-88.092163" - rx="0.91933978" - ry="0.96816063" - transform="matrix(-0.99967764,0.0253894,0.02538424,0.99967777,0,0)" /> - </g> - <ellipse - transform="matrix(0.99938194,-0.03515294,0.03512104,0.99938307,0,0)" - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.85187298;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - id="ellipse194144" - cx="1214.1729" - cy="-221.06982" - rx="1.2185711" - ry="1.2784375" /> - <path - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.85187304;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1196.6606,-258.19566 a 8.2351559,7.2429689 0 0 0 -7.6956,4.68912 c 4.7591,0.2089 10.6723,0.19768 15.4021,0.0114 a 8.2351559,7.2429689 0 0 0 -7.7065,-4.7005 z" - id="path194146" - inkscape:connector-curvature="0" /> - </g> - <path - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374999;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1219.0623,-197.2163 c -3.5719,1.43037 -11.1149,1.14699 -18.2221,1.17499 -7.1072,0.028 -15.5965,-0.27284 -17.0071,-1.69572" - id="path194150" - inkscape:connector-curvature="0" - sodipodi:nodetypes="csc" /> - <path - style="opacity:1;fill:#d7d8da;fill-opacity:1;stroke:#000000;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1198.4754,-191.15273 c 0,1.00704 0,1.99863 -0.017,2.94659 6.3077,1.15754 12.6043,1.18012 18.5208,0.0181 -0.042,-0.89578 -0.071,-1.85458 -0.1064,-2.86597 -0.1939,-5.53538 -4.2687,-9.41337 -9.2955,-9.41338 -5.0269,-1e-5 -9.1019,3.87807 -9.1019,9.31466 z" - id="path194152" - inkscape:connector-curvature="0" - sodipodi:nodetypes="sccczs" /> - <ellipse - ry="1.1909043" - rx="1.1357201" - cy="-148.3954" - cx="1206.6315" - id="ellipse194154" - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.79374999;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - transform="matrix(0.99938258,-0.03513486,0.03513911,0.99938243,0,0)" /> - <path - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - sodipodi:nodetypes="csc" - inkscape:original-d="m 1213.5138,-196.08059 c -0.3776,-0.13889 -0.6726,-0.37001 -1.0534,-0.5086 -0.3809,-0.13847 -0.7069,0.32432 -1.0158,0.4403" - inkscape:path-effect="#path-effect9986-7" - inkscape:connector-curvature="0" - id="path194156" - d="m 1213.5138,-196.08059 c -0.253,-0.31355 -0.6505,-0.50546 -1.0534,-0.5086 -0.3799,-0.003 -0.7582,0.161 -1.0158,0.4403" - style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> - <path - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - d="m 1202.0344,-196.04037 c 0.2304,-0.33054 0.6134,-0.54988 1.0151,-0.5813 0.3788,-0.0296 0.7676,0.10738 1.0442,0.36791" - id="path194158" - inkscape:connector-curvature="0" - inkscape:path-effect="#path-effect9984-5" - inkscape:original-d="m 1202.0344,-196.04037 c 0.3671,-0.16505 0.645,-0.41631 1.0151,-0.5813 0.3701,-0.1649 0.7281,0.27386 1.0442,0.36791" - sodipodi:nodetypes="csc" /> - <ellipse - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - ry="1.4879755" - rx="1.432372" - cy="-150.7608" - cx="-1218.6735" - id="ellipse194160" - style="fill:#000000;fill-opacity:1;stroke:#892ca0;stroke-width:0.79374987;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(-0.99938278,0.03512913,0.03514482,0.99938223,0,0)" /> - <ellipse - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.79374987;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="ellipse194162" - cx="1219.1096" - cy="-151.17946" - rx="0.70437056" - ry="0.74139434" - transform="matrix(0.99938278,-0.03512913,0.03514482,0.99938223,0,0)" /> - <path - id="path194164" - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1218.7033,-188.67623 -1.6617,0.47913 c -5.9787,1.17108 -12.2753,1.1485 -18.583,-0.009 l -2.5256,-0.47009" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cccc" /> - <g - transform="matrix(-0.54020821,-0.0266189,-0.02739623,0.52701539,1727.0536,-162.01736)" - style="stroke:#60605b;stroke-width:0.99047768;stroke-miterlimit:4;stroke-dasharray:none" - id="g194168"> - <path - inkscape:connector-curvature="0" - d="m 957.14608,-4.4502461 c -2.0377,0.8062397 -3.03766,2.4684328 -3.7999,4.05763317 m 3.65911,-4.99629867 c -2.45021,0.3102076 -3.99116,1.6666651 -5.21618,2.999397 m 4.53923,-3.8979785 c -2.17461,0.00852 -3.90258,0.727992 -5.25392,1.62519" - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.99047768;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - id="path194166" /> - </g> - <g - transform="matrix(0.53757364,-0.05856052,0.05991696,0.52442773,691.53583,-131.42451)" - id="g194176" - style="stroke:#60605b;stroke-width:0.99047768;stroke-miterlimit:4;stroke-dasharray:none"> - <path - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.99047768;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 956.32834,-6.2874931 c -2.17461,0.00852 -3.90258,0.727992 -5.25392,1.62519" - id="path194170" - inkscape:connector-curvature="0" /> - <path - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.99047768;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 957.00529,-5.3889116 c -2.45021,0.3102076 -3.99116,1.6666651 -5.21618,2.999397" - id="path194172" - inkscape:connector-curvature="0" /> - <path - style="fill:none;fill-rule:evenodd;stroke:#60605b;stroke-width:0.99047768;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 956.99206,-4.4197862 c -2.0377,0.8062397 -3.03766,2.4684328 -3.7999,4.05763312" - id="path194174" - inkscape:connector-curvature="0" /> - </g> - <ellipse - transform="matrix(0.99967797,-0.02537634,0.02539731,0.99967744,0,0)" - style="fill:#000000;fill-opacity:1;stroke:#892ca0;stroke-width:0.79374987;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="ellipse194178" - cx="1207.7616" - cy="-162.88258" - rx="1.4323721" - ry="1.4879751" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <ellipse - transform="matrix(-0.99967797,0.02537634,0.02539731,0.99967744,0,0)" - ry="0.74139422" - rx="0.70437062" - cy="-163.30124" - cx="-1207.3254" - id="ellipse194180" - style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.79374987;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <ellipse - transform="matrix(0.99938258,-0.03513486,0.03513911,0.99938243,0,0)" - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.79374999;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - id="ellipse194182" - cx="1221.1841" - cy="-147.88377" - rx="1.1357201" - ry="1.1909043" /> - <ellipse - ry="2.7544067" - rx="2.9848497" - cy="-149.08769" - cx="1214.015" - id="ellipse194184" - style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#60605b;stroke-width:0.79375076;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - transform="matrix(0.99941617,-0.03416617,0.0361353,0.99934691,0,0)" /> - <path - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - sodipodi:nodetypes="cscsccc" - inkscape:connector-curvature="0" - d="m 1209.0947,-191.32793 c -0.094,-0.24033 -0.1023,-0.66114 -0.3752,-0.72061 l -0.8127,-0.17709 -0.8115,0.18412 c -0.2721,0.0618 -0.2773,0.48269 -0.3691,0.72384 -0.094,0.24123 1.1883,1.01805 1.1883,1.01805 0,0 1.2743,-0.78785 1.1802,-1.02831 z" - style="fill:#808080;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="path194186" /> - <path - style="opacity:1;fill:#ff8080;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1207.7699,-190.02101 c -0.07,0.11114 -0.1741,0.2003 -0.2946,0.25322 -0.1288,0.0562 -0.2743,0.0709 -0.4134,0.0495 -0.098,-0.0151 -0.1933,-0.0497 -0.2806,-0.0977 0,0.005 0,0.01 0,0.015 0,0.62103 0.5035,1.12448 1.1245,1.12448 0.621,0 1.1244,-0.50345 1.1244,-1.12448 10e-5,-0.005 10e-5,-0.008 0,-0.0129 -0.087,0.047 -0.1801,0.0808 -0.2774,0.0956 -0.1391,0.0212 -0.2847,0.007 -0.4135,-0.0495 -0.1204,-0.0529 -0.2242,-0.14208 -0.2945,-0.25322 -0.1839,-0.45256 -0.15,-0.33357 -0.2749,0 z" - id="path194188" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cccccscccccc" /> - <path - sodipodi:nodetypes="cc" - inkscape:connector-curvature="0" - d="m 1208.9056,-185.61743 c -7.1727,0.14599 -10.811,-0.41013 -16.8091,-1.86816" - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - id="path194190" /> - <path - id="path194192" - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374999;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1210.5635,-183.66873 c -3.2099,0.35365 -5.8695,0.42038 -8.7157,0.008" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cc" /> - <path - sodipodi:nodetypes="sccczs" - inkscape:connector-curvature="0" - id="path194194" - d="m 1182.9959,-193.76305 c 0,0.81341 0,1.61437 -0.013,2.38006 4.5482,0.93499 9.0885,0.95323 13.3546,0.0146 -0.029,-0.72355 -0.052,-1.49801 -0.077,-2.31495 -0.1398,-4.47113 -3.2525,-6.51948 -6.6971,-6.51948 -3.4446,0 -6.5675,2.04843 -6.5675,6.43977 z" - style="opacity:1;fill:#d7d8da;fill-opacity:1;stroke:#000000;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - d="m 1193.6324,-197.30544 c -0.184,-0.21557 -0.4648,-0.34527 -0.7482,-0.34568 -0.2696,-3.9e-4 -0.5374,0.11563 -0.7215,0.31258" - id="path194196" - inkscape:connector-curvature="0" - inkscape:path-effect="#path-effect10300-3" - inkscape:original-d="m 1193.6324,-197.30544 c -0.2681,-0.0673 -0.4777,-0.27852 -0.7482,-0.34568 -0.2705,-0.0671 -0.5021,0.25638 -0.7215,0.31258" - sodipodi:nodetypes="csc" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <path - sodipodi:nodetypes="csc" - inkscape:original-d="m 1185.4425,-197.28587 c 0.2607,-0.08 0.4581,-0.30096 0.721,-0.38091 0.2629,-0.0799 0.5172,0.23193 0.7416,0.27751" - inkscape:path-effect="#path-effect10304-5" - inkscape:connector-curvature="0" - id="path194198" - d="m 1185.4425,-197.28587 c 0.171,-0.22212 0.4411,-0.36483 0.721,-0.38091 0.2712,-0.0156 0.5472,0.0877 0.7416,0.27751" - style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <ellipse - transform="matrix(-0.99939588,0.03475453,0.03552362,0.99936884,0,0)" - style="fill:#000000;fill-opacity:1;stroke:#892ca0;stroke-width:0.79374999;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="ellipse194200" - cx="-1199.4635" - cy="-153.15971" - rx="1.2560792" - ry="1.2909421" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <ellipse - transform="matrix(0.99939588,-0.03475453,0.03552362,0.99936884,0,0)" - ry="0.64322108" - rx="0.6176784" - cy="-153.52293" - cx="1199.8459" - id="ellipse194202" - style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.79374999;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <ellipse - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - ry="1.2909336" - rx="1.2560872" - cy="-164.91208" - cx="1190.6571" - id="ellipse194204" - style="fill:#000000;fill-opacity:1;stroke:#892ca0;stroke-width:0.79374993;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(0.99968481,-0.02510557,0.02567121,0.99967044,0,0)" /> - <path - sodipodi:nodetypes="cccccc" - inkscape:connector-curvature="0" - id="path194206" - transform="matrix(0.26458334,0,0,0.26458334,619.60435,-79.242757)" - d="m 2154.0312,-434.57031 c -4.4701,0.15199 -7.9731,3.60605 -7.8242,7.71484 0.052,1.39375 0.5293,4.24714 1.377,5.40104 4.4988,0.24291 8.9701,0.26971 13.3222,0.0957 1.0211,-1.32719 1.5437,-4.42574 1.4883,-6.04752 -0.1491,-4.10861 -3.8934,-7.31601 -8.3633,-7.16406 z" - style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#60605b;stroke-width:2.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" /> - <ellipse - inkscape:export-ydpi="89.962868" - inkscape:export-xdpi="89.962868" - style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.79374993;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="ellipse194208" - cx="-1190.2747" - cy="-165.2753" - rx="0.61768228" - ry="0.64321685" - transform="matrix(-0.99968481,0.02510557,0.02567121,0.99967044,0,0)" /> - <path - id="path194210" - style="fill:#808080;fill-opacity:1;stroke:#000000;stroke-width:0.5291667;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - d="m 1190.4633,-192.29709 c -0.069,-0.17514 -0.076,-0.4818 -0.2773,-0.52514 l -0.6006,-0.12906 -0.5998,0.13418 c -0.2011,0.045 -0.2049,0.35176 -0.2728,0.52749 -0.069,0.1758 0.8783,0.7419 0.8783,0.7419 0,0 0.9418,-0.57414 0.8722,-0.74937 z" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cscsccc" - inkscape:export-xdpi="89.962868" - inkscape:export-ydpi="89.962868" /> - <path - sodipodi:nodetypes="cc" - inkscape:connector-curvature="0" - id="path194212" - d="m 1181.9907,-189.53092 c 2.7637,0.72901 4.8155,0.94562 7.7375,0.95618" - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <ellipse - transform="matrix(0.99938258,-0.03513486,0.03513911,0.99938243,0,0)" - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.79374999;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - id="ellipse194214" - cx="1199.9076" - cy="-149.77843" - rx="0.93498713" - ry="0.98041773" /> - <ellipse - ry="0.98041773" - rx="0.93498713" - cy="-150.07587" - cx="1191.4463" - id="ellipse194216" - style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:none;stroke-width:0.79374999;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:5.99999952;stroke-opacity:1" - transform="matrix(0.99938258,-0.03513486,0.03513911,0.99938243,0,0)" /> - <path - style="opacity:1;fill:none;fill-opacity:1;stroke:#3c6eb4;stroke-width:0.79374993;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 1181.2324,-191.77986 c 5.5275,1.45801 11.8484,1.34886 16.4006,0.10007" - id="path194218" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cc" /> - </g> - </g> - </g> -</svg> diff --git a/logo/podman-logo.svg b/logo/podman-logo.svg new file mode 100644 index 000000000..b7e008350 --- /dev/null +++ b/logo/podman-logo.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="3.68 3.68 848.64 213.64"><title>Podman logo</title><defs><style>.cls-1{isolation:isolate}.cls-2{fill:#892ca0}.cls-3{fill:#fff}.cls-4{opacity:.95294}.cls-5{fill:#ccc}.cls-6{fill:#3c6eb4}.cls-7{fill:#d7d8da}.cls-8{fill:#f1f1f1}.cls-9{fill:#60605b}.cls-10{fill:gray}</style></defs><g class="cls-1"><path d="M335.98 112.339c0 22.163-14.492 37.65-35.661 37.65-13.355 0-23.585-6.11-29.126-16.481v43.617h-11.081V74.689h11.081v16.197c5.541-10.514 15.77-16.623 28.842-16.623 21.17 0 35.944 15.628 35.944 38.076zm-11.224-.284c0-16.055-11.082-27.847-26.71-27.847-15.77 0-26.853 11.65-26.853 27.847 0 16.339 11.082 27.846 26.853 27.846 15.628 0 26.71-11.649 26.71-27.846zm99.028 0c0 22.447-15.77 37.933-37.933 37.933-22.164 0-37.935-15.486-37.935-37.933 0-22.306 15.77-37.65 37.935-37.65 22.163 0 37.933 15.344 37.933 37.65zm-64.786.142c0 16.48 11.224 27.846 26.853 27.846 15.628 0 26.851-11.365 26.851-27.846 0-16.339-11.223-27.705-26.851-27.705-15.63 0-26.853 11.366-26.853 27.705zm153.017 37.366h-11.081v-16.055c-5.541 10.513-15.77 16.623-29.126 16.623-21.311 0-36.087-15.77-36.087-38.076 0-22.448 14.776-37.934 35.945-37.934 13.354 0 23.727 6.109 29.268 16.765V44.143h11.08zm-11.081-37.224c0-16.339-11.225-28.131-26.995-28.131-15.913 0-27.136 11.792-27.136 28.13 0 16.197 11.223 27.848 27.136 27.848 15.77 0 26.995-11.65 26.995-27.847z" class="cls-2"/></g><path d="M661.05 103.388v46.174h-11.08v-43.19c0-13.355-7.815-21.17-20.743-21.17-15.486.427-24.437 11.509-24.437 27.564v36.796h-11.224v-43.19c0-13.355-7.671-21.17-20.743-21.17-15.343.427-24.579 11.509-24.579 27.564v36.796h-10.94V74.69h10.94v16.907c4.973-11.65 15.06-17.19 28.558-17.333 14.065 0 23.726 7.246 26.851 19.606 4.689-13.213 15.202-19.464 29.552-19.606 17.476 0 27.847 11.082 27.847 29.125zm71.042 34.667c-5.967 8.097-15.486 12.076-27.42 12.076-15.486 0-25.432-9.945-25.432-22.874 0-13.071 10.372-21.311 27.99-21.453h24.578v-4.405c0-10.94-6.82-17.475-20.033-17.475-8.24 0-15.912 3.126-23.726 8.525l-4.689-8.099c9.661-6.393 17.76-10.087 30.546-10.087 18.47 0 28.7 9.803 28.842 25.858l.142 49.442h-10.798zm-.142-14.35v-8.951h-23.3c-12.503 0-19.038 3.836-19.038 12.076s6.677 13.64 17.19 13.64c12.645 0 22.306-6.394 25.148-16.765zm104.143-20.317v46.174h-11.081v-43.19c0-13.213-7.956-21.027-21.17-21.027-14.776.142-23.868 9.803-25.147 24.01v40.207h-11.082V74.69h11.082v16.48c5.257-11.366 15.344-16.765 28.984-16.907 17.901 0 28.414 11.082 28.414 29.125z" class=""/><g id="path194076"><path d="M113.156 199.408L40.22 164.512 22 85.665l50.22-63.423L153.06 22l50.589 63.122-17.76 78.953z" class="cls-3"/><path d="M113.156 201.408a1.997 1.997 0 0 1-.863-.196l-72.938-34.897a1.999 1.999 0 0 1-1.085-1.353L20.05 86.115a2.001 2.001 0 0 1 .382-1.692L70.65 21a2.001 2.001 0 0 1 1.562-.758L153.054 20a2.01 2.01 0 0 1 1.567.749l50.588 63.122a2.001 2.001 0 0 1 .39 1.69l-17.76 78.953a1.999 1.999 0 0 1-1.076 1.36l-72.733 35.333a2.004 2.004 0 0 1-.874.201zm-71.205-38.285l71.198 34.065 71-34.49 17.337-77.076-49.384-61.62-78.914.237-49.023 61.913z" class="cls-2"/></g><g id="path194078" class="cls-4"><path d="M76.507 28.331h1v11.096h-1z" class="cls-5" transform="rotate(-30.828 77.007 33.879)"/></g><g id="path194080" class="cls-4"><path d="M141.453 32.365h11.095v1h-11.095z" class="cls-5" transform="rotate(-60.831 147.001 32.865)"/></g><g id="g194084"><g id="path194082" class="cls-4"><path d="M188.65 88.835h11.095v1H188.65z" class="cls-5" transform="rotate(-13.263 194.198 89.335)"/></g></g><g id="g194088"><g id="path194086" class="cls-4"><path d="M32.412 83.786h1v11.095h-1z" class="cls-5" transform="rotate(-76.714 32.912 89.334)"/></g></g><path d="M161.725 118.099l-.007-2a67.05 67.05 0 0 0 16.733-1.84l.457 1.948a68.793 68.793 0 0 1-17.183 1.892z" class="cls-6" id="path194090"/><g id="path194092"><path d="M111.906 39.964a40.262 40.262 0 0 0-40.275 40.25c0 19.749.548 38.287-13.729 40.586 7.82 6.16 109.842 5.203 109.842.232-13.895-1.443-13.848-17.782-14.705-40.415-.858-22.632-18.89-40.653-41.133-40.653z" class="cls-7"/><path d="M112.618 126.048c-25.659 0-51.36-1.331-55.334-4.462a1 1 0 0 1 .46-1.773c12.923-2.082 12.907-18.488 12.888-37.486l-.001-2.114a41.309 41.309 0 0 1 41.275-41.249c22.74 0 41.247 18.28 42.132 41.615l.11 2.985c.775 21.187 1.287 35.184 13.699 36.472a1 1 0 0 1 .897.995c0 .653-.424 1.189-1.26 1.594-4.394 2.133-29.61 3.423-54.866 3.423zm-51.562-5.028c7.27 1.872 27.569 3.07 52.733 3.075 25.756-.022 44.54-1.277 50.861-2.642-11.237-3.28-11.776-18.008-12.5-37.816l-.111-2.982c-.843-22.257-18.472-39.69-40.133-39.69A39.306 39.306 0 0 0 72.63 80.212l.001 2.112c.018 17.68.035 34.45-11.576 38.695z"/></g><ellipse cx="82.19" cy="88.104" class="cls-8" rx="4.293" ry="4.501" transform="rotate(-2.016 82.19 88.104)" id="ellipse194094"/><g id="ellipse194096"><ellipse cx="112.872" cy="86.505" class="cls-3" rx="13.515" ry="11.942" transform="rotate(-.849 112.872 86.505)"/><path d="M112.816 99.447c-7.758 0-14.188-5.494-14.452-12.462a12.104 12.104 0 0 1 3.352-8.73 15.296 15.296 0 0 1 10.672-4.683c8.016-.247 14.721 5.324 14.99 12.453a12.105 12.105 0 0 1-3.351 8.73 15.295 15.295 0 0 1-10.672 4.683c-.18.006-.36.01-.54.01zm.112-23.884q-.236 0-.474.008a13.284 13.284 0 0 0-9.275 4.049 10.116 10.116 0 0 0-2.816 7.29c.228 6.032 6.034 10.768 12.927 10.53a13.285 13.285 0 0 0 9.273-4.049 10.118 10.118 0 0 0 2.817-7.29c-.223-5.893-5.763-10.538-12.452-10.538z" class="cls-9"/></g><path d="M138.513 65.143l-.314-.39a5.787 5.787 0 0 0-8.757-.288l-.339.368-.735-.678.339-.368a7.045 7.045 0 0 1 5.042-2.185 6.851 6.851 0 0 1 5.228 2.524l.314.39z" id="path194098"/><g id="g194106"><g id="g194104"><path d="M116.61 92.235a6.685 6.685 0 0 1-3.828-1.626l-.157-.138-.273-5.038.998-.055.25 4.61a5.081 5.081 0 0 0 3.37 1.222 2.554 2.554 0 0 0 1.765-1.202c-.084-.652-.264-1.956-.38-2.41l.969-.248c.17.666.417 2.633.427 2.716l.022.178-.096.152a3.615 3.615 0 0 1-2.57 1.804 3.5 3.5 0 0 1-.498.035z" id="path194100"/><path d="M109.073 92.267a3.577 3.577 0 0 1-.467-.03 3.617 3.617 0 0 1-2.585-1.783l-.098-.151.021-.178c.01-.084.24-2.053.405-2.72l.97.239c-.111.456-.28 1.76-.36 2.414a2.555 2.555 0 0 0 1.776 1.187 5.063 5.063 0 0 0 3.359-1.251l.212-4.611 1 .046-.233 5.04-.156.14a6.654 6.654 0 0 1-3.844 1.658z" id="path194102"/></g></g><g id="path194108"><path d="M117.316 82.976c-.356-.908-.362-2.728-1.418-2.724-1.055.008-2.034-.673-3.071-.669-1.038.007-2.012.691-3.067.696-1.055.007-1.048 1.824-1.395 2.736-.356.911 4.49 3.847 4.49 3.847s4.817-2.977 4.462-3.886z" class="cls-10"/><path d="M112.857 87.195l-.148-.09c-1.887-1.143-4.995-3.207-4.609-4.194a6.302 6.302 0 0 0 .222-.854c.197-.916.443-2.055 1.435-2.062a4.672 4.672 0 0 0 1.46-.335 5.125 5.125 0 0 1 1.608-.361h.011a5.081 5.081 0 0 1 1.6.348 3.928 3.928 0 0 0 1.46.321h.005c.99 0 1.244 1.134 1.449 2.045a6.364 6.364 0 0 0 .23.86c.386.982-2.7 3.072-4.575 4.231zm-.02-7.328h-.01a4.625 4.625 0 0 0-1.426.33 5.151 5.151 0 0 1-1.64.366c-.499.003-.68.67-.884 1.613a6.793 6.793 0 0 1-.247.94c-.068.404 1.89 1.983 4.224 3.413 2.316-1.448 4.257-3.04 4.198-3.45a6.68 6.68 0 0 1-.257-.942c-.21-.937-.397-1.6-.894-1.6h-.02a5.147 5.147 0 0 1-1.625-.352 4.596 4.596 0 0 0-1.42-.318z"/></g><path d="M85.934 65.32l-.82-.572.285-.411a6.786 6.786 0 0 1 10.221-1.059l.364.343-.686.728-.363-.343a5.787 5.787 0 0 0-8.715.903z" id="path194110"/><g id="g194116"><g id="ellipse194112"><ellipse cx="134.49" cy="76.249" rx="6.585" ry="6.841" transform="rotate(-2.025 134.49 76.25)"/><path d="M134.501 84.09a7.415 7.415 0 0 1-5.19-2.125 7.925 7.925 0 0 1-2.402-5.45 7.726 7.726 0 0 1 7.305-8.102 7.437 7.437 0 0 1 5.455 2.12 7.929 7.929 0 0 1 2.402 5.45 7.726 7.726 0 0 1-7.305 8.102 7.968 7.968 0 0 1-.265.005zm-.024-13.682a4.1 4.1 0 0 0-.192.004 5.724 5.724 0 0 0-5.377 6.033 5.936 5.936 0 0 0 1.794 4.084 5.391 5.391 0 0 0 3.993 1.557 5.724 5.724 0 0 0 5.377-6.033 5.937 5.937 0 0 0-1.794-4.084 5.434 5.434 0 0 0-3.801-1.56z" class="cls-2"/></g><ellipse cx="136.426" cy="74.255" class="cls-3" rx="3.238" ry="3.409" transform="rotate(-2.022 136.427 74.255)" id="ellipse194114"/></g><g id="g194126"><g id="g194124"><path d="M140.53 96.767a28.42 28.42 0 0 0-15.536-5.66l.053-.998a29.397 29.397 0 0 1 16.076 5.853z" class="cls-9" id="path194118"/><path d="M137.905 103.496c-3.416-4.101-7.891-8.47-15.18-9.764l.174-.984c7.607 1.35 12.243 5.868 15.775 10.108z" class="cls-9" id="path194120"/><path d="M132.76 109.21c-2.107-5.012-4.865-10.018-10.73-12.678l.413-.91c6.179 2.802 9.053 8.001 11.24 13.201z" class="cls-9" id="path194122"/></g></g><g id="g194136"><g id="g194134"><path d="M85.612 97.992l-.64-.767a29.4 29.4 0 0 1 15.691-6.815l.114.993a28.418 28.418 0 0 0-15.165 6.59z" class="cls-9" id="path194128"/><path d="M88.64 104.55l-.806-.593c3.268-4.446 7.622-9.235 15.133-11.043l.234.972c-7.198 1.733-11.4 6.363-14.562 10.664z" class="cls-9" id="path194130"/><path d="M93.662 110.087l-.943-.33c1.867-5.324 4.422-10.687 10.42-13.858l.467.884c-5.693 3.01-8.144 8.174-9.944 13.304z" class="cls-9" id="path194132"/></g></g><g id="g194142"><g id="ellipse194138"><ellipse cx="91.333" cy="76.249" rx="6.585" ry="6.841" transform="rotate(-1.47 91.333 76.25)"/><path d="M91.343 84.09a7.848 7.848 0 0 1-.21-15.68 7.356 7.356 0 0 1 5.435 2.174 8.031 8.031 0 0 1 .28 11.058 7.41 7.41 0 0 1-5.316 2.445 6.075 6.075 0 0 1-.189.003zm-.02-13.682c-.046 0-.092 0-.138.002a5.847 5.847 0 0 0 .296 11.678 5.428 5.428 0 0 0 3.892-1.797 6.03 6.03 0 0 0-.21-8.285 5.434 5.434 0 0 0-3.84-1.598z" class="cls-2"/></g><ellipse cx="89.279" cy="74.376" class="cls-3" rx="3.238" ry="3.409" transform="rotate(-1.466 89.285 74.38)" id="ellipse194140"/></g><ellipse cx="144.518" cy="88.104" class="cls-8" rx="4.293" ry="4.501" transform="rotate(-2.016 144.518 88.104)" id="ellipse194144"/><path d="M112.823 107.185c-12.061.014-22.855 6.587-27.108 16.51 16.765.735 37.594.695 54.255.04-4.243-9.95-15.06-16.544-27.147-16.55z" class="cls-8" id="path194146"/><path d="M136.659 126.934q-3.996 0-8.072-.016c-4.153-.01-8.327-.023-12.465-.007-26.513.095-59.31-.973-64.993-6.704l1.42-1.408c3.995 4.028 27.152 6.27 63.565 6.112 4.14-.016 8.32-.004 12.479.007 23.035.067 44.784.125 56.024-4.376l.743 1.857c-10.245 4.103-28.56 4.535-48.701 4.535z" class="cls-6" id="path194150"/><g id="path194152"><path d="M107.18 144.388c0 3.806 0 7.554-.064 11.137a187.934 187.934 0 0 0 70 .068c-.16-3.385-.27-7.01-.403-10.832-.733-20.921-16.134-35.578-35.133-35.578s-34.4 14.657-34.4 35.205z" class="cls-7"/><path d="M142.98 159.863a199.59 199.59 0 0 1-36.045-3.355 1 1 0 0 1-.82-1.001c.065-3.573.065-7.238.065-11.12a36.408 36.408 0 0 1 10.367-26.014 35.065 35.065 0 0 1 25.034-10.19c19.869 0 35.402 15.71 36.131 36.543l.09 2.625c.097 2.86.19 5.598.312 8.195a1 1 0 0 1-.806 1.028 177.932 177.932 0 0 1-34.329 3.29zm-34.85-5.17a185.99 185.99 0 0 0 67.947.082 759.814 759.814 0 0 1-.274-7.357l-.09-2.622c-.702-20.056-15.057-34.613-34.132-34.613-19.042 0-33.402 14.705-33.402 34.205 0 3.583 0 6.983-.05 10.304z"/></g><ellipse cx="115.482" cy="146.104" class="cls-8" rx="4.293" ry="4.501" transform="rotate(-2.016 115.482 146.104)" id="ellipse194154"/><path d="M163.943 126.466l-.314-.389a4.713 4.713 0 0 0-3.596-1.736h-.035a4.742 4.742 0 0 0-3.433 1.503l-.339.367-.735-.678.34-.367a5.758 5.758 0 0 1 4.167-1.825h.043a5.725 5.725 0 0 1 4.366 2.107l.314.39z" id="path194156"/><path d="M120.756 126.611l-.82-.572.285-.41a5.669 5.669 0 0 1 8.536-.885l.365.343-.686.728-.364-.342a4.666 4.666 0 0 0-7.03.728z" id="path194158"/><g id="ellipse194160"><ellipse cx="160.651" cy="135.597" rx="5.414" ry="5.624" transform="rotate(-2.025 160.65 135.597)"/><path d="M160.664 142.22a6.63 6.63 0 0 1-.246-13.242 6.627 6.627 0 0 1 .465 13.239 5.512 5.512 0 0 1-.22.004zm-.176-11.244a4.633 4.633 0 0 0 .176 9.245l.149-.002a4.63 4.63 0 0 0-.325-9.243z" class="cls-2"/></g><ellipse cx="162.242" cy="133.958" class="cls-3" rx="2.662" ry="2.802" transform="rotate(-2.022 162.243 133.959)" id="ellipse194162"/><path d="M142.91 159.85a199.203 199.203 0 0 1-35.974-3.342l-9.549-1.777.366-1.966 9.546 1.776a186.782 186.782 0 0 0 69.86.036l6.196-1.79.554 1.922-6.281 1.81a180.192 180.192 0 0 1-34.718 3.332z" class="cls-6" id="path194164"/><g id="g194168"><path d="M158.064 158.006c-1.394-3.247-3.217-6.49-7.084-8.208l.402-.904c4.179 1.856 6.118 5.289 7.593 8.721zm3.464-3.694c-2.377-2.795-5.24-5.497-10.047-6.333l.17-.977c5.13.894 8.254 3.872 10.632 6.667zm1.782-4.376a19.097 19.097 0 0 0-10.295-3.673l.052-.989a20.055 20.055 0 0 1 10.822 3.859z" class="cls-9" id="path194166"/></g><g id="g194176"><path d="M122.814 150.772l-.626-.767a20.009 20.009 0 0 1 10.564-4.492l.111.984a19.03 19.03 0 0 0-10.049 4.275z" class="cls-9" id="path194170"/><path d="M124.864 155.033l-.792-.595c2.201-2.932 5.136-6.09 10.2-7.285l.228.965c-4.745 1.118-7.436 3.985-9.636 6.915z" class="cls-9" id="path194172"/><path d="M128.244 158.61l-.933-.334c1.26-3.513 2.983-7.055 7.04-9.156l.456.879c-3.753 1.944-5.372 5.288-6.563 8.611z" class="cls-9" id="path194174"/></g><g id="ellipse194178"><ellipse cx="125.172" cy="135.597" rx="5.414" ry="5.624" transform="rotate(-1.47 125.172 135.597)"/><path d="M125.182 142.222a6.537 6.537 0 0 1-6.421-6.462 6.691 6.691 0 0 1 1.746-4.716 6.27 6.27 0 0 1 4.497-2.068 6.297 6.297 0 0 1 4.597 1.837 6.692 6.692 0 0 1 1.983 4.622 6.53 6.53 0 0 1-6.244 6.785l-.158.002zm-.128-11.246a4.286 4.286 0 0 0-3.072 1.418 4.707 4.707 0 0 0-1.222 3.315 4.419 4.419 0 1 0 8.825-.224 4.706 4.706 0 0 0-1.39-3.249 4.24 4.24 0 0 0-3.14-1.26zm-.025-1z" class="cls-2"/></g><ellipse cx="123.484" cy="134.057" class="cls-3" rx="2.662" ry="2.802" transform="rotate(-1.466 123.484 134.057)" id="ellipse194180"/><ellipse cx="170.518" cy="146.105" class="cls-8" rx="4.293" ry="4.501" transform="rotate(-2.016 170.518 146.104)" id="ellipse194182"/><g id="ellipse194184"><ellipse cx="142.872" cy="146.974" class="cls-3" rx="11.281" ry="10.41" transform="rotate(-1.311 142.872 146.974)"/><path d="M142.825 157.781c-6.241 0-11.414-4.588-11.624-10.407a10.325 10.325 0 0 1 2.838-7.441 12.146 12.146 0 0 1 8.443-3.76l.014.397-.014-.396c6.445-.213 11.847 4.445 12.061 10.4a10.322 10.322 0 0 1-2.837 7.44 12.147 12.147 0 0 1-8.444 3.76c-.146.004-.292.007-.437.007zm.094-20.821c-.136 0-.272.002-.41.007a11.346 11.346 0 0 0-7.89 3.508 9.537 9.537 0 0 0-2.625 6.87c.2 5.517 5.253 9.842 11.24 9.636a11.347 11.347 0 0 0 7.891-3.508 9.538 9.538 0 0 0 2.626-6.87c-.196-5.392-5.016-9.643-10.832-9.643z" class="cls-9"/></g><g id="path194186"><path d="M147.316 143.726c-.355-.908-.387-2.499-1.418-2.724l-3.072-.669-3.067.696c-1.029.233-1.048 1.824-1.395 2.736-.356.911 4.491 3.847 4.491 3.847s4.816-2.977 4.46-3.886z" class="cls-10"/><path d="M142.856 147.923l-.138-.084c-1.514-.918-4.994-3.16-4.6-4.17a6.91 6.91 0 0 0 .223-.806c.209-.884.446-1.884 1.36-2.092l3.124-.71 3.13.682c.915.2 1.16 1.198 1.376 2.08a6.716 6.716 0 0 0 .231.806c.394 1.006-3.064 3.278-4.568 4.208zm-.029-7.319l-3.01.683c-.591.135-.78.929-.962 1.697a7.09 7.09 0 0 1-.244.874c-.113.389 1.855 1.983 4.243 3.444 2.372-1.482 4.327-3.093 4.215-3.48a7.157 7.157 0 0 1-.252-.874c-.188-.765-.382-1.558-.976-1.687z"/></g><g id="path194188"><path fill="#ff8080" d="M142.309 148.665a2.52 2.52 0 0 1-1.113.957 2.846 2.846 0 0 1-1.563.188 3.24 3.24 0 0 1-1.06-.37v.057a4.25 4.25 0 1 0 8.499 0v-.049a3.234 3.234 0 0 1-1.048.362 2.843 2.843 0 0 1-1.563-.188 2.53 2.53 0 0 1-1.113-.957c-.695-1.71-.567-1.26-1.04 0z"/><path d="M142.822 154.247a4.755 4.755 0 0 1-4.75-4.75.548.548 0 0 1 .246-.459.51.51 0 0 1 .495-.036 2.716 2.716 0 0 0 .896.313 2.35 2.35 0 0 0 1.287-.151 2.02 2.02 0 0 0 .863-.725c.074-.198.13-.375.18-.523.149-.459.278-.855.712-.871.453.009.631.378 1.06 1.432a2.058 2.058 0 0 0 .85.687 2.37 2.37 0 0 0 1.288.151 2.74 2.74 0 0 0 .885-.306.5.5 0 0 1 .738.427 4.769 4.769 0 0 1-4.75 4.811zm-3.673-4.032a3.745 3.745 0 0 0 7.353.002 3.437 3.437 0 0 1-2.242-.137 3.04 3.04 0 0 1-1.335-1.147l-.097-.23a10.1 10.1 0 0 1-.05.137.5.5 0 0 1-.046.092 3.032 3.032 0 0 1-1.336 1.148 3.31 3.31 0 0 1-1.84.224 3.49 3.49 0 0 1-.407-.09z"/></g><path d="M138.695 166.394c-22.462 0-35.672-2.267-55.86-7.174l.472-1.944c22.273 5.414 35.985 7.594 63.274 7.033l.041 2c-2.772.056-5.41.085-7.927.085z" class="cls-6" id="path194190"/><path d="M135.046 174.772a104.774 104.774 0 0 1-15.263-1.079l.287-1.978c9.802 1.419 19.578 1.41 32.688-.035l.219 1.988a163.336 163.336 0 0 1-17.931 1.104z" class="cls-6" id="path194192"/><g id="path194194"><path d="M48.675 134.522c0 3.075 0 6.102-.05 8.996a121.239 121.239 0 0 0 50.475.055c-.11-2.735-.197-5.662-.291-8.75-.529-16.898-12.293-24.64-25.312-24.64-13.02 0-24.822 7.742-24.822 24.34z" class="cls-7"/><path d="M74.485 147.215a129.321 129.321 0 0 1-26.06-2.718 1 1 0 0 1-.799-.996c.049-2.886.049-5.845.049-8.979 0-8.015 2.721-14.635 7.87-19.146 4.56-3.993 10.934-6.193 17.952-6.193 11.768 0 25.72 6.707 26.311 25.609l.026.84c.085 2.776.166 5.418.265 7.901a1 1 0 0 1-.784 1.017 115.377 115.377 0 0 1-24.83 2.665zm-24.846-4.513a119.567 119.567 0 0 0 48.429.071 964.422 964.422 0 0 1-.233-7.08l-.026-.84c-.545-17.452-12.917-23.67-24.312-23.67-10.99 0-23.822 6.113-23.822 23.34 0 2.842 0 5.541-.036 8.18z"/></g><path d="M88.82 121.839l-.324-.381a3.269 3.269 0 0 0-2.449-1.13h-.003a3.28 3.28 0 0 0-2.357 1.023l-.342.365-.73-.684.341-.365a4.303 4.303 0 0 1 3.089-1.34h.004a4.279 4.279 0 0 1 3.207 1.483l.325.38z" id="path194196"/><path d="M58.013 121.91l-.792-.611.305-.396a4.207 4.207 0 0 1 6.273-.445l.358.35-.698.715-.358-.348a3.206 3.206 0 0 0-4.783.338z" id="path194198"/><g id="ellipse194200"><ellipse cx="87.612" cy="130.793" rx="4.747" ry="4.879" transform="rotate(-2.82 87.612 130.793)"/><path d="M87.624 136.672a5.832 5.832 0 0 1-5.756-5.679 5.906 5.906 0 0 1 1.526-4.203 5.636 5.636 0 0 1 4.01-1.872 5.78 5.78 0 0 1 5.952 5.675 5.904 5.904 0 0 1-1.525 4.202 5.64 5.64 0 0 1-4.01 1.873 4.49 4.49 0 0 1-.197.004zm-.021-9.758l-.129.002a3.658 3.658 0 0 0-2.599 1.218 3.918 3.918 0 0 0-1.008 2.789 3.84 3.84 0 0 0 3.884 3.747 3.66 3.66 0 0 0 2.598-1.218 3.915 3.915 0 0 0 1.008-2.789 3.828 3.828 0 0 0-3.754-3.749zm-.164-.997z" class="cls-2"/></g><ellipse cx="89.008" cy="129.37" class="cls-3" rx="2.335" ry="2.431" transform="rotate(-2.558 89.008 129.37)" id="ellipse194202"/><g id="ellipse194204"><ellipse cx="60.212" cy="130.793" rx="4.747" ry="4.879" transform="rotate(-2.047 60.211 130.793)"/><path d="M60.218 136.672a5.827 5.827 0 0 1-5.752-5.735 5.906 5.906 0 0 1 1.567-4.188 5.64 5.64 0 0 1 4.029-1.834 5.807 5.807 0 0 1 5.895 5.733 5.904 5.904 0 0 1-1.567 4.188 5.64 5.64 0 0 1-4.028 1.834 6.966 6.966 0 0 1-.144.002zm-.015-9.758l-.092.001a3.657 3.657 0 0 0-2.61 1.191 3.921 3.921 0 0 0-1.036 2.78 3.798 3.798 0 0 0 3.847 3.784 3.657 3.657 0 0 0 2.61-1.191 3.918 3.918 0 0 0 1.036-2.78 3.827 3.827 0 0 0-3.755-3.785z" class="cls-2"/></g><g id="path194206"><path d="M73.352 132.785c-4.47.152-7.973 3.606-7.824 7.714.052 1.394.53 4.248 1.377 5.401 4.499.243 8.97.27 13.322.096 1.021-1.327 1.544-4.426 1.489-6.047-.15-4.109-3.894-7.316-8.364-7.164z" class="cls-3"/><path d="M74.602 147.107c-2.585 0-5.176-.069-7.751-.208l-.473-.026-.28-.38c-1.072-1.46-1.52-4.644-1.57-5.957a8.081 8.081 0 0 1 2.22-5.824 9.453 9.453 0 0 1 6.57-2.927c5.014-.168 9.228 3.477 9.397 8.127.061 1.804-.493 5.131-1.695 6.694l-.286.37-.467.02c-1.878.074-3.77.111-5.665.111zm-7.113-2.177c4.054.203 8.147.233 12.18.087a12.084 12.084 0 0 0 1.047-5.035c-.129-3.548-3.39-6.322-7.33-6.199a7.44 7.44 0 0 0-5.176 2.292 6.093 6.093 0 0 0-1.683 4.388 13.948 13.948 0 0 0 .962 4.467z" class="cls-9"/></g><ellipse cx="58.731" cy="129.457" class="cls-3" rx="2.335" ry="2.431" transform="rotate(-1.855 58.731 129.457)" id="ellipse194208"/><g id="path194210"><path d="M76.898 140.063c-.26-.662-.288-1.821-1.048-1.985l-2.27-.488-2.267.507c-.76.17-.775 1.33-1.032 1.994-.26.665 3.32 2.804 3.32 2.804s3.56-2.17 3.296-2.832z" class="cls-10"/><path d="M73.603 143.204l-.138-.08c-1.72-1.03-3.713-2.407-3.43-3.13a4.73 4.73 0 0 0 .163-.579c.152-.63.34-1.415 1.057-1.575l2.324-.52 2.326.5c.719.155.915.94 1.072 1.57a4.824 4.824 0 0 0 .167.576c.284.719-1.695 2.113-3.405 3.155zm-.022-5.344l-2.21.495c-.367.082-.505.542-.659 1.184a5.216 5.216 0 0 1-.184.648c.022.3 1.412 1.393 3.072 2.399 1.639-1.014 3.013-2.111 3.046-2.44a5.503 5.503 0 0 1-.182-.627c-.16-.642-.302-1.103-.67-1.182zm3.07 2.3z"/></g><path d="M74.117 155.132c-11.732-.043-19.45-.997-29.496-3.648l.51-1.933c9.863 2.602 17.45 3.539 28.993 3.58z" class="cls-6" id="path194212"/><ellipse cx="89.901" cy="141.773" class="cls-8" rx="3.534" ry="3.706" transform="rotate(-2.018 89.901 141.783)" id="ellipse194214"/><ellipse cx="57.901" cy="141.774" class="cls-8" rx="3.534" ry="3.706" transform="rotate(-2.016 57.901 141.773)" id="ellipse194216"/><path d="M74.427 147.062a130.006 130.006 0 0 1-32.672-4.078l.51-1.933c19.766 5.213 43.319 5.36 61.467.38l.53 1.93a114.578 114.578 0 0 1-29.835 3.7z" class="cls-6" id="path194218"/></svg> diff --git a/test/system/030-run.bats b/test/system/030-run.bats index a29b1adc3..cefff0e2c 100644 --- a/test/system/030-run.bats +++ b/test/system/030-run.bats @@ -9,8 +9,8 @@ true | 0 | false | 1 | sh -c 'exit 32' | 32 | echo $rand | 0 | $rand -/no/such/command | 127 | Error: container create failed:.*exec:.* no such file or dir -/etc | 126 | Error: container create failed:.*exec:.* permission denied +/no/such/command | 127 | Error: .*: starting container process caused .*exec:.*stat /no/such/command: no such file or directory +/etc | 126 | Error: .*: starting container process caused .*exec:.* permission denied " while read cmd expected_rc expected_output; do diff --git a/test/utils/utils.go b/test/utils/utils.go index 98031385d..43819350c 100644 --- a/test/utils/utils.go +++ b/test/utils/utils.go @@ -63,7 +63,7 @@ func (p *PodmanTest) MakeOptions(args []string) []string { return p.PodmanMakeOptions(args) } -// PodmanAsUserBase exec podman as user. uid and gid is set for credentials useage. env is used +// PodmanAsUserBase exec podman as user. uid and gid is set for credentials usage. env is used // to record the env for debugging func (p *PodmanTest) PodmanAsUserBase(args []string, uid, gid uint32, cwd string, env []string, nocache bool) *PodmanSession { var command *exec.Cmd |