Przejdź do treści

runnerhut

Odpowiedzi

Bezpośrednie odpowiedzi na pytania inżynierów o CI.

Rozliczenia i koszty21

Czy zostaną naliczone opłaty w przypadku niepowodzenia zadania GitHub Actions?Tak. Opłaty są naliczane za minuty wykorzystane do momentu awarii, a nie za pomyślny wynik.Czy GitHub Actions są bezpłatne dla oprogramowania typu open source?Tak, w standardowych modułach uruchamiających repozytoria publiczne hostowanych na GitHubie, bez opłat minutowych.Czy GitHub Actions są bezpłatne dla prywatnych repozytoriów?Nie. Prywatne repozytoria otrzymują według planu miesięczny limit obejmujący minuty, a następnie rozliczają się za minutę.Czy płacę opłatę za miejsce dla zarządzanych biegaczy?Na runnerhut, nie. Rozliczenia naliczane są za minutę obliczeniową, bez opłat za programistę.Czy płacę za czas w kolejce?Nie. Rozliczenia rozpoczynają się w momencie wykonania pierwszego kroku, a nie w momencie umieszczenia zadania w kolejce.Czy płacę zarówno za moduł biegacza, jak i za zdalnego kreatora Docker?Tak, ale budowniczy płaci tylko za sekundy, w których aktywnie buduje.W jaki sposób anulowane zadanie jest rozliczane?Płacisz za minuty, które upłynęły przed anulowaniem, zaokrąglone do przyrostu rachunku.Czy istnieje minimalny przyrost rozliczeniowy?runnerhut rachunki za sekundę przy minimum jednej minucie na pracę.Ile kosztują zarządzane narzędzia GitHub Actions?runnerhut Linux x64 biegacze zaczynają się od 0,004 dolara za minutę, czyli mniej więcej połowę ceny katalogowej GitHuba za równoważny rozmiar.Jaki jest najtańszy rozmiar biegacza?Najmniejszy rozmiar, który utrzymuje zadanie na ścieżce krytycznej — zwykle 2 lub 4 procesory wirtualne na potrzeby testów lintowych i jednostkowych.Czy arm64 jest tańszy niż x64?Tak. Cena modułów runnerhut arm64 jest o około 20% niższa od równoważnego rozmiaru x64.Czy taniej jest biegać z mniejszą liczbą większych biegaczy?Tylko jeśli obciążenie faktycznie jest równoległe. W przeciwnym razie płacisz więcej za minutę za rdzenie, które pozostają bezczynne.Czy mogę ustawić limit wydatków?Tak. runnerhut obsługuje twarde limity budżetowe na organizację i na repozytorium.Co się stanie, gdy skończą się darmowe środki?Zadania nie są planowane, dopóki nie dodasz metody płatności lub nie podniesiesz limitu.Jak oszacować rachunek za GitHub Actions?Pomnóż miesięczne minuty na system operacyjny przez stawkę za minutę dla tego systemu operacyjnego, a następnie dodaj miejsce na artefakty i pamięć podręczną.Jak prognozować wydatki biegacza?Poświęć końcowe 90-dniowe minuty na każdy przepływ pracy, zastosuj wzrost współczynnika łączenia i zwiększ rezerwę na zmiany macierzy.Dlaczego mój rachunek za GitHub Actions jest tak wysoki?Zwykle jedna z czterech rzeczy: minuty w systemie MacOS, eksplozja matrycy, brak anulowania współbieżności lub zbyt duże moduły uruchamiające.Czy publiczne repozytoria płacą za zarządzane moduły uruchamiające?W standardowych modułach uruchamiających hostowanych na GitHubie nie. W przypadku dostawców zarządzanych, w tym runnerhut, tak — ale dostępne są programy typu open source.Ile kosztuje pamięć podręczna Actions?GitHub udostępnia bezpłatnie 10 GB na repozytorium, a poza tym usuwa eksmisje. Pamięć podręczna runnerhut jest nieograniczona i wliczona w cenę.Jak rozliczane jest miejsce na migawki?Za gigabajt miesięcznie za zachowaną migawkę, oddzielnie od minut obliczeniowych.Czy mogę uruchamiać więcej jednoczesnych zadań, niż pozwala na to mój plan GitHub?Tak. Współbieżność zarządzanych biegaczy jest ustawiana przez dostawcę biegaczy, a nie limity hostowanych biegaczy w Twoim planie GitHub.

Wydajność10

