Přejít na obsah

runnerhut

Odpovědi

Přímé odpovědi na otázky, které inženýři o CI kladou.

Fakturace a náklady21

Bude mi účtováno, když selže úloha GitHub Actions?Ano. Účtují se vám minuty spotřebované do okamžiku selhání, nikoli úspěšný výsledek.Jsou GitHub Actions zdarma pro open source?Ano, na standardních běžcích hostovaných na GitHubu pro veřejná úložiště, bez minutových poplatků.Jsou GitHub Actions zdarma pro soukromá úložiště?Ne. Soukromé repozitáře dostávají měsíční povolený počet minut podle plánu a poté fakturaci za minutu.Platím poplatek za místo pro řízené běžce?Na runnerhut, č.p. Účtování probíhá za minutu výpočtu bez poplatků za jednotlivé vývojáře.Platím za čas ve frontě?Ne. Fakturace začíná, když se provede váš první krok, ne když je úloha zařazena do fronty.Platím za běžce i za vzdálený Docker builder?Ano, ale staviteli se účtují pouze sekundy, kdy aktivně staví.Jak se účtuje zrušená zakázka?Platíte za minuty uplynulé před zrušením, zaokrouhlené na fakturační přírůstek.Existuje minimální navýšení fakturace?runnerhut účty za sekundu s minimem jedné minuty na zakázku.Kolik stojí spravované GitHub Actions běžci?runnerhut Běžci Linux x64 začínají na 0,004 dolaru za minutu, což je zhruba polovina ceníkové ceny GitHubu za ekvivalentní velikost.Jaká je nejlevnější velikost běžce?Nejmenší velikost, která udrží vaši úlohu na kritické cestě – obvykle 2 nebo 4 vCPU pro testování vláken a jednotek.Je arm64 levnější než x64?Ano. Běžce runnerhut arm64 jsou cenově přibližně o 20 % nižší než ekvivalentní velikost x64.Je levnější běhat s menším počtem větších běžců?Pouze v případě, že vaše pracovní vytížení skutečně paralelizuje. Jinak platíte více za minutu za jádra, která jsou nečinná.Mohu nastavit limit útraty?Ano. runnerhut podporuje pevné rozpočtové stropy na organizaci a úložiště.Co se stane, když dojdou bezplatné kredity?Úlohy se přestanou plánovat, dokud nepřidáte platební metodu nebo nezvýšíte limit.Jak odhadnu svůj účet za GitHub Actions?Vynásobte měsíční minuty na OS sazbou za minutu pro daný OS a poté přidejte úložiště pro artefakty a mezipaměť.Jak mohu předpovídat útratu běžců?Udělejte si posledních 90 dní na pracovní postup, použijte růst rychlosti slučování a přidejte prostor pro změny matice.Proč je můj účet za GitHub Actions tak vysoký?Obvykle jedna ze čtyř věcí: minuty macOS, exploze matrice, žádné zrušení souběžnosti nebo příliš velké běžce.Platí veřejná úložiště za spravované běžce?Na standardních běžcích hostovaných GitHubem ne. U spravovaných poskytovatelů včetně runnerhut ano – ale jsou k dispozici programy s otevřeným zdrojovým kódem.Kolik stojí úložiště mezipaměti Actions?GitHub zahrnuje 10 GB na úložiště zdarma a vystěhuje nad rámec toho. runnerhut cache je neomezená a zahrnutá.Jak se účtuje úložiště snímků?Za gigabajt-měsíc pro uchovaný snímek, odděleně od výpočetních minut.Mohu spouštět více souběžných úloh, než umožňuje můj plán GitHub?Ano. Souběžnost spravovaných běžců je nastavena vaším poskytovatelem běžců, nikoli limity hostovaných běžců vašeho plánu GitHub.

Výkon10

