Siirry sisältöön

runnerhut

Vastaukset

Suorat vastaukset insinöörien CI-kysymyksiin.

Laskutus ja hinta21

Laskutetaanko minua, kun GitHub Actions -työ epäonnistuu?Kyllä. Sinua laskutetaan epäonnistumiseen asti kulutetuista minuuteista, ei onnistuneesta tuloksesta.Ovatko GitHub Actions ilmaiset avoimelle lähdekoodille?Kyllä, GitHubin isännöimillä yleisillä arkistoilla ilman minuuttiveloitusta.Ovatko GitHub Actions ilmaisia yksityisille tietovarastoille?Ei. Yksityiset tietovarastot saavat kuukausittaisen suunnitelman mukaisen minuuttikorvauksen, jonka jälkeen laskutetaan minuutilta.Maksanko istumamaksun ohjatuista juoksijoista?runnerhutissa (runnerhut), ei. Laskutus on laskentaminuuttia ilman kehittäjäkohtaista maksua.Maksanko jonoajasta?Ei. Laskutus alkaa, kun ensimmäinen vaihe suoritetaan, ei kun työ on jonossa.Maksanko sekä juoksijasta että Docker-etärakentajasta?Kyllä, mutta rakentajaa laskutetaan vain niistä sekunneista, joita se rakentaa aktiivisesti.Miten peruutettu työ laskutetaan?Maksat ennen peruutusta kuluneista minuuteista pyöristettynä laskutuserään.Onko laskutuksen vähimmäiskorotusta?runnerhut laskut sekunnissa yhden minuutin minimityötä kohti.Kuinka paljon hallinnoidut GitHub Actions -ajoajat maksavat?runnerhut Linux x64 -apuohjelmat alkavat 0,004 dollarista minuutissa, mikä on suunnilleen puolet GitHubin listahinnasta vastaavan kokoisena.Mikä on halvin juoksijan koko?Pienin koko, joka pitää työsi kriittisellä tiellä – yleensä 2 tai 4 vCPU:ta nukka- ja yksikkötestejä varten.Onko arm64 halvempi kuin x64?Kyllä. runnerhut arm64 juoksijat ovat noin 20 % alle vastaavan x64-koon.Onko halvempaa juosta vähemmän, suurempia juoksijoita?Vain jos työmääräsi todella rinnastuu. Muuten maksat enemmän minuutilta käyttämättömänä olevista ytimistä.Voinko asettaa kulutusrajan?Kyllä. runnerhut tukee kovia budjettikattoja organisaatio- ja arkistokohtaisesti.Mitä tapahtuu, kun ilmaiset lainat loppuvat?Töiden ajoittaminen lakkaa, kunnes lisäät maksutavan tai nostat ylärajaa.Miten arvioin GitHub Actions -laskuni?Kerro kuukausittaiset minuutit käyttöjärjestelmäkohtaisesti kyseisen käyttöjärjestelmän minuuttihinnalla ja lisää sitten tallennustilaa artefakteille ja välimuistille.Kuinka ennustan juoksijan kulutusta?Ota 90 päivän minuutit per työnkulku, käytä yhdistämisnopeuden kasvua ja lisää liikkumavaraa matriisin muutoksille.Miksi GitHub Actions -laskuni on niin korkea?Yleensä yksi neljästä asiasta: macOS-minuutit, matriisin räjähdys, ei samanaikaista peruutusta tai ylimitoitettu juoksija.Maksavatko julkiset tietovarastot ohjatuista juoksijoista?GitHub-isännöimillä vakiojuoksilla ei. Hallituilla palveluntarjoajilla, mukaan lukien runnerhut, kyllä ​​– mutta avoimen lähdekoodin ohjelmia on saatavilla.Mitä Actions-välimuistin tallennus maksaa?GitHub sisältää 10 Gt per arkiston maksutta ja häätöjä sen lisäksi. runnerhut -välimuisti on rajoittamaton ja sisältyy.Miten tilannekuvan tallennustila laskutetaan?Säilytetyn tilannekuvan gigatavukuukaudessa, erillään laskentaminuuteista.Voinko suorittaa useampia samanaikaisia töitä kuin GitHub-suunnitelmani sallii?Kyllä. Hallitun juoksijan samanaikaisuuden määrittää juoksijasi palveluntarjoajasi, ei GitHub-suunnitelmasi isännöityjen juoksijoiden rajoitukset.

Suorituskyky10