Dlaczego GitHub Actions działają wolno?Najczęściej: współdzielony procesor wirtualny, zimne pamięci podręczne, dysk podłączony do sieci i czas oczekiwania w kolejce przed rozpoczęciem zadania.Jak szybko biegacze rozpoczynają pracę po ustawieniu zadania w kolejce?runnerhut biegacze wystartują za około trzy sekundy z ciepłego basenu.Czy muszę zmienić swój przepływ pracy?Nie. Zmień etykietę użytkową i pozostaw wszystko inne bez zmian.Jak wybrać rozmiar biegacza?Rozpocznij o jeden rozmiar większy od bieżącego, następnie sprawdź wykorzystanie procesora i zatrzymaj się, gdy krzywa się spłaszczy.Dlaczego moje zadania ustawiają się w kolejce jedna za drugą?Osiągnąłeś limit współbieżności — Twojego planu, grupy biegaczy lub grupy współbieżności w przepływie pracy.Dlaczego moje testy Pythona działają wolniej w CI niż lokalnie?pytest jest domyślnie portem szeregowym, a Twój laptop ma szybszą wydajność jednordzeniową i ciepłą pamięć podręczną systemu plików.Dlaczego npm install działa wolno w CI?node_modules zapisuje dziesiątki tysięcy małych plików, a podłączony do sieci dysk CI radzi sobie z tym źle.Dlaczego demon Gradle uruchamia każde uruchomienie?Każde zadanie CI to nowa maszyna, więc nie ma demona, którego można by ponownie użyć — a bez pamięci podręcznej konfiguracji Gradle ponownie ocenia całą kompilację.Dlaczego moje zadanie pokazuje wysoki poziom operacji we/wy, czekanie?Obciążenie jest powiązane z dyskiem — zwykle jest to instalacja zależności, ekstrakcja warstwy kontenera lub baza danych w kontenerze usług.Ile zadań można uruchomić jednocześnie?Zależy to od Twojego planu dotyczącego modułów biegaczy hostowanych w GitHub oraz skonfigurowanej współbieżności dla zarządzanych elementów biegaczy.

Buforowanie38