Proč jsou GitHub Actions pomalé?Nejčastěji: sdílené vCPU, studené mezipaměti, disk připojený k síti a čas ve frontě před zahájením úlohy.Jak rychle startují běžci poté, co je úkol zařazen do fronty?runnerhut běžci startují asi za tři sekundy z teplého bazénu.Musím změnit svůj pracovní postup?Ne. Změňte náběhový štítek a vše ostatní nechte tak, jak je.Jak si mám vybrat velikost běžce?Začněte o jednu velikost nad aktuálním běžcem, poté zkontrolujte využití procesoru a zastavte, když se křivka zplošťuje.Proč se moje úlohy řadí do fronty za sebou?Dosáhli jste limitu souběžnosti – buď vašeho plánu, vaší skupiny běžců, nebo skupiny souběžnosti v pracovním postupu.Proč moje testy Pythonu běží pomaleji v CI než lokálně?pytest je standardně sériový a váš notebook má rychlejší jednojádrový výkon a teplou mezipaměť souborového systému.Proč je instalace npm pomalá v CI?node_modules zapisuje desítky tisíc malých souborů a CI disk připojený k síti to zvládá špatně.Proč se démon Gradle spouští při každém spuštění?Každá úloha CI je nový stroj, takže neexistuje žádný démon, který by se dal znovu použít – a bez konfigurační mezipaměti Gradle přehodnocuje celé sestavení.Proč moje práce vykazuje vysoké I/O čekání?Pracovní zátěž je vázána na disk – obvykle instalace závislostí, extrakce vrstvy kontejneru nebo databáze v kontejneru služeb.Kolik úloh může běžet najednou?Záleží na vašem plánu pro běžce hostované na GitHubu a na vaší nakonfigurované souběžnosti pro spravované běžce.

Ukládání do mezipaměti38

