Skip to content

Commit c729579

Browse files
committed
feat: exegol aliases
1 parent 3e7ef01 commit c729579

File tree

2 files changed

+85
-0
lines changed

2 files changed

+85
-0
lines changed

plugins/exegol/README.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Exegol plugin
2+
3+
The Exegol plugin provides useful aliases
4+
5+
To use it, add `exegol` to the plugins array of your zshrc file:
6+
7+
```zsh
8+
plugins=(... exegol)
9+
```
10+
11+
## Aliases
12+
13+
| Alias | Command | Description |
14+
| :------ | :------------------------------- | :-------------------------------------------------------- |
15+
| `e` | `exegol` | Shorthand for exegol command |
16+
| `ei` | `exegol info` | Displays exegol information |
17+
| `eu` | `exegol update` | Updates exegol to the latest version |
18+
| `es` | `exegol start` | Starts an Exegol instance |
19+
| `esn` | `exegol start [default] nightly` | Starts a nightly Exegol instance |
20+
| `esf` | `exegol start [default] full` | Starts a full Exegol instance |
21+
| `esf!` | `esf --privileged` | Starts a full Exegol instance with privileged access |
22+
| `esn!` | `esn --privileged` | Starts a nightly Exegol instance with privileged access |
23+
| `etmpn` | `exegol exec --tmp nightly` | Executes a command in a temporary nightly Exegol instance |
24+
| `etmpf` | `exegol exec --tmp full` | Executes a command in a temporary full Exegol instance |
25+
| `estp` | `exegol stop` | Stops an Exegol instance |
26+
| `estpa` | `exegol stop --all` | Stops all Exegol instances |
27+
| `erm` | `exegol remove` | Removes an Exegol instance |
28+
| `erm!` | `exegol remove --force` | Removes an Exegol instance forcefully |
29+
| `erma` | `exegol remove --all` | Removes all Exegol instances |
30+
| `erma!` | `exegol remove --force --all` | Removes all Exegol instances forcefully |

plugins/exegol/exegol.plugin.zsh

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Return immediately if exegol is not found
2+
if (( ! ${+commands[exegol]} )); then
3+
echo OK
4+
fi
5+
6+
alias e='exegol'
7+
alias ei='exegol info'
8+
alias eu='exegol update'
9+
10+
alias es='exegol start'
11+
function esn() {
12+
local only_dashes=true
13+
for arg in "$@"; do
14+
if [[ ! "$arg" == -* ]]; then
15+
only_dashes=false
16+
break
17+
fi
18+
done
19+
20+
if [[ "$#" == 0 ]] || $only_dashes; then
21+
# If all arguments are dashes or empty, use default name
22+
exegol start default nightly "$@"
23+
else
24+
exegol start "$@" nightly
25+
fi
26+
}
27+
function esf() {
28+
local only_dashes=true
29+
for arg in "$@"; do
30+
if [[ ! "$arg" == -* ]]; then
31+
only_dashes=false
32+
break
33+
fi
34+
done
35+
36+
if [[ "$#" == 0 ]] || $only_dashes; then
37+
# If all arguments are dashes or empty, use default name
38+
exegol start default full "$@"
39+
else
40+
exegol start "$@" full
41+
fi
42+
}
43+
alias esf!='esf --privileged'
44+
alias esn!='esn --privileged'
45+
46+
alias etmpn='exegol exec --tmp nightly'
47+
alias etmpf='exegol exec --tmp full'
48+
49+
alias estp='exegol stop'
50+
alias estpa='exegol stop --all'
51+
52+
alias erm='exegol remove'
53+
alias erm!='exegol remove --force'
54+
alias erma='exegol remove --all'
55+
alias erma!='exegol remove --force --all'

0 commit comments

Comments
 (0)