Dlaczego Cargo wszystko odbudowuje?Twój klucz pamięci podręcznej zmienia się przy każdym uruchomieniu lub cel/ w ogóle nie jest buforowany.Dlaczego przywracanie pamięci podręcznej jest powolne?GitHub ogranicza przepustowość pamięci podręcznej, więc przywrócenie wielogigabajtowej pamięci podręcznej może zająć kilka minut.Jak napisać dobry klucz pamięci podręcznej?Zaszyfruj dokładnie te pliki, które określają zawartość pamięci podręcznej — zwykle plik blokujący — i nic więcej.Co to są klucze przywracania?Uporządkowane prefiksy są wypróbowywane, gdy brakuje dokładnego klucza pamięci podręcznej, więc nadal można przywrócić częściowe dopasowanie.Dlaczego moja pamięć podręczna pomija każde uruchomienie?Klucz zawiera element, który zmienia się przy każdym uruchomieniu — zwykle github.sha lub znacznik czasu.Jak długo działają skrytki?GitHub eksmituje pamięci podręczne nieużywane przez 7 dni lub wcześniej, jeśli repozytorium przekracza 10 GB.Jak wyczyścić pamięć podręczną?Usuń go ze strony pamięci podręcznej akcji w repozytorium lub poprzez interfejs API REST lub gh CLI.Czy pamięci podręczne przenoszą się między gałęziami?Gałąź może czytać pamięci podręczne od siebie i od swojej gałęzi podstawowej, ale nie od gałęzi niepowiązanych.Czy mogę współdzielić pamięć podręczną pomiędzy przepływami pracy?W modułach uruchamiających hostowanych na GitHubie, tylko w tym samym zakresie repozytorium i gałęzi. Pamięci podręczne runnerhut są współdzielone pomiędzy przepływami pracy w organizacji.Jaki jest limit rozmiaru pamięci podręcznej GitHub Actions?10 GB na repozytorium, po czym ostatnio używane wpisy są usuwane.Jak buforować moduły węzłów?Zapisz w pamięci podręcznej ~/.npm w pliku package-lock.json lub przywróć moduły węzła bezpośrednio, jeśli instalacja jest deterministyczna.Jak buforować zależności pip?Buforuj ~/.cache/pip z kluczem w pliku require.txt lub buforuj całe środowisko wirtualne, aby uzyskać większą wygraną.Jak buforować moduły Go?Pamięć podręczna ~/go/pkg/mod i ~/.cache/go-build z kluczem na go.sum.Jak buforować zależności Cargo?Pamięć podręczna ~/.cargo/registry, ~/.cargo/git i target/ wpisane w Cargo.lock.Jak buforować zależności Mavena?Pamięć podręczna ~/.m2/repozytorium z kluczem skrótu każdego pliku pom.xml.Jak buforować kompilacje Gradle?Cache ~/.gradle/cache i ~/.gradle/wrapper oraz włącz pamięć podręczną kompilacji i konfiguracji.Jak buforować klejnoty Bundler?Dostawca/pakiet pamięci podręcznej z kluczem w Gemfile.lock, więc rozszerzenia natywne są kompilowane raz.Jak buforować zależności Composera?Pamięć podręczna ~/.composer/cache wpisana na pliku Composer.lock.Jak buforować CocoaPods?Cache Pods/ i ~/Library/Caches/CocoaPods wpisane na Podfile.lock.Jak buforować zależności Menedżera pakietów Swift?Cache .build i ~/Library/Caches/org.swift.swiftpm wpisane w Package.resolved.Jak buforować Yarn Berry?Pamięć podręczna .yarn/cache i .yarn/install-state.gz wpisane na przędzy.lock.Jak buforować środowiska UV lub Poetry?Pamięć podręczna ~/.cache/uv lub ~/.cache/pypoetry wpisana w pliku blokady oraz katalog .venv.Jak buforować przeglądarki Playwright?Cache ~/.cache/ms-playwright wpisał wersję Playwright z pliku blokady.Jak buforować warstwy Docker?Użyj zdalnego kreatora, który przechowuje pamięć podręczną lokalnie, lub wyeksportuj do rejestru z funkcjami pamięci podręcznej i pamięci podręcznej.Czy buforowanie działa wewnątrz zadania kontenerowego?Tak, ale ścieżki wewnątrz kontenera różnią się od ścieżek na hoście, więc klucze pamięci podręcznej muszą odwoływać się do ścieżek kontenera.Czy pamięci podręczne działają w różnych architekturach?Nie. Skompilowane artefakty dla x64 nie działają na arm64, więc architektura musi być częścią klucza.Czy pamięci podręczne działają na platformach Windows?Tak, ale separatory ścieżek i rozróżnianie wielkości liter są różne, więc klucze i ścieżki wymagają obsługi specyficznej dla systemu Windows.Jak zachować pamięć podręczną warstwy Docker pomiędzy żądaniami ściągnięcia?Użyj trwałego zdalnego konstruktora — jego pamięć podręczna nie jest ograniczona do gałęzi.Czy mogę buforować zbudowany obraz zamiast go odbudowywać?Tak — wypchnij go do rejestru oznaczonego skrótem zawartości i pobierz, gdy dane wejściowe pozostaną niezmienione.Czy mogę utrzymywać ciepłą bazę danych pomiędzy zadaniami?Nie z kontenerami usługowymi, które ulegają zniszczeniu wraz z pracą. Zamiast tego załaduj wstępnie zmigrowany zrzut schematu.Czy mogę przechowywać Xcode DerivedData między uruchomieniami?Tak. Persist ~/Library/Developer/Xcode/DerivedData — to największe pojedyncze zwycięstwo iOS CI.Czy programy uruchamiające migawki zastępują akcje/pamięć podręczną?Mogą. Migawka przywraca stan całego komputera, więc etap instalacji raczej znika, niż przyspiesza.Co przenosi się na migawkę?Cały system plików w momencie tworzenia migawki — zainstalowane pakiety, zbudowane rozszerzenia, katalogi narzędzi i pamięć podręczna ciepłych stron.Jak unieważnić migawkę?Wpisz go w skrótu pliku blokady, aby zmiana zależności automatycznie uruchomiła przebudowę.Jak długo trwają migawki?Domyślnie 14 dni w runnerhut, a następnie odbudowane przy następnym użyciu.Czy mogę wykonać migawkę w gałęzi funkcji?Tak, a migawki oddziałów są od siebie odizolowane.Czym są programy uruchamiające migawki?Programy uruchamiające, które uruchamiają się z obrazu systemu plików przechwyconego po zainstalowaniu zależności, więc instalacja jest całkowicie pomijana.Czy migawki działają na urządzeniach z systemem macOS?Tak, i są tam szczególnie cenne, ponieważ zarówno CocoaPods, jak i DerivedData wolno się odbudowują.

ramię6412

Czy GitHub Actions mogą uruchamiać arm64?Tak. GitHub oferuje biegaczy arm64 w płatnych planach, a zarządzani dostawcy, w tym runnerhut, oferują je we wszystkich planach.Czy mogę tworzyć obrazy arm64 na platformie x64?Tak, z QEMU — ale jest to 5–40 razy wolniejsze niż budowanie natywne.Co się zmienia po przejściu z x64 na arm64?Natywne moduły, koła Pythona i każdy zestaw x86 wymagają obsługi aarch64. Większość głównych zależności ma to teraz.Czy mogę uruchamiać zadania arm64 i x64 w tym samym przepływie pracy?Tak. Użyj macierzy z inną etykietą modułu uruchamiającego dla każdej architektury.Czy biegacze arm64 obsługują buildx?Tak, a na natywnym sprzęcie arm64 buildx tworzy obrazy arm64 bez emulacji.Czy mogę uruchamiać 32-bitowe kompilacje ARM na procesorach arm64?Tak, poprzez kompilację krzyżową z zestawem narzędzi armhf lub z obsługą multilib, jeśli jest dostępna.Jak uruchomić testy integracyjne arm64?Uruchom całe zadanie na natywnym programie uruchamiającym arm64, łącznie z wszelkimi kontenerami usług, które muszą zawierać obrazy arm64.Jakie rozmiary prowadnic arm64 są dostępne?runnerhut oferuje od 2 do 64 modułów vCPU arm64 w systemach Ubuntu 22.04 i 24.04.Czy programy uruchamiające arm64 używają innego katalogu roboczego?Nie. Ścieżki odpowiadają obrazom x64, więc przepływy pracy są przenoszone bez zmian.Jak zbudować plik binarny Rust dla wielu celów?Użyj macierzy z jednym natywnym modułem uruchamiającym na cel, zamiast kompilować wszystko na jednym komputerze.Czy GitHub Actions mogą tworzyć obrazy obejmujące wiele arch.?Tak — albo z QEMU na jednym biegaczu, albo natywnie na biegaczach dla poszczególnych architektur i połączonych w listę manifestów.Czy QEMU lub natywny arm64 jest szybszy?Natywny, współczynnik od 5 do 40, w zależności od stopnia kompilacji kompilacji.