Proč Cargo všechno přestavuje?Váš klíč mezipaměti se mění při každém spuštění nebo cíl/ není vůbec ukládán do mezipaměti.Proč je obnovení mezipaměti pomalé?GitHub omezuje šířku pásma mezipaměti, takže obnovení multigigabajtové mezipaměti může trvat minuty.Jak zapíšu dobrý klíč mezipaměti?Hashujte přesně ty soubory, které určují obsah uložený v mezipaměti – obvykle soubor zámku – a nic jiného.Co jsou klíče pro obnovení?Objednané předpony byly vyzkoušeny, když přesný klíč mezipaměti chybí, takže částečná shoda může být stále obnovena.Proč moje mezipaměť vynechá každý běh?Klíč obsahuje něco, co se mění při každém spuštění – běžně github.sha nebo časové razítko.Jak dlouho keše vydrží?GitHub vyřadí mezipaměti nepoužívané po dobu 7 dnů nebo dříve, pokud úložiště přesáhne 10 GB.Jak vymažu mezipaměť?Odstraňte jej ze stránky mezipaměti akcí úložiště nebo prostřednictvím rozhraní REST API nebo gh CLI.Přenášejí se keše přes pobočky?Větev může číst mezipaměti ze sebe a ze své základní větve, ale ne z nesouvisejících větví.Mohu sdílet mezipaměť mezi pracovními postupy?Na běžcích hostovaných na GitHubu pouze v rámci stejného úložiště a rozsahu větve. Mezipaměti runnerhut jsou sdíleny napříč pracovními postupy v organizaci.Jaký je limit velikosti mezipaměti GitHub Actions?10 GB na repozitář, po kterém budou nejméně používané položky vyřazeny.Jak uložím do mezipaměti node_modules?Uložte do mezipaměti ~/.npm zakódovaný na package-lock.json nebo obnovte node_modules přímo, pokud je vaše instalace deterministická.Jak uložím závislosti pip do mezipaměti?Uložte do mezipaměti ~/.cache/pip zakódovaný v souboru requirements.txt nebo uložte do mezipaměti celé virtualenv pro větší výhru.Jak uložím moduly Go do mezipaměti?Mezipaměť ~/go/pkg/mod a ~/.cache/go-build klíčovaná na go.sum.Jak uložím do mezipaměti závislosti Cargo?Uložte do mezipaměti ~/.cargo/registry, ~/.cargo/git a cíl/ zakódované na Cargo.lock.Jak uložím závislosti Maven do mezipaměti?Mezipaměť ~/.m2/repository klíčovaná na hash každého pom.xml.Jak uložím sestavení Gradle do mezipaměti?Uložte do mezipaměti ~/.gradle/caches a ~/.gradle/wrapper a povolte mezipaměť sestavení a konfigurace.Jak uložím drahokamy Bundler do mezipaměti?Dodavatel/balíček mezipaměti zaklíčovaný na Gemfile.lock, takže nativní rozšíření jsou zkompilována jednou.Jak uložím závislosti Composeru do mezipaměti?Mezipaměť ~/.composer/cache zakódovaná na skladatel.lock.Jak uložím CocoaPods do mezipaměti?Cache Pods/ a ~/Library/Caches/CocoaPods zadané na Podfile.lock.Jak uložím závislosti Swift Package Manager do mezipaměti?Mezipaměť .build a ~/Library/Caches/org.swift.swiftpm klíčované na Package.resolved.Jak uložím Yarn Berry do mezipaměti?Uložte do mezipaměti .yarn/cache a .yarn/install-state.gz zadané na yarn.lock.Jak uložím do mezipaměti prostředí uv nebo poezie?Uložte do mezipaměti ~/.cache/uv nebo ~/.cache/pypoetry zakódované na lockfile plus adresář .venv.Jak uložím prohlížeče Playwright do mezipaměti?Vyrovnávací paměť ~/.cache/ms-playwright zadaná na verzi Playwright z vašeho lockfile.Jak uložím vrstvy Docker do mezipaměti?Použijte vzdálený tvůrce, který udržuje mezipaměť lokálně, nebo exportujte do registru pomocí mezipaměti a mezipaměti.Funguje ukládání do mezipaměti uvnitř úlohy kontejneru?Ano, ale cesty uvnitř kontejneru se liší od cest na hostiteli, takže klíče mezipaměti musí odkazovat na cesty kontejneru.Fungují mezipaměti napříč architekturami?Ne. Kompilované artefakty pro x64 nejsou platné na arm64, takže architektura musí být součástí klíče.Fungují mezipaměti na běžcích Windows?Ano, ale oddělovače cest a rozlišování velkých a malých písmen se liší, takže klíče a cesty vyžadují zpracování specifické pro Windows.Jak udržím mezipaměť vrstvy Docker mezi požadavky na stažení?Použijte trvalý vzdálený tvůrce — jeho mezipaměť není omezena na větev.Mohu ukládat vytvořený obraz do mezipaměti namísto přestavby?Ano – vložte jej do registru označeného hash obsahu a vytáhněte jej, když se vstupy nezmění.Mohu udržovat databázi v teple mezi úlohami?Ne se servisními kontejnery, které se při práci zničí. Místo toho načtěte předem migrovaný výpis schématu.Mohu si ponechat Xcode DerivedData mezi běhy?Ano. Persist ~/Library/Developer/Xcode/DerivedData – je to největší výhra pro iOS CI.Nahrazují snapshot runnery akce/cache?Mohou. Snímek obnoví stav celého počítače, takže krok instalace zmizí, místo aby se zrychlil.Co se přenáší ve snímku?Celý souborový systém v okamžiku pořízení snímku – nainstalované balíčky, zabudovaná rozšíření, adresáře toolchain a mezipaměť teplých stránek.Jak zruším platnost snímku?Zadejte jej do hash souboru lockfile, aby změna závislosti automaticky spustila přestavbu.Jak dlouho snímky vydrží?14 dní ve výchozím nastavení na runnerhut, poté přestavěno na další použití.Mohu pořídit snímek větve funkce?Ano, a snímky větví jsou od sebe izolované.Co jsou to snapshot runners?Runnery, které se spouštějí z obrazu souborového systému zachyceného po instalaci vašich závislostí, takže instalace je úplně přeskočena.Fungují snímky na běžcích macOS?Ano, a tam jsou obzvláště cenné, protože CocoaPods a DerivedData se pomalu obnovují.

paže6412

