Files
computer-playbook/aliases
T
kevinveenbirkenbachandClaude Opus 5 e1aec3ab32 feat(aliases): add i8cifoon for a strict retrigger that keeps going
The family had every neighbour of this combination but not the combination
itself. i8cifo retriggers only the hard failures but lets the chunk chain stop
after a red one, and i8ciallon keeps the chain going but collapses the tokens
to bare role names with --roles-only, which hands the axes back to the
rotation.

i8cifoon is --failed --strict --chunk-gate false: a hard failure returns as the
exact role#variant@mode+tor it died in, a cancelled, aborted or still-running
selection stays on the regular line because --strict drops everything whose
state is not failure, the priority entries the source run never deployed come
along as --failed always brings them, and the remaining chunks keep deploying.
Like its siblings it force-cancels the source run first so it stops holding
runner slots.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-10-21 20:17:47 +02:00

178 lines
13 KiB
Plaintext

alias i8='infinito' # the infinito CLI
alias i8bi='m binfmt'
alias i8bo='m bootstrap'
alias i8bond='m bond'
alias i8bu='m build'
alias i8buce='m build-cleanup'
alias i8bude='m build-dependency'
alias i8bumi='m build-missing'
alias i8buno='m build-no-cache'
alias i8bunoca='m build-no-cache-all'
alias i8ca='m act-debug'
alias i8caap='m cache-apply'
alias i8caru='m act-runner-image'
alias i8cawo='m act-workflow'
alias i8ce='m cheat'
alias i8ce2='m clean'
alias i8ceca='m clean-cache'
alias i8ceco='m clean-container-owned'
alias i8cepa='m clean-pycache-dirs'
alias i8cesa='m clean-stale-nfs'
alias i8cesu='m clean-sudo'
alias i8ciall='__i8ciall(){ [ -z "${1:-}" ] && { echo "usage: i8ciall <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8ciall: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --strict --roles-only --run "$1"; }; __i8ciall' # retrigger run $1 (id or url): only the roles that truly failed take the priority line, by name, letting the rotation pick the axes, plus the priority entries that run never deployed, axes and all; the aborted, the still-running and the never-reached stay on the regular line, which resumes behind the green stretch the run added to the offset it was given; the workspace suite comes back unless every one of its jobs went green; force-cancels the run first so it stops holding runner slots
alias i8ciallon='__i8ciallon(){ [ -z "${1:-}" ] && { echo "usage: i8ciallon <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8ciallon: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --strict --roles-only --chunk-gate false --run "$1"; }; __i8ciallon' # like i8ciall, but the retrigger keeps deploying the remaining chunks after a failed one (chunk_gate=false) instead of stopping the chain; the run still ends red
alias i8cifail='__i8cifail(){ [ -z "${1:-}" ] && { echo "usage: i8cifail <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8cifail: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --run "$1"; }; __i8cifail' # retrigger the exact failed selections (role#variant@mode+tor) of run $1 (id or url) across every mode, plus its never-deployed priority entries, reproducing every other input of that run; force-cancels the run first so it stops holding runner slots
alias i8cifailon='__i8cifailon(){ [ -z "${1:-}" ] && { echo "usage: i8cifailon <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8cifailon: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --chunk-gate false --run "$1"; }; __i8cifailon' # like i8cifail, but the retrigger keeps deploying the remaining chunks after a failed one (chunk_gate=false) instead of stopping the chain; every selection that did not succeed takes the priority line as the exact role#variant@mode+tor it died in, cancelled, aborted and still-running ones as the combination they never finished, so none of them waits for the regular line; force-cancels the run first so it stops holding runner slots
alias i8cifo='__i8cifo(){ [ -z "${1:-}" ] && { echo "usage: i8cifo <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8cifo: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --strict --run "$1"; }; __i8cifo' # like i8cifail but only hard-failed selections, excluding cancelled/aborted; force-cancels the run first
alias i8cifoon='__i8cifoon(){ [ -z "${1:-}" ] && { echo "usage: i8cifoon <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8cifoon: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --strict --chunk-gate false --run "$1"; }; __i8cifoon' # like i8cifo, but the retrigger keeps deploying the remaining chunks after a failed one (chunk_gate=false) instead of stopping the chain; only hard-failed selections take the priority line, as the exact role#variant@mode+tor they died in, while cancelled, aborted and still-running ones stay on the regular line, plus the priority entries the source run never deployed; force-cancels the run first so it stops holding runner slots
alias i8cire='__i8cire(){ make quality && gips && i8cifail "$1"; }; __i8cire'
alias i8civar='__i8civar(){ [ -z "${1:-}" ] && { echo "usage: i8civar <run-id|url>" >&2; return 2; }; ghaf "$1" || echo "i8civar: force-cancel of run $1 reported nothing to cancel; continuing" >&2; infinito administration deploy ci trigger --failed --roles-only --chunk-gate false --run "$1"; }; __i8civar' # like i8ciallon, but a role that never reached a verdict comes back as the exact variants it still owes instead of waiting for the regular line: a hard failure retriggers its whole role by name and the rotation picks the axes, while every cancelled, aborted and still-running job returns as the role#variant@mode+tor it never finished; force-cancels the run first so it stops holding runner slots
alias i8co='m compose-deploy'
alias i8co2='m console'
alias i8coape='m compose-app-exec'
alias i8codo='m compose-down'
alias i8cone='m compose-entity-purge'
alias i8conere='m compose-network-recreate'
alias i8coni='m compose-inner-run'
alias i8conire='m compose-inventory-refresh'
alias i8copa='m compose-playwright'
alias i8copal='m compose-app-logs'
alias i8copare='m compose-app-restart'
alias i8copu='m compose-up'
alias i8core='m compose-restart'
alias i8corosy='m compose-role-sync'
alias i8cose='m compose-system-purge'
alias i8coso='m compose-stop'
alias i8coxe='m compose-exec'
alias i8dega='m design-gallery'
alias i8depa='m design-palette'
alias i8dequ='m design-queue'
alias i8desy='m design-sync'
alias i8di='m diagnose-disk-usage'
alias i8dine='m diagnose-network'
alias i8do='m dotenv'
alias i8dofo='m dotenv-force'
alias i8fi='m fix-chmod'
alias i8fido='m fix-dockerignore'
alias i8he='m help'
alias i8inex='m i18n-extract'
alias i8inpu='m i18n-prune'
alias i8inre='m i18n-retry'
alias i8inta='m i18n-translate'
alias i8intu='m i18n-tune'
alias i8kelo='m kernel-loop-load'
alias i8la='m alias'
alias i8li='m lint'
alias i8lica='m lint-action'
alias i8lics='m lint-css'
alias i8lido='m lint-dockerfile'
alias i8lija='m lint-javascript'
alias i8lima='m lint-makefile'
alias i8lima2='m lint-markdown'
alias i8lime='m lint-mermaid'
alias i8lina='m lint-ansible'
alias i8lipa='m lint-packages'
alias i8lipa2='m lint-playwright'
alias i8liph='m lint-php'
alias i8lipo='m lint-python'
alias i8liru='m lint-ruby'
alias i8lise='m lint-shellcheck'
alias i8lisq='m lint-sql'
alias i8maal='i8source && python3 -m cli.meta.ci.query --modes auto --matrix' # complexity matrix of every deployable row, in CI query order
alias i8maco='i8source && python3 -m cli.meta.ci.query --modes compose --matrix' # complexity matrix in compose query order
alias i8maho='i8source && python3 -m cli.meta.ci.query --modes host --matrix' # complexity matrix in host query order
alias i8masa='i8source && python3 -m cli.meta.ci.query --modes swarm --matrix' # complexity matrix in swarm query order
alias i8matis='i8matix -s' # variant with symbols
alias i8matiso='clear && i8maal --roles' # clear + deploy matrix of every deployable role, in CI query order
alias i8mativ='i8matix --variant' # deploy matrix / complexity overview for variants
alias i8mativas='i8mativ -s' # variant with symbols
alias i8mativaso='clear && i8maal' # clear + deploy matrix of every deployable variant, in CI query order
alias i8matiw='i8matis --sort "desc weight"' # complexity matrix, symbols, heaviest roles first
alias i8matix='infinito meta roles applications complexity' # deploy matrix / complexity overview
alias i8me='m meta-list'
alias i8memi='m meta-mig'
alias i8mete='m meta-tree'
alias i8ne='m environment-bootstrap'
alias i8nedo='m network-dns-remove'
alias i8nedose='m network-dns-setup'
alias i8nepi='m network-ipv6-disable'
alias i8nepire='m network-ipv6-restore'
alias i8nere='m network-refresh'
alias i8nete='m environment-teardown'
alias i8netu='m network-trust-ca'
alias i8ni='m install'
alias i8nica='m install-act'
alias i8nicapu='m install-act-update'
alias i8nifo='m install-force'
alias i8niga='m install-agent'
alias i8nila='m install-alias'
alias i8nilas='i8nila && source ~/.bashrc' # Install aliases and source them
alias i8nili='m install-lint'
alias i8nilifo='m install-lint-force'
alias i8nina='m install-ansible'
alias i8nino='m install-node'
alias i8niph='m install-php'
alias i8nipo='m install-python'
alias i8nipode='m install-python-dev'
alias i8niru='m install-ruby'
alias i8nise='m install-system-python'
alias i8nisi='m install-skills'
alias i8nive='m install-venv'
alias i8on='m onboard'
alias i8paal='i8source && python3 -m cli.meta.ci.plan --cli --modes auto' # plan table for every deployable row, in CI query order
alias i8paco='i8source && python3 -m cli.meta.ci.plan --cli --modes compose' # plan table for the compose line
alias i8paho='i8source && python3 -m cli.meta.ci.plan --cli --modes host' # plan table for the host line
alias i8papr='i8source && python3 -m cli.meta.ci.plan --cli --modes auto --priority' # plan table for the priority line given as the next argument
alias i8pasa='i8source && python3 -m cli.meta.ci.plan --cli --modes swarm' # plan table for the swarm line
alias i8pi='pcd infinito' # cd to the infinito repo
alias i8puci='__i8puci(){ gips && i8cifail "$1"; }; __i8puci' # sign-push + retrigger the failed selections of run $1, skipping the quality gate
alias i8pufail='__i8pufail(){ gips && i8cifail "$1"; }; __i8pufail' # sign-push, then retrigger the failed selections of run $1 across every mode
alias i8pufo='__i8pufo(){ gips && i8cifo "$1"; }; __i8pufo' # sign-push, then retrigger only hard-failed roles of run $1, excluding cancelled/aborted
alias i8puma='__i8puma(){ local gates=() ok=1; case "${3:-}" in "") ;; true|false) gates=(-f workspace="$3" -f instructions="$3");; *) ok=0;; esac; { [ -z "${1:-}" ] || [ "$ok" = 0 ]; } && { echo "usage: i8puma <priority app ids> [distros] [true|false]" >&2; return 2; }; i8source && gips && gh workflow run entry-manual.yml --repo "$(git remote get-url "$(git config --get remote.pushDefault)")" --ref "$(git rev-parse --abbrev-ref HEAD)" -f priority="$(python3 -m utils.roles.display --encode "$1")" -f distros="${2:-${INFINITO_DISTROS}}" "${gates[@]}"; }; __i8puma' # sign-push, then dispatch a manual CI run on the push remote (remote.pushDefault): priority line $1, distros $2 (default INFINITO_DISTROS), whitelist diff-derived; $3 true forces the workspace and instructions tests, false suppresses them, omitted leaves them on the workflow auto scope
alias i8puwl='__i8puwl(){ [ -z "${1:-}" ] && { echo "usage: i8puwl <whitelist app ids> [distros]" >&2; return 2; }; i8source && gh workflow run entry-manual.yml --repo "$(git remote get-url "$(git config --get remote.pushDefault)")" --ref "$(git rev-parse --abbrev-ref HEAD)" -f whitelist="$(python3 -m utils.roles.display --encode "$1")" -f distros="${2:-${INFINITO_DISTROS}}" -f workspace=false -f instructions=false; }; __i8puwl' # dispatch a manual CI run on the push remote (remote.pushDefault) limited to whitelist $1, distros $2 (default INFINITO_DISTROS), with the workspace and instructions tests off; pushes nothing, so the run uses whatever the remote already holds for the current branch
alias i8qu='m quality'
alias i8quhi='m quality-high'
alias i8ro='m roundtrip'
alias i8ru='m runner-ci-deploy'
alias i8ruci='m runner-ci-disable'
alias i8rucine='m runner-ci-enable'
alias i8s='i8nilas' # shortcut for i8nilas
alias i8sa='m swarm-clean'
alias i8saae='m swarm-app-exec'
alias i8sace='m swarm-clean-stale-nfs'
alias i8sadi='m swarm-diagnostic'
alias i8sado='m swarm-down'
alias i8sapa='m swarm-playwright'
alias i8sase='m swarm-shell'
alias i8saxe='m swarm-exec'
alias i8sazo='m swarm-zombie'
alias i8se='m security-apparmor-restore'
alias i8se2='m setup'
alias i8sece='m setup-clean'
alias i8sepa='m security-apparmor-teardown'
alias i8sepu='m system-purge'
alias i8source='source scripts/meta/env/load.sh' # load the project .env + venv python into the current shell
alias i8ta='m autoformat'
alias i8tare='m autoformat-restage'
alias i8te='(i8pi && tunit && tint && lint)' # unit + integration + lint
alias i8te2='m test'
alias i8teli='m test-lint'
alias i8tema='m test-main-merged'
alias i8temesi='m test-merge-signed'
alias i8teni='m test-integration'
alias i8tenu='m test-unit'
alias i8tenuja='m test-unit-javascript'
alias i8tenuph='m test-unit-php'
alias i8tenupo='m test-unit-python'
alias i8tenuru='m test-unit-ruby'
alias i8teor='m test-oracle'
alias i8tepe='m test-performance'
alias i8tesi='m test-signed'
alias i8texe='m test-external'
alias i8wo='m wsl2-dns-setup'
alias i8wodo='m worktree-down'
alias i8wopr='m worktree-prune'
alias i8wose='m wsl2-systemd-check'
alias i8wotu='m wsl2-trust-windows'
alias i8woup='m worktree-up'