macOS i iOS15

Czy moduły uruchamiające GitHub Actions obsługują system macOS?Tak, zarówno dostawcy hostowani na GitHubie, jak i zarządzani, oferują moduły uruchamiające system macOS na krzemie Apple.Czy mogę tworzyć aplikacje na iOS bez modułu uruchamiającego dla komputerów Mac?Nie. Xcode działa tylko na macOS, więc kompilacja na iOS wymaga modułu uruchamiającego macOS.Czy Xcode jest preinstalowany na urządzeniach z systemem macOS?Tak. Obrazy runnerhut zawierają kilka wersji Xcode z pasującymi narzędziami wiersza poleceń.Jak wybrać wersję Xcode?Uruchom sudo xcode-select -s /Applications/Xcode_16.4.app przed etapami kompilacji.Jakie wersje Xcode są dostępne?obrazy runnerhut macOS 15 zawierają Xcode 16.0, 16.2 i 16.4; Obrazy macOS 14 zawierają wersje 15.2 i 15.4.Jakie wersje systemu macOS są obsługiwane?runnerhut oferuje obrazy macOS 14 i macOS 15 na krzemie Apple.Czy GitHub Actions obsługują krzem Apple?Tak. Zarówno hostowane, jak i zarządzane systemy macOS hostowane w GitHub działają teraz na krzemie Apple.Ile dysku mają użytkownicy macOS?runnerhut macOS runners zapewniają od 250 GB do 1 TB pamięci NVMe w zależności od rozmiaru.Które środowiska wykonawcze symulatorów są dostępne na urządzeniach z systemem macOS?iOS 17.5 do 18.4 oraz środowiska wykonawcze watchOS, tvOS i VisionOS.Czy mogę używać Docker na urządzeniach z systemem macOS?Tylko za pośrednictwem maszyny wirtualnej z systemem Linux, która jest powolna. Zamiast tego uruchamiaj obciążenia Docker na platformach Linux.Czy mogę uruchamiać programy macOS w UE?Tak. runnerhut obsługuje system macOS w regionach UE w celu spełnienia wymagań dotyczących miejsca przechowywania danych.Czy mogę uruchamiać kompilacje na Androida i iOS w jednym procesie?Tak — użyj matrycy z modułem macOS dla systemu iOS i systemem Linux dla systemu Android.Jak przyspieszyć powtarzające się kompilacje Xcode?Utrzymuj DerivedData między uruchomieniami i przypnij wersję Xcode.Jak uruchomić testy iOS równolegle?Fragment według celu testowego lub klasy testowej w kilku symulatorach w jednym dużym module macOS.Jak poświadczyć aplikację macOS w CI?Użyj narzędzia notarytool z kluczem API App Store Connect przechowywanym jako tajemnica.

Okna11

Czy GitHub Actions mogą uruchamiać kompilacje systemu Windows?Tak. Moduły uruchamiające system Windows Server są dostępne zarówno w serwisie GitHub, jak i u dostawców zarządzanych.Czy mogę uruchamiać kompilacje systemu Windows Server 2022?Tak. runnerhut oferuje obrazy Windows Server 2022 i 2025.Które wersje systemu Windows są obsługiwane?Windows Server 2022 i Windows Server 2025.Czy program Visual Studio jest preinstalowany?Tak. Narzędzia do budowania na lata 2022 i 2025 są dostarczane z obciążeniami C++, .NET Desktop, ASP.NET i UWP.Jak zainstalować dodatkowe składniki pakietu Windows SDK?Użyj modyfikacji vs_installer.exe z opcją --add i identyfikatorem komponentu.Dlaczego programy uruchamiające system Windows uruchamiają się wolniej?System Windows uruchamia się wolniej, a Defender skanuje wszystko, co zapisuje kasa.Czy mogę uruchomić Docker na platformach Windows?Tak, dla kontenerów Windows. Kontenery systemu Linux wymagają zagnieżdżonej wirtualizacji.Czy moduły uruchamiające system Windows obsługują wirtualizację zagnieżdżoną?W runnerhut tak w przypadku obrazów i rozmiarów systemu Windows Server 2025, które udostępniają funkcję Hyper-V.Jaki jest najmniejszy rozmiar modułu uruchamiającego Windows?4 procesory wirtualne. Mniejsze rozmiary poświęcają zbyt dużo pracy na obciążenie systemu operacyjnego, aby były przydatne.Czy mogę uruchamiać testy równolegle w systemie Windows?Tak. dotnet test --parallel i MSBuild -m używają wielu rdzeni.Jak uruchomić skrypty PowerShell?Ustaw powłokę: pwsh w kroku dla PowerShell Core lub powłokę: powershell dla Windows PowerShell 5.1.