Mohou GitHub Actions spustit arm64?Ano. GitHub nabízí běžcům arm64 na placených plánech a spravovaní poskytovatelé včetně runnerhut je nabízejí na všech plánech.Mohu vytvořit obrázky arm64 na x64 runneru?Ano, s QEMU — ale je to 5–40× pomalejší než nativní vytváření.Co se změní při přechodu z x64 na arm64?Nativní moduly, kola Pythonu a jakékoli x86 sestavení potřebují podporu aarch64. Většina mainstreamových závislostí ji nyní má.Mohu spouštět úlohy arm64 a x64 ve stejném pracovním postupu?Ano. Pro každou architekturu použijte matici s jiným štítkem runner.Podporují běžci arm64 buildx?Ano a na nativním hardwaru arm64 buildx vytváří obrazy arm64 bez emulace.Mohu spustit 32bitové sestavení ARM na běžcích arm64?Ano, prostřednictvím křížové kompilace s armhf toolchain nebo s podporou multilib, pokud je k dispozici.Jak spustím integrační testy arm64?Spusťte celou úlohu na nativním běhu arm64, včetně všech servisních kontejnerů, které musí mít obrázky arm64.Jaké velikosti runnerů arm64 jsou k dispozici?runnerhut nabízí 2 až 64 běžců vCPU arm64 na Ubuntu 22.04 a 24.04.Používají běžci arm64 jiný pracovní adresář?Ne. Cesty odpovídají obrazům x64, takže pracovní postupy se přenášejí beze změn.Jak vytvořím binární Rust pro více cílů?Použijte matici s jedním nativním běžcem na cíl, spíše než křížovou kompilací všeho na jednom počítači.Mohou GitHub Actions vytvářet obrázky s více oblouky?Ano – buď s QEMU na jednom runneru, nebo nativně na runneru podle architektury a sloučeným do seznamu manifestů.Je rychlejší QEMU nebo nativní arm64?Nativní, faktorem 5 až 40 v závislosti na tom, jak moc se sestavení zkompiluje.

macOS a iOS15

Podporují běžci GitHub Actions macOS?Ano, poskytovatelé hostovaní i spravovaní na GitHubu nabízejí běžce pro macOS na křemíku Apple.Mohu vytvářet aplikace pro iOS bez běžce pro Mac?Ne. Xcode běží pouze na macOS, takže sestavení iOS vyžaduje běžec pro macOS.Je Xcode předinstalovaný na zařízeních pro macOS?Ano. Obrázky runnerhut dodávají několik verzí Xcode s odpovídajícími nástroji příkazového řádku.Jak mohu vybrat verzi Xcode?Před kroky sestavení spusťte sudo xcode-select -s /Applications/Xcode_16.4.app.Jaké verze Xcode jsou k dispozici?runnerhut obrazy macOS 15 nesou Xcode 16.0, 16.2 a 16.4; Obrazy macOS 14 nesou 15.2 a 15.4.Jaké verze macOS jsou podporovány?runnerhut nabízí obrázky macOS 14 a macOS 15 na křemíku Apple.Podporuje GitHub Actions křemík Apple?Ano. Spouštěče macOS hostované i spravované na GitHubu nyní běží na křemíku Apple.Kolik disku mají běžci pro macOS?runnerhut macOS runnery poskytují 250 GB až 1 TB NVMe v závislosti na velikosti.Která běhová prostředí simulátoru se dodávají na zařízení macOS?iOS 17.5 až 18.4, plus runtimes watchOS, tvOS a visionOS.Mohu použít Docker na zařízeních macOS?Pouze přes virtuální počítač s Linuxem, který je pomalý. Místo toho spouštějte úlohy Docker na běžcích Linuxu.Mohu provozovat běžce pro macOS v EU?Ano. runnerhut provozuje kapacitu macOS v regionech EU pro požadavky na rezidenci dat.Mohu spustit sestavení Android a iOS v jednom pracovním postupu?Ano – použijte matici s běžcem pro macOS pro iOS a s běžcem pro Linux pro Android.Jak urychlím opakované sestavení Xcode?Přetrvávat odvozená data mezi běhy a připnout verzi Xcode.Jak spustím testy iOS paralelně?Částečně podle testovacího cíle nebo testovací třídy v několika simulátorech na jednom velkém zařízení macOS.Jak notářsky ověřit aplikaci pro macOS v CI?Použijte notarytool s klíčem App Store Connect API uloženým jako tajný.

