Běhy, stav a obnova

Max PrilutskiyCEO a spoluzakladatelUpdated před 3 měsíci · 2 min read

lingo push odešle běh do engine a počká na jeho dokončení. Samotný běh ale běží na serveru, ne ve vašem terminálu — takže můžete terminál zavřít, přejít na jiný počítač nebo to nechat převzít CI a výsledky si vyzvednout později. Na této stránce se dozvíte, jak to funguje a jak postupovat, když běh selže.

Stav běhu#

Každý push zaznamená odeslaný běh do souboru pro daný počítač:

text
~/.lingo/runs/<hash>.json

<hash> se odvozuje z absolutní cesty k projektu, takže každý checkout má vlastní záznam. Soubor obsahuje ID běhu, engine a organizaci — tedy vše, co pozdější lingo pull potřebuje k nalezení výstupů.

Jde o stav vázaný na konkrétní počítač, ne o stav projektu — je uložený ve vašem domovském adresáři, nikdy ne v repozitáři, a necommituje se.

Pull na jiném počítači#

Protože běh existuje na straně serveru, můžete udělat push na jednom místě a pull na jiném:

bash
# laptop
lingo push

# CI, or a second machine with the same checkout + credentials
lingo pull

pull stáhne výstupy z nejnovějšího běhu pro tento projekt. Zároveň zkontroluje lockfile, jestli neobsahuje místní úpravy, a bez --force je odmítne přepsat. Viz lingo pull.

Přesun projektu

Název souboru se stavem běhu je navázaný na absolutní cestu k projektu. Pokud adresář mezi push a pull přesunete, vyhledání selže — ID běhu ale stále najdete v ~/.lingo/runs/, pokud ho budete potřebovat dohledat ručně.

Obnova neúspěšného běhu#

Pokud běh skončí chybou v průběhu — například kvůli timeoutu nebo přechodné chybě engine — použijte:

bash
lingo resume

resume znovu vygeneruje výstupy z výsledků uložených v cache engine místo toho, aby znovu překládal, takže obnovený běh už znovu nespotřebuje kredity. Ohlásí, co se podařilo obnovit a co se nepodařilo zpětně propojit.

Pokud resume nahlásí cíle, které se nepodařilo obnovit, doplňte je běžným backfillem:

bash
lingo push --backfill-missing

Kdy použít co#

SituacePříkaz
Vyzvednutí výsledků po zavření terminálulingo pull
Push na notebooku, pull v CIlingo push then lingo pull
Běh selhal v průběhulingo resume
Po obnovení zůstaly mezerylingo push --backfill-missing