Docker17

Jak skrócić czas pobierania obrazu?Użyj pamięci podręcznej rejestru w tej samej sieci, co moduł uruchamiający.Jak zresetować pamięć podręczną programu budującego Docker?Uruchom docker buildx Prune w konstruktorze lub odtwórz instancję konstruktora.Czy zdalni kreatorzy obsługują kompilacje wieloplatformowe?Tak. runnerhut uruchamia oddzielne kreatory amd64 i arm64 i łączy wyniki.Jak wypchnąć listę manifestów?Zbuduj każdą architekturę za pomocą skrótu, a następnie połącz je z utworzonymi narzędziami docker buildx imagetools.Dlaczego mój Docker kompiluje się powoli?Pamięć podręczna warstwy zimnej, pamięć podręczna przesyłana przez sieć lub arm64 zbudowana w ramach emulacji.Dlaczego w kompilacji Docker zabrakło dysku?Programy uruchamiające hostowane na GitHubie mają około 14 GB wolnego miejsca, co powoduje szybkie wyczerpanie się dużych obrazów i ich pamięci podręcznej warstw.Dlaczego aktualizacja obrazu podstawowego unieważnia wszystko?Każda warstwa po FROM zależy od skrótu obrazu bazowego, więc nowa baza unieważnia je wszystkie.Jaka jest różnica między pamięcią podręczną z a pamięcią podręczną do?cache-from importuje istniejącą pamięć podręczną warstwy; cache-to eksportuje pamięć podręczną utworzoną przez tę kompilację.Czy potrzebuję buildx?W przypadku kompilacji wieloplatformowych, montowania pamięci podręcznej lub zdalnych konstruktorów – tak. W przypadku prostej konstrukcji z jednym łukiem nie.Co to jest zdalny kreator Docker?Trwała instancja BuildKit, do której przyłącza się Twoje zadanie, która przechowuje pamięć podręczną warstw na własnym dysku.Jak rozliczany jest zdalny konstruktor?Na sekundę aktywnego czasu kompilacji, niezależnie od minut działania.Czy dwa stanowiska pracy mogą dzielić jednego budowniczego?Tak. Nogi matrycy i oddzielne przepływy pracy można podłączyć do tego samego konstruktora i współdzielić jego pamięć podręczną.Jak budować i pchać w jednym kroku?Użyj docker/build-push-action z push: true.Jak korzystać z Docker Bake?Zdefiniuj cele w docker-bake.hcl i uruchom docker buildx bake w jednym kroku.Jak uwierzytelnić się w rejestrze prywatnym?Użyj akcji dokowanej/logowania z tokenem lub OIDC w przypadku rejestrów w chmurze.Czy mogę uruchomić Docker Compose?Tak. Aplikacja Compose v2 jest preinstalowana; użyj okna dokowanego compose up -d --wait, aby kroki nie przyspieszały uruchamiania.Czy mogę używać Podmana zamiast Docker?Tak. Podman jest dostępny i jest w dużej mierze kompatybilny z CLI z Docker.

Bezpieczeństwo19