Docker17

Jak zkrátím dobu vytažení obrázku?Použijte vyrovnávací mezipaměť registru ve stejné síti jako běžec.Jak resetuji mezipaměť stavitele Docker?Spusťte docker buildx prune na builderu nebo znovu vytvořte instanci builderu.Podporují vzdálení stavitelé multiplatformní sestavení?Ano. runnerhut spouští samostatné stavitele amd64 a arm64 a spojuje výsledky.Jak mohu odeslat seznam manifestů?Sestavte jednotlivé architektury pomocí přehledu a poté je zkombinujte s vytvořením imagetools docker buildx.Proč je můj Docker sestaven pomalu?Mezipaměť studené vrstvy, mezipaměť přenášená po síti nebo arm64 postavená v emulaci.Proč sestavení Docker vyčerpá disk?Běžci hostovaní na GitHubu mají kolem 14 GB volného místa, které velké obrázky a jejich mezipaměť vrstvy rychle vyčerpávají.Proč aktualizace základního obrazu zruší platnost všeho?Každá vrstva po FROM závisí na souhrnu základního obrázku, takže nová báze všechny z nich zruší.Jaký je rozdíl mezi cache-from a cache-to?cache-from importuje existující mezipaměť vrstvy; cache-to exportuje mezipaměť vytvořenou tímto sestavením.Potřebuji buildx?Pro multiplatformní sestavení, připojení mezipaměti nebo vzdálené tvůrce ano. Pro jednoduchou jednoobloukovou stavbu ne.Co je vzdálený tvůrce Docker?Trvalá instance BuildKit, ke které se vaše úloha připojuje, která udržuje mezipaměť vrstvy na vlastním disku.Jak je účtován vzdálený stavitel?Za sekundu aktivního času sestavení, odděleně od minut běžce.Mohou dvě práce sdílet jednoho stavitele?Ano. Nohy matice a samostatné pracovní postupy se mohou připojit ke stejnému staviteli a sdílet jeho mezipaměť.Jak mohu stavět a tlačit v jednom kroku?Použijte docker/build-push-action s push: true.Jak se používá Docker Pečeme?Definujte cíle v docker-bake.hcl a spusťte docker buildx bake v jednom kroku.Jak se přihlásím do soukromého registru?Použijte docker/login-akci s tokenem nebo OIDC pro cloudové registry.Mohu spustit Docker Compose?Ano. Compose v2 je předinstalovaný; použijte docker compose up -d --čekejte, aby se kroky při spouštění neprobíhaly.Mohu použít Podman místo Docker?Ano. Podman je k dispozici a je z velké části kompatibilní s CLI s Docker.

Bezpečnost19

