diff options
| author | Tjark <16938041+tjarbo@users.noreply.github.com> | 2023-09-04 19:43:06 +0200 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-04 19:43:06 +0200 | 
| commit | c74f2a1be980c60d937046364db0c9497187457a (patch) | |
| tree | c4c4fdaa2d005e3a35c61c99ed1a75b1240959ee | |
| parent | 30f0d591881713c4efd1482511943abca5103927 (diff) | |
| download | zsh-c74f2a1be980c60d937046364db0c9497187457a.tar.gz zsh-c74f2a1be980c60d937046364db0c9497187457a.tar.bz2 zsh-c74f2a1be980c60d937046364db0c9497187457a.zip  | |
feat(podman): add plugin (#11695)
Closes #7489
Closes #9721
| -rw-r--r-- | plugins/podman/README.md | 47 | ||||
| -rw-r--r-- | plugins/podman/podman.plugin.zsh | 47 | 
2 files changed, 94 insertions, 0 deletions
diff --git a/plugins/podman/README.md b/plugins/podman/README.md new file mode 100644 index 000000000..99daa28cd --- /dev/null +++ b/plugins/podman/README.md @@ -0,0 +1,47 @@ +# Podman plugin + +This plugin adds auto-completion and aliases for [podman](https://podman.io/). + +To use it add `podman` to the plugins array in your zshrc file. + +```zsh +plugins=(... podman) +``` + +## Aliases + +| Alias   | Command                                       | Description                                                                              | +| :------ | :-------------------------------------------- | :--------------------------------------------------------------------------------------- | +| pbl     | `podman build`                                | Build an image from a Dockerfile                                                         | +| pcin    | `podman container inspect`                    | Display detailed information on one or more containers                                   | +| pcls    | `podman container ls`                         | List all the running podman containers                                                   | +| pclsa   | `podman container ls --all`                   | List all running and stopped containers                                                  | +| pib     | `podman image build`                          | Build an image from a Dockerfile (same as podman build)                                  | +| pii     | `podman image inspect`                        | Display detailed information on one or more images                                       | +| pils    | `podman image ls`                             | List podman images                                                                       | +| pipu    | `podman image push`                           | Push an image or repository to a remote registry                                         | +| pirm    | `podman image rm`                             | Remove one or more images                                                                | +| pit     | `podman image tag`                            | Add a name and tag to a particular image                                                 | +| plo     | `podman container logs`                       | Fetch the logs of a podman container                                                     | +| pnc     | `podman network create`                       | Create a new network                                                                     | +| pncn    | `podman network connect`                      | Connect a container to a network                                                         | +| pndcn   | `podman network disconnect`                   | Disconnect a container from a network                                                    | +| pni     | `podman network inspect`                      | Return information about one or more networks                                            | +| pnls    | `podman network ls`                           | List all networks the engine daemon knows about, including those spanning multiple hosts | +| pnrm    | `podman network rm`                           | Remove one or more networks                                                              | +| ppo     | `podman container port`                       | List port mappings or a specific mapping for the container                               | +| ppu     | `podman pull`                                 | Pull an image or a repository from a registry                                            | +| pr      | `podman container run`                        | Create a new container and start it using the specified command                          | +| prit    | `podman container run --interactive --tty`    | Create a new container and start it in an interactive shell                              | +| prm     | `podman container rm`                         | Remove the specified container(s)                                                        | +| prm!    | `podman container rm --force`                 | Force the removal of a running container (uses SIGKILL)                                  | +| pst     | `podman container start`                      | Start one or more stopped containers                                                     | +| prs     | `podman container restart`                    | Restart one or more containers                                                           | +| psta    | `podman stop $(podman ps -q)`                 | Stop all running containers                                                              | +| pstp    | `podman container stop`                       | Stop one or more running containers                                                      | +| ptop    | `podman top`                                  | Display the running processes of a container                                             | +| pvi     | `podman volume inspect`                       | Display detailed information about one or more volumes                                   | +| pvls    | `podman volume ls`                            | List all the volumes known to podman                                                     | +| pvprune | `podman volume prune`                         | Cleanup dangling volumes                                                                 | +| pxc     | `podman container exec`                       | Run a new command in a running container                                                 | +| pxcit   | `podman container exec --interactive --tty`   | Run a new command in a running container in an interactive shell                         | diff --git a/plugins/podman/podman.plugin.zsh b/plugins/podman/podman.plugin.zsh new file mode 100644 index 000000000..97cf92b2a --- /dev/null +++ b/plugins/podman/podman.plugin.zsh @@ -0,0 +1,47 @@ +if (( ! $+commands[podman] )); then +  return +fi + +# If the completion file doesn't exist yet, we need to autoload it and +# bind it to `podman`. Otherwise, compinit will have already done that. +if [[ ! -f "$ZSH_CACHE_DIR/completions/_podman" ]]; then +  typeset -g -A _comps +  autoload -Uz _podman +  _comps[podman]=_podman +fi + +podman completion zsh 2> /dev/null >| "$ZSH_CACHE_DIR/completions/_podman" &| + +alias pbl='podman build' +alias pcin='podman container inspect' +alias pcls='podman container ls' +alias pclsa='podman container ls --all' +alias pib='podman image build' +alias pii='podman image inspect' +alias pils='podman image ls' +alias pipu='podman image push' +alias pirm='podman image rm' +alias pit='podman image tag' +alias plo='podman container logs' +alias pnc='podman network create' +alias pncn='podman network connect' +alias pndcn='podman network disconnect' +alias pni='podman network inspect' +alias pnls='podman network ls' +alias pnrm='podman network rm' +alias ppo='podman container port' +alias ppu='podman pull' +alias pr='podman container run' +alias prit='podman container run --interactive --tty' +alias prm='podman container rm' +alias 'prm!'='podman container rm --force' +alias pst='podman container start' +alias prs='podman container restart' +alias psta='podman stop $(podman ps --quiet)' +alias pstp='podman container stop' +alias ptop='podman top' +alias pvi='podman volume inspect' +alias pvls='podman volume ls' +alias pvprune='podman volume prune' +alias pxc='podman container exec' +alias pxcit='podman container exec --interactive --tty'  | 
