majordomus release version
Verze, kterou deklaruje manifest crate, zda ji uvádí projekce, kterou čte shellový nástroj, každá verze zapsaná ručně tam, kde žijí soubory nástroje, a bump, který implikují commity od posledního release
majordomus release verze
Použití
majordomus release version [OPTIONS]Argumenty
| argument | hodnota | výchozí | popis |
|---|---|---|---|
| --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 | Jak vykreslit odpověď (přijímá každý podpříkaz)
|
Příklady
-
Verze a ta, kterou kontrakt požaduje příště
Verze se píše na jednom místě, v manifestu crate, a shellový nástroj čte její projekci, share/version.txt, protože nainstalovaný strom nemá Cargo.toml. Toto říká, co manifest deklaruje, zda to projekce uvádí a — s kódem 10 — jakoukoli verzi napsanou ručně tam, kde žijí vlastní soubory nástroje. `next` je odpověď veřejného kontraktu, verze, kterou `release analyze` vyžaduje (deklarovaná verze, když už kontrakt splňuje, jinak nejmenší, kterou připouští); `decided_by` jmenuje, kdo odpověděl, a zvýšení, které naznačují předměty commitů, se nese jako důkaz. Tento fixture nepublikoval žádný release s registrem, takže kontrakt nelze změřit: `next` chybí a `decided_by` je `undecided` s důvodem v `contract_unreadable` — neměřitelný základ se odmítne, nehádá.
$ majordomus release version --format jsonCo tvrdí: skončí s kódem 0; vypíše jeden dokument JSON nesoucí /declared, /agree, /bump, /decided_by.
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 release version --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.