Jsou snapshot runnery bezpečné pro veřejná úložiště?Pouze v případě, že snímky jsou pořizovány z důvěryhodných větví a nikdy z požadavků na vytažení z vidlice.Jak vygeneruji SBOM?Povolte výstup buildx sbom: true nebo spusťte syft proti vytvořenému obrazu.Jak připojím původ stavby?Použijte action/attest-build-provenance nebo původ buildx: true atestation.Jak předám tajemství do sestavení Docker?Používejte tajemství sestavení BuildKit s --secret, nikdy ARG nebo ENV.Jsou běžci GitHub Actions zabezpečeni?Renomovaní spravovaní běžci hostovaní na GitHubu jsou pomíjivé virtuální počítače na jedno použití, což je ten správný model izolace.Ukládají běžci můj zdrojový kód?Pouze po dobu výkonu práce. runnerhut po skončení úlohy zničí VM a vymaže jeho disk.Může běžecká platforma vidět moje tajemství?Tajemství jsou dešifrována v paměti běžce, aby mohla být použita, takže by to technicky mohla jakákoli platforma běžce.Jak nastavím oprávnění GITHUB_TOKEN?Přidejte blok oprávnění na úrovni pracovního postupu nebo úlohy a udělujte pouze potřebné rozsahy.Jak se mohu ověřit k AWS pomocí OIDC?Nakonfigurujte GitHub jako poskytovatele OIDC v IAM a použijte aws-actions/configure-aws-credentials s rolí.Mění spravovaní běžci moje oprávnění GitHub?Ne. Úlohy běží se stejným GITHUB_TOKEN a stejnými oprávněními jako u běžců hostovaných na GitHubu.Mohu omezit, která úložiště používají mé běžce?Ano, se skupinami běžců zaměřenými na konkrétní organizace nebo úložiště.Vyhovuje runnerhut SOC 2?runnerhut udržuje SOC 2 Type 2, přičemž zpráva je k dispozici pod NDA.Kde jsou uložena moje data sestavení?V regionu, který vyberete. Výpočet, mezipaměť, protokoly a metriky jsou všechny připojeny ke stejné oblasti.Mohu si ponechat stavby pouze v EU?Ano. Zavedení pouze pro EU připíná výpočty, mezipaměť, protokoly a metriky do regionů EU.Mohu omezit odchozí provoz?Ano. Zásady výstupu výchozí-zamítnout a povolit pouze cíle, které uvádíte.Jak mohu auditovat změny konfigurace běžce?Protokol auditu zaznamenává aktéra, časové razítko, zdrojovou IP a hodnoty před/po pro každou změnu konfigurace.Kde fyzicky běhají zvládnutí běžci?V datových centrech poskytovatele nebo ve vlastním cloudovém účtu pod BYOC.Co se stane s kluznými disky po dokončení úlohy?Na runnerhut jsou kryptograficky vymazány a VM zničeny.Udržují běžci stav mezi zaměstnáními?Pomíjivé běžce ne. Trvalí samoobslužní běžci ano, což je bezpečnostní riziko na veřejných úložištích.

Přineste si vlastní cloud18

Mohou běžci přistupovat k mé soukromé síti?Ano, přes BYOC běžce ve vašem VPC nebo síťovou síť, jako je Tailscale.Mohou běžci běžet v mém vlastním cloudovém účtu?Ano. BYOC nasazuje běžce do vašeho účtu AWS, GCP nebo Azure, zatímco řídicí rovina zůstává spravována.Co vytvoří runnerhut v mém cloudovém účtu?Skupina automatického škálování, segment mezipaměti, mezipaměť mezipaměti registru, role IAM s rozsahem a koncový bod VPC.Jaká oprávnění AWS potřebuje BYOC?Oprávnění ke správě vlastní skupiny automatického škálování, její mezipaměti a role instance – nic širšího.Mohu použít vlastní VPC?Ano. Zadáte VPC a ID podsítě a jsou tam umístěny běžci.Mohou běžci BYOC dosáhnout interních služeb?Ano – to je hlavní důvod, proč používat BYOC. Jsou umístěny ve vaší síti s normálním směrováním.Potřebují běžci BYOC bránu NAT?Potřebují odchozí internet pro stahování obrázků a balíčků, což obvykle znamená bránu NAT.Mohou běžci BYOC běžet v soukromé podsíti?Ano, a měli by. Odchozí přístup probíhá přes koncové body NAT nebo VPC.Mohu přiřadit roli IAM běžci BYOC?Ano, prostřednictvím profilu instance – úlohy tak získávají přihlašovací údaje bez jakéhokoli uloženého tajemství.Funguje BYOC s IMDSv2?Ano a IMDSv2 je standardně vynuceno.Mohu spustit BYOC ve více regionech?Ano. Nasaďte modul podle regionu a označte běžce podle regionu.Podporuje BYOC vlastní obrázky?Ano. Dodejte svůj vlastní obraz AMI nebo stroje se zapečenými nástroji.Podporuje BYOC Windows?Ano na AWS a Azure. Podpora GCP Windows je omezenější.Podporuje BYOC místní SSD GCP?Ano, na rodinách strojů, které to nabízejí.Jak funguje fakturace BYOC?Platíte svému poskytovateli cloudu za výpočetní výkon a síť a společnosti runnerhut snížený poplatek za kontrolní letadlo.Jak mohu označit zdroje BYOC?Nastavte tagy pro rozdělení nákladů v modulu Terraform; šíří se do každého vytvořeného zdroje.Jak odstraním zásobník BYOC?Vypusťte běžce, pak terraform zničte modul.Mohu ovládat výstup na BYOC běžcích?Ano, s bezpečnostními skupinami, NACL a runnerhut politikou výstupu společně.