Miksi GitHub Actions ovat hitaita?Yleisimmin: jaettu vCPU, kylmävälimuistit, verkkoon liitetty levy ja jonoaika ennen työn alkamista.Kuinka nopeasti juoksijat aloittavat työjonon jälkeen?runnerhut juoksijat lähtevät noin kolmessa sekunnissa lämpimästä uima-altaasta.Pitääkö minun muuttaa työnkulkuani?Ei. Muuta ajotunnistetta ja jätä kaikki muu ennalleen.Kuinka valitsen juoksukoon?Aloita yhtä kokoa nykyisen juoksijasi yläpuolella, tarkista sitten suorittimen käyttöaste ja lopeta, kun käyrä tasoittuu.Miksi työni ovat jonossa toistensa takana?Olet saavuttanut samanaikaisuusrajan – joko suunnitelmasi, juoksijaryhmäsi tai samanaikaisuusryhmän työnkulussa.Miksi Python-testini toimivat hitaammin CI:ssä kuin paikallisesti?pytest on oletusarvoisesti sarja, ja kannettavassa tietokoneessasi on nopeampi yhden ytimen suorituskyky ja lämmin tiedostojärjestelmän välimuisti.Miksi npm-asennus on hidasta CI:ssä?node_modules kirjoittaa kymmeniä tuhansia pieniä tiedostoja, ja verkkoon liitetty CI-levy käsittelee sitä huonosti.Miksi Gradle-daemon aloittaa jokaisen ajon?Jokainen CI-työ on uusi kone, joten uudelleenkäytettävää demonia ei ole – ja ilman asetusvälimuistia Gradle arvioi koko koontiversion uudelleen.Miksi työssäni on korkea I/O-odotus?Työkuorma on levysidottu – yleensä riippuvuusasennus, säilökerroksen purkaminen tai tietokanta palvelusäiliössä.Kuinka monta työtä voi suorittaa kerralla?Se riippuu GitHub-isännöimien juoksijoiden suunnitelmasta ja määritetystä samanaikaisuudesta hallituille juoksijoille.

Välimuisti38

