Skip to Content
Getting StartedEnsimmäinen buildisi

Ensimmäinen buildisi

Tämä ohje luo, validoi, rakentaa ja tarkastaa yhden mukautetun imagen. Validoidtu resepti on konfiguraatiotarkistus, ei todiste siitä, että ISO on rakennettu tai että jokainen pyydetty käyttäytyminen läpäisi VM-testin.

Ennen aloitusta

  • Kirjaudu sisään, jotta keskustelu ja build pysyvät tilisi alla.
  • Aloita yhdestä käyttöjärjestelmästä ja pienestä paketti- tai palvelujoukosta.
  • Päätä, millainen todiste osoittaa pyynnön täyttyneen. Paketin läsnäolo, palvelun tila, kuunteleva portti ja GUI-käyttäytyminen ovat eri assertions.

Ensimmäisellä kerralla vältä credentials-tietoja ja yksityisiä repository-URL-osoitteita chatissa. Lisää secrets myöhemmin tuettua credential-workflowia käyttäen sen sijaan, että upotat ne imageen.

1. Kuvaa lopputulos ja tarkistukset

Esimerkki:

Build a Debian 13 server image with OpenSSH and curl. Create a password-locked deploy user in the sudo group. Verify that the image boots, the deploy user exists, the ssh service is enabled, and curl is installed. Do not add Docker or a desktop.

Nimenomaiset poissulut auttavat erottamaan tarkoituksella minimaalisen imagen pyynnöstä, jonka planner yksinkertaisesti ohitti.

2. Tarkista reseptin esikatselu

Tarkista vähintään:

  • base_image vastaa pyydettyä jakelua ja julkaisua;
  • pyydetyt paketit ovat os.packages-kohdassa tai ne tuottaa eksplisiittinen feature;
  • käyttäjät, ryhmät, palvelut, verkko, installer ja työpöytävalinnat vastaavat pyyntöä;
  • scenarios sisältää tarvitsemasi tarkistukset;
  • pyytämätöntä pakettia, työpöytää, installeria, credentialia tai ulkoista repositorya ei ole lisätty.

Pyydä muutoksia samassa keskustelussa. Jatkokyselyt kohdistuvat aktiiviseen reseptiin. Kun käytät Validate Recipe, backend säilyttää edeltävän sisältöisen chat-pyynnön ja estää reseptin, jos eksplisiittiset vaatimukset puuttuvat vielä; generoitu kontrollilause ei saa pyyhkiä keskustelun tarkoitusta.

Validointi voi silti jättää huomaamatta saamattoman paketin, upstream-katkon, distro-kohtaisen build-virheen tai käyttäytymisen ilman testiä. Lue esikatselu ehdotettuna sopimuksena.

3. Käynnistä build kerran

Valitse Start Build validoidussa esikatselussa. Onnistunut napsautus luo build-ID:n. Pidä se ID tallessa ongelmaraportissa; se on luotettavampi kuin pelkkä prosentti tai kuvakaappaus.

Build-paneeli voi näyttää tiloja kuten queued, planning, configured, building, finalizing, completed, failed tai cancelled. Jonossa oleva build voi odottaa worker-kapasiteettia tai käynnistyksen palautumista. Näytetty prosentti on edistymisennuste, ei deadline; jotkin paketointi- ja tiedostojärjestelmävaiheet kestävät paljon pidempään kuin toiset.

Voit seurata buildia sen live build-paneelissa, vaikka poistut alkuperäisestä chat-näkymästä. Uudelleenlatauksen pitäisi yhdistää uudelleen tallennetun build-tilan ja event streamin kautta. Älä napsauta Start Build toistuvasti, ellei UI ilmoita, ettei build-ID:tä luotu tai edellinen build saavutti terminal staten.

4. Erottele imagen valmistuminen testin valmistumisesta

Image voi valmistua ennen kuin valittu VM-verifiointi saavuttaa terminal staten. Lue molemmat:

  • build status: onko pysyvä artefakti koottu ja finalisoitu;
  • test status: not_run, running, passed, failed tai error;
  • certification status, kun se on mukana: määritetyn evidence-politiikan tulos, ei yleinen turvallisuus- tai laitesertifiointi.

Avaa testin yksityiskohdat. Varmista, että jokainen pyydetty assertion ajettiin odotettua guestia vasten, ja tarkista epäonnistumiset tai ohitetut tarkistukset. Läpäisty boot-testi ei todista, että sovellus avautuu; pakettitietue ei todista, että palvelu on terve.

5. Tarkista ja lataa artefakti

Ennen latausta vertaa lopullista reseptiä sekä paketti-/testitodisteita pyyntöön. Kirjaa build-ID, artefaktin tiedostonimi, koko ja checksum, kun ne näytetään.

Käytä buildin lataustoimintoa vasta kun artefaktin finalisointi on valmis. Latauspaketti voi sisältää ISO:n ja liittyvän todisteen. Jos lataus palauttaa Failed to create download package, not found tai muun JSON-virheen:

  1. varmista, että olet kirjautuneena buildin omistajana;
  2. avaa uudelleen juuri se build, älä vanhempaa keskustelukorttia;
  3. varmista, että artefaktin finalisointi on valmis ja ISO on listattu;
  4. yritä kerran uudelleen;
  5. ilmoita build-ID, aikaleima, näytetyt build-/test-/finalisointitilat ja tarkka virheteksti.

Älä rakenna uudelleen vain ownership- tai pakkausvirheen kiertämiseksi; se voi heittää pois hyödyllisen diagnostiikan tilan ja kuluttaa toisen build-slotin.

6. Testaa ISO sen käyttötarkoituksessa

Boot OpenFactoryn VM:ssä vahvistaa vain määritetyn virtuaaliympäristön. Asennettavalle työpöydälle testaa myös installer-polku kertalevyllä. Fyysisessä käyttöönotossa testaa erikseen firmware-tila, tallennus, grafiikka, verkko, suspend, syöttölaitteet, päivitykset ja recovery edustavalla laitteistolla.

Yleiset palautumispolut

OireToimenpide
Resepti validoituu, mutta jättää pyynnön poisÄlä rakenna; ilmoita puuttuva vaatimus eksplisiittisesti ja validoi uudelleen
Build jonossaPidä build-ID ja tarkista jono-/recovery-tila; vältä päällekkäisiä käynnistyksiä
Edistyminen näyttää muuttumattomaltaTarkista nykyinen stage ja viimeisin lokitoiminta ennen kuin päätät, että se on jumissa
Build epäonnistuuLue ensimmäinen syyvirhe, älä vain loppuyhteenvetoa; muokkaa tai yritä uudelleen vasta kun syy on selvä
Testit epäonnistuvatErottele tuotevika, assertion-virhe, guest-boot-ongelma ja infrastruktuurivika
Lataus puuttuu tai on kiellettyVarmista omistajan sessio, finalisointitila ja tarkka build-ID ennen uudelleenrakennusta

Seuraavat askeleet