Pracovní postupy30

Kolik pracovních míst může matice rozprostřít?GitHub omezuje jednu matici na 256 úloh na běh pracovního postupu.Jak lokálně reprodukuji selhání CI?Porovnejte obrázek běžce a poté SSH do živého běhu, pokud se chyba objeví pouze v CI.Mohu SSH do běžce?Ano. runnerhut podporuje otevření relace ladění na běžící úloze pomocí autorizovaného klíče SSH.Mohu kombinovat běhy hostované a spravované na GitHubu?Ano. run-on je na úlohu, takže různé úlohy v jednom pracovním postupu mohou využívat různé poskytovatele.Jak vyměním běžce?Upravte hodnotu spuštění pro úlohu. Nic jiného se měnit nemusí.Jak spustím úlohu pouze při změně souborů?Použijte cesty nebo ignorování cest na spouštěči nebo akci detekce změn pro jemnější ovládání.Jak spustím pracovní postup ručně?Přidejte spouštěč workflow_dispatch, volitelně se zadanými vstupy.Jak spustím úlohy podle plánu?Použijte spouštěč plánu se syntaxí cron v UTC.Jak zruším nahrazené běhy?Nastavte skupinu souběžnosti zakódovanou na ref s cancel-in-progress: true.Jak omezím pracovní postup na jedno spuštění najednou?Použijte název skupiny s pevnou souběžností s právě probíhajícím zrušením: false.Co se stane, když dva pracovní postupy sdílejí skupinu souběžných prací?Serializují se — druhý čeká nebo zruší první v závislosti na probíhajícím zrušení.Jak nastavím časový limit úlohy?Přidejte k úloze minutový časový limit. Výchozí hodnota je šest hodin.Jak opakuji neúspěšný krok?Použijte akci opakování nebo zabalte příkaz do smyčky opakování shellu.Jak mohu znovu použít pracovní postup napříč úložišti?Publikujte opakovaně použitelný pracovní postup a zavolejte jej pomocí workflow_call.Jak napíšu složenou akci?Vytvořte action.yml pomocí run.using: kompozit a seznamu kroků.Jak mohu použít matici zahrnutí a vyloučení?zahrnují přidávání nebo prodlužování kombinací; Vyloučit je odstraní z generovaného produktu.Jak přeskočím CI na potvrzení?Přidejte [skip ci] do zprávy odevzdání.Jak napíšu shrnutí práce?Připojte Markdown k $GITHUB_STEP_SUMMARY.Jak spustím databázi v CI?Deklarujte jej jako servisní kontejner se zdravotní kontrolou.Jak mohu publikovat balíček?Použijte důvěryhodné publikování OIDC tam, kde to registr podporuje, jinak token s rozsahem v tajném prostředí.Jak mohu sdílet data mezi úlohami?Nahrajte artefakt do jedné úlohy a stáhněte jej do další, nebo použijte výstupy úlohy pro malé hodnoty.Jak zastavím nasazení pomalého blokování pracovního postupu?Oddělte požadované kontroly od poradenských a označte pouze rychlé a spolehlivé úlohy jako požadované.Jak spustím testy prohlížeče bez hlavy?Použijte vlajku bez hlavy pro svého běžce nebo xvfb-run pro nástroje, které vyžadují displej.Jak spustím testy závodních detektorů Go?Run go test -race. Očekávejte zhruba 2–10× pomalejší provádění a vyšší využití paměti.Jaký je rozdíl mezi prací a krokem?Úloha běží na jednom běžci a obsahuje kroky; kroky probíhají postupně ve stejném pracovním prostoru.Jaký je rozdíl mezi běžci hostovanými na GitHubu a samoobslužnými běžci?Hostované na GitHubu jsou spravované, pomíjivé a účtované za minutu. Samoobslužné jsou vaše k provozu na vašem hardwaru.Které operační systémy lze GitHub Actions spustit?Linux, Windows a macOS, na x64 a arm64 v závislosti na poskytovateli.Jak dlouho jsou artefakty uchovávány?90 dní ve výchozím nastavení, konfigurovatelné na úložiště nebo na nahrání až na jeden den.Jak odladím neúspěšnou úlohu?Povolte protokolování krokového ladění, přidejte souhrn úlohy nebo otevřete relaci SSH na runneru.Jak spustím úlohu pouze na žádostech o stažení?Použijte trigger pull_request a podmínku if pro jemnější ovládání, jako je přeskakování konceptů.