Miksi Cargo rakentaa kaiken uudelleen?Välimuistiavaimesi muuttuu joka ajon aikana, tai kohdetta ei ole välimuistissa ollenkaan.Miksi välimuistin palautus on hidasta?GitHub rajoittaa välimuistin kaistanleveyttä, joten usean gigatavun välimuistin palauttaminen voi kestää minuutteja.Kuinka kirjoitan hyvän välimuistiavaimen?Hash täsmälleen tiedostot, jotka määrittävät välimuistissa olevan sisällön – yleensä lukitustiedoston – eikä mitään muuta.Mitä palautusavaimet ovat?Tilattuja etuliitteitä yritettiin, kun tarkka välimuistiavain puuttuu, joten osittainen vastaavuus voidaan silti palauttaa.Miksi välimuisti jättää väliin jokaisen ajon?Avain sisältää jotain, joka muuttuu joka ajon aikana – yleensä github.sha tai aikaleima.Kuinka kauan välimuistit kestävät?GitHub häätää käyttämättömät välimuistit 7 päivän ajan tai aikaisemmin, jos arkiston koko ylittää 10 Gt.Kuinka tyhjennän välimuistin?Poista se arkiston Toiminnot-välimuistisivulta tai REST API:n tai gh CLI:n kautta.Kulkevatko kätköt haarojen yli?Haara voi lukea välimuistia itsestään ja perushaarastaan, mutta ei toisiinsa liittyvistä haaroista.Voinko jakaa välimuistin työnkulkujen välillä?GitHub-isännöidyillä juoksijoilla vain samassa arkiston ja haaran laajuudessa. runnerhut -välimuistit jaetaan organisaation työnkulkujen kesken.Mikä on GitHub Actions -välimuistin kokorajoitus?10 Gt per arkisto, jonka jälkeen vähiten käytetyt merkinnät häädetään.Miten node_modules välimuistiin tallennetaan?Tallenna välimuisti ~/.npm tiedostoon package-lock.json tai palauta node_modules suoraan, jos asennuksesi on deterministinen.Kuinka voin tallentaa pip-riippuvuudet välimuistiin?Tallenna ~/.cache/pip välimuistiin, joka on näppäilty vaatimukseen.txt-tiedostoon tai tallenna koko virtualenv välimuistiin saadaksesi suurempi voitto.Kuinka voin tallentaa Go-moduulit välimuistiin?Välimuisti ~/go/pkg/mod ja ~/.cache/go-build on avattu osoitteessa go.sum.Kuinka tallennan välimuistiin rahtiriippuvuudet?Välimuisti ~/.cargo/registry, ~/.cargo/git ja target/ Cargo.lockissa.Kuinka tallennan Maven-riippuvuudet välimuistiin?Välimuisti ~/.m2/repository availlaan jokaisen pom.xml:n hashissa.Miten Gradle-koontiversiot tallennetaan välimuistiin?Tallenna ~/.gradle/caches ja ~/.gradle/wrapper välimuistiin ja ota koonti- ja määritysvälimuistit käyttöön.Kuinka tallennan Bundler-helmet välimuistiin?Välimuistin toimittaja/paketti on avattu Gemfile.lockiin, joten alkuperäiset laajennukset käännetään kerran.Kuinka tallennan säveltäjäriippuvuudet välimuistiin?Välimuisti ~/.composer/cache näppäilty kohtaan composer.lock.Miten CocoaPods tallennetaan välimuistiin?Cache Pods/ ja ~/Library/Caches/CocoaPods avattu Podfile.lockiin.Kuinka tallennan Swift Package Managerin riippuvuudet välimuistiin?Cache .build ja ~/Library/Caches/org.swift.swiftpm näppäilty Package.resolved.Kuinka tallennan Yarn Berryn välimuistiin?Välimuisti .yarn/cache ja .yarn/install-state.gz on näppäilty yarn.lockiin.Kuinka tallennan välimuistiin uv- tai Poetry-ympäristöt?Välimuisti ~/.cache/uv tai ~/.cache/pypoetry lukitustiedostoon sekä .venv-hakemisto.Miten Playwright-selaimet tallennetaan välimuistiin?Välimuisti ~/.cache/ms-playwright näppäilty Playwright-versioon lukitustiedostostasi.Kuinka tallennan Docker-tasot välimuistiin?Käytä etärakennustyökalua, joka säilyttää välimuistin paikallisesti, tai vie rekisteriin välimuistiin ja välimuistiin.Toimiiko välimuisti konttityön sisällä?Kyllä, mutta säilön sisällä olevat polut eroavat isäntäkoneen poluista, joten välimuistiavainten on viitattava säilön polkuihin.Toimivatko välimuistit eri arkkitehtuurien välillä?Ei. X64:lle käännetyt artefaktit eivät kelpaa arm64:ssä, joten arkkitehtuurin on oltava osa avainta.Toimivatko välimuistit Windows-ajoissa?Kyllä, mutta polun erottimet ja kirjainherkkyys vaihtelevat, joten avaimet ja polut tarvitsevat Windows-kohtaista käsittelyä.Kuinka säilytän Docker-tasovälimuistin vetopyyntöjen välillä?Käytä pysyvää etärakennustyökalua – sen välimuistia ei ole kohdistettu haaraan.Voinko tallentaa rakennetun kuvan välimuistiin uudelleenrakentamisen sijaan?Kyllä – työnnä se sisällön hajautusmerkinnällä merkittyyn rekisteriin ja vedä se, kun syötteet eivät muutu.Voinko pitää tietokannan lämpimänä töiden välillä?Ei huoltokonteilla, jotka tuhoutuvat työn mukana. Lataa sen sijaan esisiirretty mallivedos.Voinko säilyttää Xcode DerivedData ajon välillä?Kyllä. Pysyvät ~/Library/Developer/Xcode/DerivedData – se on iOS CI:n suurin yksittäinen voitto.Korvaavatko tilannekuvan juoksijat toiminnot/välimuistin?He voivat. Tilannekuva palauttaa koko koneen tilan, joten asennusvaihe häviää sen sijaan, että se nopeutuisi.Mitä tilannekuvassa säilyy?Koko tiedostojärjestelmä tilannekuvan hetkellä – asennetut paketit, rakennetut laajennukset, työkaluketjuhakemistot ja lämpimän sivun välimuisti.Kuinka voin mitätöidä tilannekuvan?Näppäile se lukitustiedostoosi, jotta riippuvuuden muutos käynnistää automaattisesti uudelleenmuodostuksen.Kuinka kauan tilannekuvat kestävät?14 päivää oletuksena runnerhutissa (runnerhut), jonka jälkeen se rakennetaan uudelleen seuraavan käytön yhteydessä.Voinko ottaa tilannekuvan ominaisuuden haarasta?Kyllä, ja haarakuvat on eristetty toisistaan.Mitä snapshot-juoksijat ovat?Runnerit, jotka käynnistyvät tiedostojärjestelmävedosta, joka on kaapattu riippuvuutesi asennuksen jälkeen, joten asennus ohitetaan kokonaan.Toimivatko tilannekuvat macOS-ajoissa?Kyllä, ja ne ovat erityisen arvokkaita siellä, koska CocoaPods ja DerivedData ovat molemmat hitaita uudelleenrakentamisessa.

käsivarsi6412

