Kergendage oma tootmis- ja juurutamisprobleeme CI/CD torujuhtmega, mis hoolitseb töömahukate detailide eest.

Veebirakenduste juurutamine Firebase Hostingis võib olla tülikas. GitHubi toiminguid kasutades saate aga juurutusprotsessi lihtsustada ja sujuvamaks muuta ning teha juurutamise töövoogude haldamine kogu tarkvara eluea jooksul on uskumatult lihtne projekt.

Vaid mõne lihtsa sammuga saate protsessi automatiseerimiseks seadistada juurutamise töövoo. See hõlmab uute muudatuste jälgimist harudes ja vigade logimist. Lugege edasi, et saada teavet selle kohta, kuidas Firebase'i hostimisteenuses Reacti rakendust juurutada.

Mis on CI/CD torujuhe?

CI/CD (Continuous Integration/Continuous Delivery) konveier on automatiseeritud protsesside kogum, mis on rakendatud, et võimaldada rakenduste pidevat koostamist, testimist ja juurutamist.

Lihtsamalt öeldes on tarkvaraarenduse elutsükliga seotud protsesside automatiseerimiseks loodud CI/CD konveier. See hõlmab tegelikku arendust, testimist, väljalaseid (beeta-, alfa- ja lõplik väljalase), veaparandusi ja isegi funktsioonide värskendusi. Põhimõtteliselt võimaldab see protsess kvaliteetse tarkvara lihtsalt ja kiiresti tarnida.

CI/CD torujuhe hõlmab tavaliselt paari etappi, sealhulgas:

  1. Lähteetapp: see etapp hõlmab rakenduse koodi tegelikku arendamist ja hooldust versioonihaldustööriistaga, nagu Git.
  2. Koostamisetapp: see samm koondab lähtekoodi koos kõigi selle sõltuvustega käivitatavasse vormingusse.
  3. Testietapp: see etapp sisaldab automatiseeritud teste tarkvara kvaliteedi kinnitamiseks. Lõppeesmärk on avastada ja parandada kõik vead. Selles etapis saate läbi viia erinevat tüüpi teste ja kui kood on testid läbinud, on see juurutamiseks valmis.
  4. Juurutamine: see etapp automatiseerib juurutusprotsessi tootmiskeskkonnas.

Torujuhe peaks jälgima iga etappi, et tagada vigade puudumine ja täiustada kogu protsessi tulevaste versioonide jaoks.

Mis on GitHubi toimingud?

GitHub Actions on GitHubi pakutav funktsioon tarkvara juurutamise töövoo protsesside automatiseerimiseks CI/CD torujuhtmetes. See võimaldab määratleda ja automatiseerida juurutamise töövooge otse teie projekti GitHubi hoidlast.

GitHub Actionsil on mitmeid eeliseid:

  1. Lihtne kasutada: GitHub Actions pakub kasutajasõbralikku liidest ja lihtsat süntaksit juurutamise töövoogude seadistamiseks. Saate lihtsalt ja kiiresti oma projekti töövooge määratleda, kasutades GitHubi sisseehitatud redaktorit.
  2. Native Integration: GitHub Actions on osa GitHubist, mis muudab teie projekti koodiga töövoogude seadistamise, haldamise ja koostöö tegemise lihtsaks.
  3. Paindlik ja kohandatav: GitHub Actions pakub paindlikku ja kohandatavat platvormi, mis tagab, et saate luua töövooge, mis vastavad teie konkreetsetele vajadustele. Lisaks toetab see mitut programmeerimiskeelt. See tähendab, et saate seda kasutada mis tahes eelistatud tehnoloogiaga.

Seadistage Firebase'i projekt ja reageerimisklient

Alustamiseks minge aadressile Firebase ja logige sisse oma Google'i kontoga. Klõpsake konsooli ülevaatelehel Loo projekt uue projekti seadistamiseks ja projekti nime andmiseks.

Järgmiseks looge rakendus React ja installige Firebase'i käsurea tööriistad:

npm install -g firebase-tools

Selle projekti koodi leiate sellest GitHubi hoidla.

Logige oma terminalist Firebase'i sisse, kasutades Firebase'i konto mandaate.

firebase'i sisselogimine: ci

See käivitab Firebase'i autentimisvoo, mis palub teil sisestada oma sisselogimisandmed, kui te pole veel sisse loginud. Kui Firebase teid autentib, prindib see loa. Kopeerige see märk; kasutate seda Firebase'i käskude käitamiseks oma GitHubi toimingute seadistuses.

Lõpuks looge oma rakendusest tootmisvalmis versioon.

npm run build

See käsk genereerib rakenduse juurutamiseks vajalikud failid ja varad juurkataloogi uues ehituskaustas.