Czy programy uruchamiające migawki są bezpieczne dla publicznych repozytoriów?Tylko jeśli migawki są pobierane z zaufanych gałęzi, a nigdy z żądań fork pull.Jak wygenerować SBOM?Włącz wyjście sbom: true buildx lub uruchom syft na zbudowanym obrazie.Jak dołączyć pochodzenie kompilacji?Użyj akcji/atest-pochodzenie kompilacji lub pochodzenie buildx: prawdziwe poświadczenie.Jak przekazać sekrety do kompilacji Docker?Używaj sekretów kompilacji BuildKit z --secret, nigdy ARG lub ENV.Czy programy uruchamiające GitHub Actions są bezpieczne?Hostowane w serwisie GitHub i renomowane zarządzane moduły uruchamiające to efemeryczne maszyny wirtualne jednorazowego użytku, co stanowi właściwy model izolacji.Czy biegacze przechowują mój kod źródłowy?Tylko na czas trwania pracy. runnerhut niszczy maszynę wirtualną i czyści jej dysk po zakończeniu zadania.Czy platforma biegacza może zobaczyć moje sekrety?Sekrety są odszyfrowywane w pamięci biegacza w celu ich wykorzystania, więc technicznie rzecz biorąc, każda platforma biegacza może to zrobić.Jak ustawić uprawnienia GITHUB_TOKEN?Dodaj blok uprawnień na poziomie przepływu pracy lub zadania i przyznaj tylko potrzebne zakresy.Jak uwierzytelnić się w AWS za pomocą OIDC?Skonfiguruj GitHub jako dostawcę OIDC w IAM i użyj aws-actions/configure-aws-credentials z rolą.Czy zarządzane programy uruchamiające zmieniają moje uprawnienia GitHub?Nie. Zadania są uruchamiane z tymi samymi GITHUB_TOKEN i tymi samymi uprawnieniami, co w przypadku modułów uruchamiających hostowanych na GitHubie.Czy mogę ograniczyć, które repozytoria korzystają z moich modułów runner?Tak, z grupami uruchamiającymi ograniczonymi do określonych organizacji lub repozytoriów.Czy runnerhut SOC 2 jest zgodny?runnerhut utrzymuje SOC 2 typu 2, a raport jest dostępny w ramach NDA.Gdzie są przechowywane moje dane kompilacji?W wybranym regionie. Obliczenia, pamięć podręczna, dzienniki i metryki są przypięte do tego samego regionu.Czy mogę przechowywać kompilacje tylko w UE?Tak. Wdrożenia wyłącznie w UE przypinają obliczenia, pamięć podręczną, dzienniki i metryki do regionów UE.Czy mogę ograniczyć ruch wychodzący?Tak. Zasady ruchu wychodzącego domyślnie odrzucają i zezwalają tylko na wymienione przez Ciebie miejsca docelowe.Jak sprawdzić zmiany w konfiguracji modułu uruchamiającego?Dziennik audytu rejestruje aktora, sygnaturę czasową, źródłowy adres IP oraz wartości przed/po każdej zmianie konfiguracji.Gdzie biegają fizycznie biegacze zarządzani?W centrach danych dostawcy lub na Twoim własnym koncie w chmurze w ramach BYOC.Co dzieje się z dyskami biegacza po pracy?W runnerhut są one kryptograficznie czyszczone, a maszyna wirtualna niszczona.Czy biegacze utrzymują stan pomiędzy zadaniami?Efemeryczni biegacze tego nie robią. Tak robią trwałe programy uruchamiające, które są hostowane na własnym serwerze, co stanowi zagrożenie bezpieczeństwa w publicznych repozytoriach.

Przynieś własną chmurę18

Czy biegacze mogą uzyskać dostęp do mojej sieci prywatnej?Tak, za pośrednictwem modułów BYOC w Twojej VPC lub sieci mesh, takiej jak Tailscale.Czy biegacze mogą biegać na moim własnym koncie w chmurze?Tak. BYOC wdraża moduły uruchamiające na Twoim koncie AWS, GCP lub Azure, podczas gdy płaszczyzna kontroli pozostaje zarządzana.Co runnerhut tworzy na moim koncie w chmurze?Grupa automatycznego skalowania, zasobnik pamięci podręcznej, pamięć podręczna z przeciąganiem rejestru, rola uprawnień o określonym zakresie i punkt końcowy VPC.Jakich uprawnień AWS potrzebuje BYOC?Uprawnienia do zarządzania własną grupą autoskalowania, zasobnikiem pamięci podręcznej i rolą instancji — nic szerszego.Czy mogę używać własnego VPC?Tak. Podajesz identyfikatory VPC i podsieci, a moduły runners są tam umieszczane.Czy biegacze BYOC mogą korzystać z usług wewnętrznych?Tak — to jest główny powód korzystania z BYOC. Znajdują się w Twojej sieci z normalnym routingiem.Czy użytkownicy BYOC potrzebują bramy NAT?Potrzebują wychodzącego Internetu do pobierania obrazów i pakietów, co zwykle oznacza bramę NAT.Czy moduły BYOC mogą działać w prywatnej podsieci?Tak i powinni. Dostęp wychodzący przechodzi przez punkty końcowe NAT lub VPC.Czy mogę przypisać rolę IAM do biegacza BYOC?Tak, za pośrednictwem profilu instancji — dzięki czemu zadania uzyskują dane uwierzytelniające bez przechowywania żadnych tajemnic.Czy BYOC współpracuje z IMDSv2?Tak, domyślnie wymuszany jest IMDSv2.Czy mogę uruchomić BYOC w wielu regionach?Tak. Wdróż moduł według regionu i oznacz elementy uruchamiające według regionu.Czy BYOC obsługuje niestandardowe obrazy?Tak. Dostarcz własny obraz AMI lub maszyny z wbudowanymi narzędziami.Czy BYOC obsługuje system Windows?Tak na AWS i Azure. Obsługa GCP Windows jest bardziej ograniczona.Czy BYOC obsługuje lokalne dyski SSD GCP?Tak, w rodzinach maszyn, które to oferują.Jak działa rozliczenie BYOC?Płacisz dostawcy chmury za obliczenia i sieć, a runnerhut obniżoną opłatę za platformę sterującą.Jak oznaczyć zasoby BYOC?Ustaw znaczniki alokacji kosztów w module Terraform; rozprzestrzeniają się na każdy stworzony zasób.Jak usunąć stos BYOC?Opróżnij prowadnice, a następnie terraformuj moduł i zniszcz go.Czy mogę kontrolować wyjścia na biegaczach BYOC?Tak, łącznie z grupami zabezpieczeń, NACL i polityką wyjścia runnerhut.