Voiko GitHub Actions suorittaa arm64:n?Kyllä. GitHub tarjoaa arm64-käyttäjiä maksullisilla suunnitelmilla, ja hallinnoidut palveluntarjoajat, mukaan lukien runnerhut, tarjoavat niitä kaikissa suunnitelmissa.Voinko rakentaa arm64-kuvia x64-juoksulle?Kyllä, QEMU:lla – mutta se on 5–40 kertaa hitaampaa kuin alkuperäisen rakentaminen.Mikä muuttuu siirryttäessä x64:stä arm64:ään?Natiivimoduulit, Python-pyörät ja kaikki x86-kokoonpanot tarvitsevat aarch64-tuen. Useimmilla valtavirran riippuvuuksilla on nyt se.Voinko suorittaa arm64- ja x64-töitä samassa työnkulussa?Kyllä. Käytä matriisia, jossa on erilainen juoksunimiö arkkitehtuurikohtaisesti.Tukevatko arm64 juoksijat buildx:ää?Kyllä, ja alkuperäisellä arm64-laitteistolla buildx tuottaa arm64-kuvat ilman emulointia.Voinko käyttää 32-bittisiä ARM-rakennuksia arm64-ajoilla?Kyllä, ristiin kääntämisen kautta armhf-työkaluketjun kanssa tai multilib-tuella, jos mahdollista.Kuinka suoritan arm64-integraatiotestejä?Suorita koko työ alkuperäisellä arm64-runnerilla, mukaan lukien kaikki palvelusäiliöt, joissa on oltava arm64-kuvat.Mitä arm64 juoksukokoja on saatavilla?runnerhut tarjoaa 2–64 vCPU arm64 -runkoa Ubuntu 22.04 ja 24.04.Käyttävätkö arm64 juoksijat eri työhakemistoa?Ei. Polut vastaavat x64-kuvia, joten työnkulkuja ei muuteta.Kuinka voin rakentaa Rust-binaarin useille kohteille?Käytä matriisia, jossa on yksi alkuperäinen juoksija kohdetta kohden, sen sijaan, että käännät kaiken ristiin yhdellä koneella.Voiko GitHub Actions rakentaa monikaarikuvia?Kyllä – joko QEMU:lla yhdellä juoksijalla tai alkuperäisesti arkkitehtuurikohtaisilla juoksijoilla ja yhdistetty luetteloon.Onko QEMU vai natiivi arm64 nopeampi?Alkuperäinen, kertoimella 5–40 riippuen siitä, kuinka paljon koontiversio käännetään.

macOS ja iOS15

Tukevatko GitHub Actions -rajat macOS:ää?Kyllä, sekä GitHubin isännöimät että hallinnoidut palveluntarjoajat tarjoavat macOS-ajoajia Applen piillä.Voinko rakentaa iOS-sovelluksia ilman Mac Runneria?Ei. Xcode toimii vain macOS:ssä, joten iOS-koontiversio vaatii macOS-ajon.Onko Xcode esiasennettu macOS-ajokoneisiin?Kyllä. runnerhut -kuvat toimittavat useita Xcode-versioita vastaavien komentorivityökalujen kanssa.Kuinka valitsen Xcode-version?Suorita sudo xcode-select -s /Applications/Xcode_16.4.app ennen rakennusvaiheita.Mitä Xcode-versioita on saatavilla?runnerhut macOS 15 -kuvat sisältävät Xcode 16.0, 16.2 ja 16.4; macOS 14 -kuvissa on versiot 15.2 ja 15.4.Mitä macOS-versioita tuetaan?runnerhut tarjoaa macOS 14- ja macOS 15 -kuvia Applen piillä.Tukeeko GitHub Actions Applen piitä?Kyllä. Sekä GitHubin isännöimät että hallinnoidut macOS-ajot toimivat nyt Applen piillä.Kuinka paljon levyä macOS-käyttäjillä on?runnerhut macOS-ajot tarjoavat 250 Gt - 1 Tt NVMe:tä koosta riippuen.Mitkä simulaattorin suoritusajat toimitetaan macOS-ajokoneille?iOS 17.5–18.4 sekä watchOS-, tvOS- ja visionOS-ajoajat.Voinko käyttää Dockeria macOS-ajoissa?Vain Linux VM:n kautta, joka on hidas. Suorita Docker-työkuormat sen sijaan Linux-ajoissa.Voinko käyttää macOS-juoksijoita EU:ssa?Kyllä. runnerhut käyttää macOS-kapasiteettia EU:n alueilla datan asuinpaikkavaatimuksia varten.Voinko käyttää Android- ja iOS-versioita yhdessä työnkulussa?Kyllä – käytä matriisia, jossa on macOS-apuohjelma iOS:lle ja Linux-runner Androidille.Kuinka nopeuttaa toistuvia Xcode-koontiversioita?Säilytä DerivedData ajon välillä ja kiinnitä Xcode-versio.Kuinka suoritan iOS-testejä rinnakkain?Sirpale testikohteen tai testiluokan mukaan useiden simulaattoreiden kesken yhdellä suurella macOS-rungolla.Kuinka vahvistan macOS-sovelluksen notaariksi CI:ssä?Käytä notarytoola salaisuutena tallennetun App Store Connect API -avaimen kanssa.

