majordomus env enter
Vstoupit do repozitáře: přiřazení, ze kterých má shell zde prospěch, na standardní výstup, banner na standardní chybový výstup, workflow bridge obnovený, když se pohnula deklarace za ním, a zajištěný runtime — celý obsah vstupu do tohoto repozitáře jako jedno volání, aby si žádný člověk ani agent nemusel pamatovat posloupnost. Nikdy nebuilduje, nikdy nesahá na vzdálenou síť a nikdy nečeká, až odpoví server, který sám spustil
majordomus env enter
Použití
majordomus env enter [OPTIONS]Argumenty
| argument | hodnota | výchozí | popis |
|---|---|---|---|
| --shell | <SHELL> | direnv | Shell, pro který se má psát: `direnv`, `bash`, `zsh`, `sh`, `ksh` nebo `fish` |
| --mode | <MODE> | — | Kolik banneru vykreslit; MAJORDOMUS_BANNER rozhoduje i bez toho |
| --no-banner | flag | — | Nekreslit banner |
| --no-bridge | flag | — | Neobnovovat most pracovního postupu |
| --no-runtime | flag | — | Nezajišťovat runtime: jen exportovat, kreslit a obnovovat. Co říká MAJORDOMUS_RUNTIME=off, jako argument |
| --wait | <SECONDS> | 0 | Čekat tolik sekund, než odpoví server, který toto volání spustilo. Nula — výchozí a to, o co žádá prompt shellu — se vrátí hned, jakmile byl spuštěn, a hlídání pronájmu vstupním souborem přinese adresu, jakmile se publikuje |
| --repo | <PATH> | — | Zde začne hledání kořene repozitáře (výchozí: aktuální adresář) (přijímá každý podpříkaz) |
| --discovery | vcs | filesystem | vcs | Jak se vyhledávají deklarativní soubory (přijímá každý podpříkaz)
|
| --strict | flag | — | Odmítne pokračovat, pokud kterýkoli soubor vrstvy nese diagnostiku typu chyba (přijímá každý podpříkaz) |
| --share | <DIR> | — | Adresář share distribuce nástroje (kinds.yaml, schemas/); výchozí: $MAJORDOMUS_SHARE, poté vlastní share/ repozitáře, poté ten vedle spustitelného souboru (přijímá každý podpříkaz) |
| --format | text | json | text | Tvar výstupu (přijímá každý podpříkaz)
|
Příklady
-
Vše, co do tohoto repozitáře vstupuje, je jedním voláním
Co spouští soubor, který shell vyhodnocuje při vstupu, a jediné volání, které provádí (ADR 0043): přiřazení na standardním výstupu pro `eval`, banner na standardní chybě, obnovený bridge workflow, když se pohnula deklarace za ním, a zajištěný sdílený server repozitáře, když tento checkout nic neobsluhuje. Nikdy nesestavuje, nikdy nezajišťuje ze spustitelného souboru staršího než jeho zdroje, nikdy nečeká, až server, který spustil, odpoví, a nikdy nekončí nenulově — nenulový kód by zde způsobil, že direnv ohlásí selhání celého prostředí. `--no-runtime` je to, co tento příklad předává, protože příklad není místo, kde se spouští server.
$ majordomus env enter --shell direnv --no-banner --no-bridge --no-runtimeCo tvrdí: skončí s kódem 0; vypíše export MAJORDOMUS_ROOT=.
Testuje apps/majordomus-cli/tests/cli_examples.rs, který spouští příkaz nad sestaveným programem a ověřuje, co stránka uvádí.
Odkud to pochází
Deklarováno jednou v apps/majordomus-cli/src/cli.rs: clap pro strukturu, typovaná metadata v Rustu vedle něj pro příklady. Tato stránka, majordomus env enter --help, docs/generated/cli.md a docs/generated/cli.json jsou projekce této jediné deklarace.
Celá příkazová řádka na jedné stránce: stránka příkazové řádky registru. Životní cyklus úlohy (init, start, finish, doctor, ...) patří nástroji shell, jinému programu: Příkazy a jeho specifikace.