Przepływy pracy30

Do ilu zadań może dotrzeć wachlarz matrycy?GitHub ogranicza pojedynczą macierz do 256 zadań na przebieg przepływu pracy.Jak lokalnie odtworzyć awarię CI?Dopasuj obraz biegacza, a następnie SSH do aktywnego biegacza, jeśli awaria pojawia się tylko w CI.Czy mogę połączyć się przez SSH z biegaczem?Tak. runnerhut obsługuje otwieranie sesji debugowania działającego zadania za pomocą autoryzowanego klucza SSH.Czy mogę łączyć elementy uruchamiające hostowane i zarządzane w GitHub?Tak. liczba uruchomień przypada na zadanie, więc różne zadania w jednym przepływie pracy mogą korzystać z różnych dostawców.Jak zmienić biegacza?Edytuj wartość uruchomieniową zadania. Nic więcej nie musi się zmieniać.Jak uruchomić zadanie tylko w przypadku zmiany plików?Użyj ścieżek lub ignorowania ścieżek na spuście albo akcji polegającej na wykrywaniu zmian, aby uzyskać lepszą kontrolę.Jak ręcznie uruchomić przepływ pracy?Dodaj wyzwalacz przepływu pracy, opcjonalnie z wpisanymi danymi wejściowymi.Jak uruchamiać zadania zgodnie z harmonogramem?Użyj wyzwalacza harmonogramu ze składnią cron w formacie UTC.Jak anulować zastąpione przebiegi?Ustaw grupę współbieżności wpisaną w ref z anulowaniem w toku: true.Jak ograniczyć przepływ pracy do jednego uruchomienia na raz?Użyj stałej nazwy grupy współbieżności z anulowaniem w toku: false.Co się stanie, gdy dwa przepływy pracy współdzielą grupę współbieżności?Serializują — drugi czeka lub anuluje pierwszy, w zależności od trwającego anulowania.Jak ustawić limit czasu zadania?Dodaj minuty limitu czasu do zadania. Wartość domyślna to sześć godzin.Jak ponowić nieudany krok?Użyj akcji ponawiania lub zawiń polecenie w pętlę ponawiania prób powłoki.Jak ponownie wykorzystać przepływ pracy w różnych repozytoriach?Opublikuj przepływ pracy wielokrotnego użytku i wywołaj go za pomocą flow_call.Jak napisać akcję złożoną?Utwórz plik akcji.yml z plikami run.using: złożony i listą kroków.Jak korzystać z macierzy włączającej i wykluczającej?zawierać dodaje lub rozszerza kombinacje; wyklucz usuwa je z wygenerowanego produktu.Jak pominąć CI przy zatwierdzeniu?Dodaj [skip ci] do wiadomości zatwierdzenia.Jak napisać streszczenie pracy?Dołącz Markdown do $GITHUB_STEP_SUMMARY.Jak uruchomić bazę danych w CI?Zadeklaruj go jako kontener usług z kontrolą stanu.Jak opublikować pakiet?Użyj zaufanego publikowania OIDC, jeśli rejestr to obsługuje, w przeciwnym razie token o określonym zakresie w tajemnicy środowiska.Jak udostępniać dane pomiędzy ofertami pracy?Prześlij artefakt w jednym zadaniu i pobierz go w następnym lub użyj wyników zadania dla małych wartości.Jak zatrzymać powolne wdrażanie blokowania przepływu pracy?Oddziel wymagane kontrole od doradczych i zaznacz tylko te szybkie, niezawodne zadania, które są wymagane.Jak przeprowadzić testy przeglądarki bez użycia głowy?Użyj flagi bezgłowej dla swojego biegacza lub xvfb-run dla narzędzi wymagających wyświetlacza.Jak przeprowadzić testy wykrywacza wyścigów Go?Uruchom i przetestuj -wyścig. Spodziewaj się około 2–10 razy wolniejszego wykonywania i większego zużycia pamięci.Jaka jest różnica między pracą a krokiem?Zadanie działa w jednym module biegacza i zawiera kroki; kroki są uruchamiane sekwencyjnie w tym samym obszarze roboczym.Jaka jest różnica między modułami uruchamiającymi hostowanymi na GitHubie i hostowanymi samodzielnie?Hostowane w GitHub są zarządzane, efemeryczne i rozliczane za minutę. Hostowane na własnym serwerze możesz obsługiwać na swoim sprzęcie.Jakie systemy operacyjne obsługują GitHub Actions?Linux, Windows i macOS, na x64 i arm64, w zależności od dostawcy.Jak długo przechowywane są artefakty?Domyślnie 90 dni, konfigurowalne dla każdego repozytorium lub w przypadku przesłania do jednego dnia.Jak debugować nieudane zadanie?Włącz rejestrowanie debugowania kroków, dodaj podsumowanie zadania lub otwórz sesję SSH w module runner.Jak uruchomić zadanie tylko na żądanie ściągnięcia?Użyj wyzwalacza pull_request i warunku if, aby uzyskać lepszą kontrolę, na przykład pomijanie wersji roboczych.