Docker17

Miten voin lyhentää kuvan vetoaikaa?Käytä rekisterin läpivientivälimuistia samassa verkossa kuin runner.Kuinka nollaan Docker builder -välimuistin?Suorita docker buildx prune builderissä tai luo builder-instanssi uudelleen.Tukevatko etärakentajat usean alustan koontiversioita?Kyllä. runnerhut käyttää erillisiä amd64- ja arm64-rakennusohjelmia ja yhdistää tulokset.Kuinka voin työntää luetteloluetteloa?Rakenna jokainen arkkitehtuuri tiivistelmän avulla ja yhdistä ne sitten Docker buildx -kuvatyökalujen luomiseen.Miksi Docker-koontini on hidas?Kylmän kerroksen välimuisti, verkon yli siirretty välimuisti tai emuloinnin alainen arm64.Miksi Docker buildin levy loppuu?GitHub-isännöidyillä juoksijoilla on noin 14 Gt ilmaista tallennustilaa, jonka suuret kuvat ja niiden kerrosvälimuisti tyhjentävät nopeasti.Miksi peruskuvapäivitys mitätöi kaiken?Jokainen FROM:n jälkeinen kerros riippuu peruskuvakoosteesta, joten uusi kanta mitätöi ne kaikki.Mitä eroa on välimuistista lähtevän ja välimuistiin siirtämisen välillä?cache-from tuo olemassa olevan kerroksen välimuistin; cache-to vie tämän koontiversion tuottaman välimuistin.Tarvitsenko buildx:n?Monen alustan koontiversioille, välimuistiin liitetyille tai etärakentajille, kyllä. Yksinkertaiselle yksikaarirakenteelle ei.Mikä on Docker-etärakentaja?Pysyvä BuildKit-esiintymä, johon työsi liittyy ja joka pitää kerrosvälimuistin omalla levyllään.Miten etärakentaja laskutetaan?Aktiivisen rakennusajan sekuntia kohden, erillään juoksijan minuutteista.Voiko kaksi työpaikkaa jakaa yhden rakentajan?Kyllä. Matrix-jalat ja erilliset työnkulut voidaan liittää samaan rakentajaan ja jakaa sen välimuistin.Kuinka rakentaa ja työntää yhdessä vaiheessa?Käytä telakointia/build-push-action-toimintoa push: true.Kuinka käytän Docker Bakea?Määritä kohteet docker-bake.hcl:ssä ja suorita docker buildx bake vaiheittain.Kuinka tunnistaudun yksityiseen rekisteriin?Käytä telakointi-/kirjautumistoimintoa tunnuksella tai OIDC:tä pilvirekistereille.Voinko suorittaa Docker Compose -sovelluksen?Kyllä. Compose v2 on esiasennettu; käytä docker compose up -d --odota, jotta vaiheet eivät rasita käynnistystä.Voinko käyttää Podmania Docker:n sijaan?Kyllä. Podman on saatavana ja se on suurelta osin CLI-yhteensopiva Docker:n kanssa.

Turvallisuus19