Initsialiseerige Firebase oma Reacti rakenduses

Käivitage see käsk Firebase'i lähtestamiseks projekti kaustas:

firebase init

Järgmisena kinnitage, et soovite Firebase'i oma projektis lähtestada, ja tehke valik Hosting: Firebase'i hostimise jaoks failide seadistamine ja (valikuliselt) GitHubi toimingu juurutamise seadistaminevalikute loendist.

Määrake, et soovite kasutada olemasolevat projekti, ja valige Firebase'i arendajakonsoolis algselt loodud projekti nimi.

Järgmisena määrake kaustaks "ehitamine". avalik kataloog, valige Ei kõigi URL-ide ümberkirjutamiseks suvandisse /index.html valige Ei GitHubist automaatsete ehitamiste ja juurutuste seadistamise valikule ning lõpuks Select Jah faili suvandi build/index.html üle kirjutamiseks.

Pärast ülaltoodud muudatuste tegemist loob CLI juurkataloogis faili firebase.json. See fail sisaldab kogu hostimise konfiguratsiooni, mida GitHub Actionsi töövoog nõuab.

Lõpuks, enne GitHubi toimingute töövoo seadistamist, looge GitHubis hoidlaja lükake projektifailid sinna.

GitHubi toimingute seadistamine

Valige oma projekti hoidlas GitHubis Seaded > Saladused ja muutujad > Tegevused. Sisestage hoidla salajasele lehele FIREBASE_TOKEN saladuse nimena ja kleepige Firebase'i märgisse, mille kopeerisite Saladused väljad.

Seadistage juurutamise töövoog

Klõpsake oma projekti hoidlas vahekaarti Tegevused ja valige Seadistage Nodejs töövoog Pidev integreerimine osa.

Järgmisena nimetage faili nimi ümber firebase.yml, kustutage redaktoris põhikood ja lisage allolev kood:

# See töövoog teostab sõlmesõltuvuste puhta installimise,
# vahemällu/taastada need, ehitada allikas koodi ja käivitage teste erinevates kohtades
# sõlme versioonid
# Lisateabe saamiseks vaadake:
# https://docs.github.com/en/actions/automating-builds-and-tests
# /building-and-testing-nodejs

nimi: Firebase CI

peal:
suruma:
filiaalid: [ peamine ]
pull_request:
filiaalid: [ peamine]

töökohad:
ehitada:

töötab: ubuntu-latest

strateegia:
maatriks:
sõlme versioon: [14.x]

sammud:
- kasutab: action/checkout@v2
- nimi: kasutage Node.js ${{ matrix.node-version }}
kasutab: action/setup-node@v1
koos:
node-version: ${{ matrix.node-version }}
- käivitage: npm install -g npm
- nimi: npm installige, ehitage ja testige
jooks: |
npm installimine
npm run build
- nimi: Arhiivi koostamine
kasutab: action/upload-artifact@v2
koos:
nimi: ehitada
tee: ehitada

juurutada:
nimi: juurutada
vajadused: ehitada
töötab: ubuntu-latest

sammud:
- kasutab: action/checkout@v2
- nimi: laadige alla ehitamine
kasutab: action/download-artifact@v2
koos:
nimi: ehitada
tee: ehitada
- nimi: juurutage Firebase'i
kasutab: w9jds/firebase-action@master
koos:
args: juurutage --only hosting
env:
FIREBASE_TOKEN: ${{ saladusi. FIREBASE_TOKEN }}

Siin on selgitatud mõned peamised omadused:

  1. Peal: sündmused, mis käivitavad selle töövoo toimingud.
  2. Töökohad: määrab tööd, mida konkreetne toiming peaks käivitama. Sel juhul on kaks tööd: ehitamine ja juurutamine.
  3. Jookseb peale: masin, millel see toiming peab toimuma.
  4. Sammud: määratleb toimingute jada konkreetse töö jaoks.
  5. Koos: määrab kõik argumendid, mida toimingud nõuavad.
  6. Nimi: töö konkreetse sammu nimi.

Lõpuks kinnitage selles failis tehtud muudatused. GitHub käivitab selle töövoo automaatselt, luues ja juurutades Firebase'i hostimisteenuses Reacti rakenduse. Rakenduse reaalajas URL-i saate kontrollida juurutamise logidest.

Rakenduste juurutamine GitHubi toimingute abil

GitHub Actions pakub sujuvamat juurutamisviisi. See tagab, et saate rakendusi järjepidevalt ja usaldusväärselt juurutada, olenemata nende loomise tehnoloogiast.

Lisaks saate juurutamise töövoogu hõlpsalt kohandada, kasutades sisseehitatud juurutustööriistu, mis vastavad teie konkreetsetele CI/CD torujuhtme vajadustele.