Obserwowalność19

Jak sprawdzić koszt przepływu pracy?Panel runnerhut dzieli wydatki według przepływu pracy, zadania, etykiety i repozytorium.Jak sprawdzić koszt etykiety biegacza?Filtruj panel użytkowania według etykiety, aby zobaczyć minuty i wydatki według typu biegacza.Jak rozpoznać niewymiarowego biegacza?Utrzymujące się obciążenie procesora bliskie 100%, obciążenie pamięci lub aktywność wymiany w trakcie zadania.Jak znaleźć najwolniejszy krok w przepływie pracy?Sortuj kroki według czasu trwania w widoku biegu lub użyj osi czasu runnerhut, która pokazuje osobno czas kolejki, konfiguracji i czasu kroku.Jak sprawdzić, który przepływ pracy stał się wolniejszy?Porównaj czas trwania p95 na przepływ pracy z miesiąca na miesiąc w panelu analitycznym.Jak zmierzyć współczynnik trafień w pamięci podręcznej?Panel runnerhut raportuje współczynnik trafień, czas przywracania i rozmiar każdego klucza pamięci podręcznej.Jak wyeksportować dane o ofertach pracy?Skorzystaj z interfejsu API runnerhut lub GitHub Actions REST API i zapisz wyniki w formacie CSV.Czy agent AI może wysyłać zapytania dotyczące moich wskaźników CI?Tak, za pośrednictwem serwera runnerhut MCP, który udostępnia kompilacje, czasy trwania, awarie i koszty jako narzędzia.Czy agenci AI mogą wyzwalać zadania CI?Tak, poprzez API lub poprzez wypychanie gałęzi, jak każdy inny aktor.Jakie wskaźniki udostępnia interfejs API?Czas oczekiwania, percentyle czasu trwania, współczynnik trafień w pamięci podręcznej, wykorzystanie procesora i pamięci oraz koszt zadania, etykiety i przepływu pracy.Jak sprawdzić użycie procesora i pamięci dla zadania?runnerhut automatycznie rejestruje wykorzystanie zadania i wyświetla je na stronie uruchamiania.Czy mogę ostrzegać o zadaniach, w których brakuje pamięci?Tak. Alert w przypadku zabicia OOM lub przekroczenia progu wykorzystania pamięci.Jak przygotować cotygodniowy raport o kondycji CI?Zaplanuj przepływ pracy, który odpytuje interfejs API metryk i publikuje czas trwania p95, współczynnik trafień w pamięci podręcznej, współczynnik płatków i wydatki.Dlaczego moja praca została zabita z kodem wyjścia 137?To jest zabójstwo OOM — proces przekroczył dostępną pamięć.Dlaczego w moim zadaniu zabrakło dysku?Biegacze hostowani na GitHubie mają około 14 GB wolnego; Warstwy Docker i moduły węzłów szybko się wyczerpują.Czy biegacze mają duże dyski?Biegacze hostowani na GitHubie mają około 14 GB wolnego miejsca. runnerhut zapewniają od 150 GB do 2 TB lokalnej pamięci NVMe.Czy grupy biegaczy ograniczają współbieżność?Mogą. Grupa może mieć własny limit współbieżności, niezależny od limitu konta.Jakie limity szybkości interfejsu API GitHub wpływają na CI?GITHUB_TOKEN jest ograniczony na repozytorium na godzinę; przepływy pracy wykonujące wiele wywołań API mogą go wyczerpać.Dlaczego moje zadania przekraczają limit czasu sieci?Zwykle jest to ograniczenie szybkości rejestru, wąskie gardło bramy NAT lub polityka ruchu wychodzącego dyskretnie ograniczająca ruch.