Ovatko tilannekuvan juoksijat turvallisia julkisille tietovarastoille?Vain jos tilannekuvat on otettu luotetuista haaroista eikä koskaan haarukan vetopyynnöistä.Kuinka luon SBOM:n?Ota buildx:n sbom: true output käyttöön tai suorita syft rakennettua kuvaa vastaan.Kuinka liitän rakennuksen alkuperän?Käytä toimintoja/attest-build-provenance tai buildx:n alkuperää: todellinen todistus.Kuinka siirrän salaisuudet Docker-koontirakenteeseen?Käytä BuildKit-koontisalaisuuksia yhdessä --secret kanssa, älä koskaan ARG:tä tai ENV:tä.Ovatko GitHub Actions -rajat turvallisia?GitHubin isännöimät ja hyvämaineiset hallitut juoksijat ovat lyhytaikaisia kertakäyttöisiä virtuaalikoneita, mikä on oikea eristysmalli.Tallentavatko juoksijat lähdekoodini?Vain työn ajaksi. runnerhut tuhoaa VM:n ja pyyhkii sen levyn työn päättyessä.Voiko juoksijaalusta nähdä salaisuuteni?Salaisuudet puretaan juoksijan muistissa käytettäväksi, joten mikä tahansa juoksijaalusta voisi teknisesti.Kuinka asetan GITHUB_TOKEN-oikeudet?Lisää käyttöoikeuslohko työnkulun tai työn tasolla ja myönnä vain tarvittavat laajuudet.Kuinka todennetaan AWS:ään OIDC:n avulla?Määritä GitHub OIDC-palveluntarjoajaksi IAM:ssa ja käytä aws-actions/configure-aws-credentials roolia.Muuttavatko hallitut juoksijat GitHub-käyttöoikeuksiani?Ei. Työt suoritetaan samoilla GITHUB_TOKEN-oikeuksilla ja samoilla käyttöoikeuksilla kuin GitHub-isännöidyillä juoksijoilla.Voinko rajoittaa, mitkä tietovarastot käyttävät juoksijoitani?Kyllä, juoksijaryhmillä, jotka on kohdistettu tiettyihin organisaatioihin tai tietovarastoihin.Onko runnerhut SOC 2 -yhteensopiva?runnerhut ylläpitää SOC 2 Type 2 -standardia, ja raportti on saatavilla NDA:n alla.Mihin koontitietoni on tallennettu?Valitsemallasi alueella. Laskenta, välimuisti, lokit ja mittarit on kaikki kiinnitetty samalle alueelle.Voinko pitää rakennuksia vain EU:ssa?Kyllä. Vain EU:n käyttöönotot kiinnittävät laskennan, välimuistin, lokit ja mittarit EU-alueille.Voinko rajoittaa lähtevää liikennettä?Kyllä. Lähtökäytännöt oletuksena estävät ja sallivat vain listaamasi kohteet.Kuinka tarkastan juoksijan kokoonpanomuutokset?Tarkastusloki tallentaa toimijan, aikaleiman, lähteen IP-osoitteen ja ennen/jälkeen -arvot jokaisesta konfiguraatiomuutoksesta.Missä ohjatut juoksijat juoksevat fyysisesti?Palveluntarjoajan palvelinkeskuksissa tai omalla pilvitililläsi BYOC:n alla.Mitä juoksulevyille tapahtuu työn jälkeen?runnerhutissa (runnerhut) ne pyyhitään kryptografisesti ja virtuaalikone tuhotaan.Ovatko juoksijat kunnossa töiden välillä?Efemeriset juoksijat eivät. Pysyvät itseisännöidyt juoksijat tekevät niin, mikä on turvallisuusriski julkisissa arkistoissa.

Tuo oma pilvesi18

Voivatko juoksijat käyttää yksityistä verkkoani?Kyllä, VPC:n BYOC-juoksilla tai mesh-verkolla, kuten Tailscale.Voivatko juoksijat juosta omalla pilvitililläni?Kyllä. BYOC ottaa juoksijat käyttöön AWS-, GCP- tai Azure-tilillesi, kun ohjaustaso pysyy hallinnassa.Mitä runnerhut luo pilvitililleni?Automaattinen skaalausryhmä, välimuistisäilö, rekisterin läpivientivälimuisti, rajattu IAM-rooli ja VPC-päätepiste.Mitä AWS-oikeuksia BYOC tarvitsee?Oikeudet hallita omaa automaattisen skaalauksen ryhmää, sen välimuistisäilöä ja esiintymän roolia - ei mitään laajempaa.Voinko käyttää omaa VPC:täni?Kyllä. Sinä toimitat VPC- ja aliverkon tunnukset ja juoksijat sijoitetaan sinne.Voivatko BYOC-juoksijat saavuttaa sisäiset palvelut?Kyllä – se on tärkein syy käyttää BYOC:ta. Ne sijaitsevat verkossasi normaalilla reitityksellä.Tarvitsevatko BYOC-juoksijat NAT-yhdyskäytävän?He tarvitsevat lähtevän Internetin kuvien ja pakettien vetämiseen, mikä yleensä tarkoittaa NAT-yhdyskäytävää.Voivatko BYOC-juoksijat juosta yksityisessä aliverkossa?Kyllä, ja pitäisikin. Lähtevä pääsy kulkee NAT- tai VPC-päätepisteiden kautta.Voinko liittää IAM-roolin BYOC-juoksijaan?Kyllä, instanssiprofiilin kautta – joten työt saavat kirjautumistiedot ilman tallennettuja salaisuuksia.Toimiiko BYOC IMDSv2:n kanssa?Kyllä, ja IMDSv2 on pakotettu oletuksena.Voinko käyttää BYOC:ta useilla alueilla?Kyllä. Ota moduuli käyttöön alueittain ja etikettien juoksijat alueittain.Tukeeko BYOC mukautettuja kuvia?Kyllä. Toimita oma AMI- tai konekuvasi työkaluillasi paistettuna.Tukeeko BYOC Windowsia?Kyllä AWS:ssä ja Azuressa. GCP Windows -tuki on rajoitetumpi.Tukeeko BYOC GCP paikallista SSD:tä?Kyllä, koneperheissä, jotka tarjoavat sitä.Miten BYOC-laskutus toimii?Maksat pilvipalveluntarjoajalle laskemisesta ja verkosta sekä runnerhutille (runnerhut) alennetun ohjaustason maksun.Kuinka merkitsen BYOC-resurssit?Aseta kustannusten kohdistustunnisteet Terraform-moduulissa; ne leviävät jokaiseen luotuun resurssiin.Kuinka poistan BYOC-pinon?Tyhjennä juoksut ja tuhoa sitten moduuli terraformilla.Voinko hallita poistumista BYOC-juoksissa?Kyllä, suojausryhmien, NACL:ien ja runnerhut -poistumiskäytännön kanssa yhdessä.