Pozorovatelnost19

Jak zobrazím náklady na pracovní postup?Řídicí panel runnerhut rozděluje výdaje podle pracovního postupu, úlohy, štítku a úložiště.Jak zjistím cenu za štítek běžce?Filtrujte panel využití podle štítku, abyste viděli minuty a výdaje podle typu běžce.Jak poznám podměrečného běžce?Trvalý výkon CPU téměř 100 %, tlak paměti nebo swapovací aktivita během úlohy.Jak najdu nejpomalejší krok v pracovním postupu?Seřaďte kroky podle délky v zobrazení běhu nebo použijte časovou osu runnerhut, která zobrazuje frontu, nastavení a čas kroku samostatně.Jak zjistím, který pracovní postup je pomalejší?Porovnejte trvání p95 na pracovní postup měsíc za měsíc na analytickém panelu.Jak změřím míru návštěvnosti mezipaměti?Řídicí panel runnerhut hlásí počet zásahů, dobu obnovení a velikost na klíč mezipaměti.Jak exportuji pracovní data?Použijte runnerhut API nebo GitHub Actions REST API a zapište výsledky do CSV.Může se agent AI dotazovat na mé metriky CI?Ano, prostřednictvím serveru runnerhut MCP, který jako nástroje odhaluje sestavení, trvání, selhání a náklady.Mohou agenti AI spouštět úlohy CI?Ano, prostřednictvím API nebo tlačením větví, jako každý jiný aktér.Jaké metriky API odhaluje?Doba fronty, percentily trvání, četnost přístupů do mezipaměti, využití CPU a paměti a náklady na úlohu, štítek a pracovní postup.Jak zjistím využití CPU a paměti pro úlohu?runnerhut automaticky zaznamenává využití jednotlivých úloh a zobrazuje je na stránce běhu.Mohu upozornit na úlohy s nedostatkem paměti?Ano. Upozornění na zabití OOM nebo na využití paměti překračující práh.Jak vytvořím týdenní zdravotní zprávu CI?Naplánujte si pracovní postup, který se dotazuje na rozhraní API pro metriky a zaznamenává trvání p95, četnost zásahů do mezipaměti, četnost vloček a výdaje.Proč byla moje práce zabita výstupním kódem 137?To je zabití OOM – proces překročil dostupnou paměť.Proč mé úloze došel disk?Běžci hostovaní na GitHubu mají zhruba 14 GB volného místa; Vrstvy Docker a moduly uzlů se tak rychle vyčerpávají.Mají běžci velké disky?Běžci hostovaní na GitHubu mají volných asi 14 GB. runnerhut runner poskytují 150 GB až 2 TB místního NVMe.Omezují skupiny běžců souběžnost?Mohou. Skupina může mít svůj vlastní strop souběžnosti nezávisle na limitu vašeho účtu.Jaké limity rychlosti GitHub API ovlivňují CI?GITHUB_TOKEN je omezen na úložiště za hodinu; pracovní postupy provádějící mnoho volání API jej mohou vyčerpat.Proč mé úlohy dosáhly časového limitu sítě?Obvykle omezení rychlosti registru, úzké hrdlo brány NAT nebo politika odchozího provozu, která tiše snižuje provoz.