Työnkulut30

Kuinka monessa työpaikassa matrix voi ihailla?GitHub rajoittaa yhden matriisin 256 työhön työnkulkua kohden.Kuinka toistan CI-vian paikallisesti?Yhdistä juoksijan kuva ja sitten SSH live runneriksi, jos vika ilmenee vain CI:ssä.Voinko SSH:ta juoksijaksi?Kyllä. runnerhut tukee virheenkorjausistunnon avaamista käynnissä olevalle työlle valtuutetulla SSH-avaimella.Voinko sekoittaa GitHub-isännöimiä ja hallinnoituja juoksijoita?Kyllä. jatko-osuudet ovat työkohtaisia, joten saman työnkulun eri työt voivat käyttää eri palveluntarjoajia.Miten vaihdan juoksijan?Muokkaa työn suoritusarvoa. Mitään muuta ei tarvitse muuttaa.Kuinka voin suorittaa työn vain tiedostojen muuttuessa?Käytä polkuja tai polkuja huomioimatta liipaisinta tai muutoksen havaitsemistoimintoa tarkemman ohjauksen saamiseksi.Kuinka suoritan työnkulun manuaalisesti?Lisää workflow_dispatch-laukaisin, valinnaisesti kirjoitetuilla syötteillä.Kuinka hoidan työt aikataulun mukaan?Käytä aikataulun liipaisinta cron-syntaksin kanssa UTC-tilassa.Kuinka peruutan korvatut ajot?Aseta samanaikaisuusryhmä, joka on näppäilty viitteellä ja peruutus käynnissä: tosi.Kuinka voin rajoittaa työnkulun yhteen ajoon kerrallaan?Käytä kiinteää samanaikaisuusryhmän nimeä peruutuksen kanssa: false.Mitä tapahtuu, kun kaksi työnkulkua jakavat samanaikaisuusryhmän?Ne sarjoitetaan – toinen odottaa tai peruuttaa ensimmäisen kesken peruutuksen mukaan.Kuinka asetan työn aikakatkaisun?Lisää aikakatkaisuminuutit työhön. Oletusarvo on kuusi tuntia.Kuinka voin yrittää epäonnistunutta vaihetta uudelleen?Käytä uudelleenyritystoimintoa tai kääri komento komentotulkin uudelleenyrityssilmukkaan.Kuinka voin käyttää työnkulkua uudelleen arkistoissa?Julkaise uudelleen käytettävä työnkulku ja kutsu se workflow_call-komennolla.Kuinka kirjoitan yhdistelmätoiminnon?Luo action.yml komennolla runs.using: yhdistelmä ja vaiheluettelo.Kuinka käytän matriisin sisällyttämistä ja poissulkemista?sisältää lisää tai laajentaa yhdistelmiä; poissulkeminen poistaa ne luodusta tuotteesta.Kuinka ohitan CI:n sitoutuessa?Lisää [skip ci] vahvistusviestiin.Kuinka kirjoitan työyhteenvedon?Liitä Markdown kohteeseen $GITHUB_STEP_SUMMARY.Kuinka käytän tietokantaa CI:ssä?Ilmoita se palvelusäiliöksi terveystarkastuksen kanssa.Kuinka julkaisen paketin?Käytä OIDC:n luotettua julkaisua, jos rekisteri tukee sitä, muutoin ympäristön salassa olevaa suojattua merkkiä.Kuinka jaan tietoja töiden välillä?Lataa artefakti yhdessä työssä ja lataa se seuraavassa tai käytä työn tulosteita pienille arvoille.Kuinka pysäytän hitaan työnkulun estävän käyttöönoton?Erota vaaditut tarkistukset neuvoa-antavista ja merkitse vain nopeat ja luotettavat työt tarpeen mukaan.Kuinka suoritan selaintestejä ilman päätä?Käytä päätöntä lippua juoksijaasi tai xvfb-run työkaluja, jotka vaativat näytön.Kuinka suoritan Go-kilpailunilmaisintestejä?Juokse go -testikilpailu. Odottaa noin 2–10 kertaa hitaampaa suoritusta ja enemmän muistin käyttöä.Mitä eroa on työllä ja askeleella?Työ suoritetaan yhdellä juoksijalla ja sisältää vaiheita; vaiheet suoritetaan peräkkäin samassa työtilassa.Mitä eroa on GitHub-isännöimien ja itseisännöityjen juoksijoiden välillä?GitHub-isännöidyt ovat hallittuja, lyhytaikaisia ja laskutetaan minuutilta. Itseisännöinnit ovat sinun käytettävissäsi laitteistollasi.Mitä käyttöjärjestelmiä GitHub Actions voi käyttää?Linux, Windows ja macOS, x64 ja arm64 palveluntarjoajasta riippuen.Kuinka kauan esineitä säilytetään?Oletusarvoisesti 90 päivää, konfiguroitavissa arkisto- tai latauskohtaisesti enintään yhteen päivään.Kuinka voin korjata epäonnistuneen työn?Ota askelvirheenkorjausloki käyttöön, lisää työn yhteenveto tai avaa SSH-istunto runnerissa.Kuinka voin suorittaa työn vain vetopyyntöjen perusteella?Käytä pull_request-liipaisinta ja if-ehtoa tarkempaan hallintaan, kuten luonnosten ohittamiseen.

Havaittavuus19

Miten näen kustannus per työnkulku?runnerhut -koontinäyttö jakaa kulut työnkulun, työn, tunnisteen ja arkiston mukaan.Miten näen juoksijamerkinnän hinnan?Suodata käyttömittaristo tunnisteen mukaan nähdäksesi minuutit ja kulutuksen juoksijatyyppiä kohden.Kuinka tunnistan alamittaisen juoksijan?Jatkuva prosessori lähellä 100 %, muistipaine tai vaihtotoiminta työn aikana.Miten löydän työnkulun hitain vaiheen?Lajittele vaiheet keston mukaan juoksunäkymässä tai käytä runnerhut -aikajanaa, joka näyttää jonon, asennuksen ja vaiheen ajan erikseen.Kuinka saan selville, mikä työnkulku hidastui?Vertaa p95:n kestoa työnkulkua kohden kuukausittain analytiikan hallintapaneelissa.Kuinka mittaan välimuistin osumaprosenttia?runnerhut -koontinäyttö raportoi osumasuhteen, palautusajan ja koon välimuistiavainta kohti.Kuinka voin viedä työtiedot?Käytä runnerhut API:ta tai GitHub Actions REST APIa ja kirjoita tulokset CSV:hen.Voiko tekoälyagentti tehdä kyselyjä CI-mittareistani?Kyllä, runnerhut MCP-palvelimen kautta, joka paljastaa koonnoksia, kestoja, vikoja ja kustannuksia työkaluina.Voivatko tekoälyagentit laukaista CI-töitä?Kyllä, API:n kautta tai työntämällä oksia, kuten mikä tahansa muu toimija.Mitä mittareita API paljastaa?Jonoaika, keston prosenttipisteet, välimuistin osumataajuus, suorittimen ja muistin käyttö sekä työkohtainen hinta, tarra ja työnkulku.Miten näen suorittimen ja muistin käytön työssä?runnerhut tallentaa työkohtaisen käytön automaattisesti ja näyttää sen suoritussivulla.Voinko varoittaa muistin loppumisesta?Kyllä. Varoitus OOM-tapoista tai kynnyksen ylittävistä muistin käytöstä.Kuinka tuotan viikoittaisen CI-terveysraportin?Ajoita työnkulku, joka kyselee mittaussovellusliittymää ja julkaisee p95-keston, välimuistin osumasuhteen, hiljentymisnopeuden ja kulutuksen.Miksi työni tapettiin poistumiskoodilla 137?Se on OOM-tappaus – prosessi ylitti käytettävissä olevan muistin.Miksi työstäni loppui levy?GitHub-isännöidyillä juoksijoilla on noin 14 Gt ilmaista; Docker-tasot ja node_modules tyhjentävät sen nopeasti.Onko juoksijoilla suuria levyjä?GitHub-isännöidyillä juoksijoilla on noin 14 Gt ilmaista. runnerhut -juoksijat tarjoavat 150 Gt - 2 Tt paikallista NVMe:tä.Rajoittavatko juoksijaryhmät samanaikaisuutta?He voivat. Ryhmällä voi olla oma samanaikaisuuskatto tilirajoituksestasi riippumatta.Mitkä GitHub API:n nopeusrajoitukset vaikuttavat CI:ään?GITHUB_TOKEN on rajoitettu arkistokohtaisesti tunnissa; Työnkulut, jotka tekevät monia API-kutsuja, voivat tyhjentää sen.Miksi työni osuvat verkon aikakatkaisuihin?Yleensä rekisterin nopeuden rajoittaminen, NAT-yhdyskäytävän pullonkaula tai poistumiskäytäntö, joka katkaisee liikenteen hiljaa.