Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020
Az Azure Pipelines folyamatos integrációs és folyamatos kézbesítési (CI/CD) rendszerének részeként Node.js alkalmazásokat hozhat létre, tesztelhet és helyezhet üzembe. Megismerheti, hogyan használjon egy pipeline-t a Node Package Manager (npm) segítségével Node.js-csomag létrehozására, és hogyan tegyen közzé egy pipeline-mellékterméket.
A példafolyamat automatizálja egy Node.js alkalmazás létrehozásának, tesztelésének és csomagolásának folyamatát, így készen áll a további üzembe helyezésre vagy terjesztésre.
Előfeltételek
| Termék | Követelmények |
|---|---|
| Azure DevOps | - Egy Azure DevOps-projekt. – Képes futtatni folyamatokat a Microsoft által üzemeltetett ügynökökön. Vásárolhat párhuzamos feladatot , vagy ingyenes szintet kérhet. - A YAML és az Azure Pipelines alapszintű ismerete. További információkért lásd: Az első pipeline létrehozása. - Engedélyek: A folyamat létrehozásához a Közreműködők csoport tagjának kell lennie, és a csoportnak rendelkeznie kell a build folyamat létrehozása engedéllyel, amelynek beállítása "Engedélyezve". A Projektgazdák csoport tagjai kezelhetik a folyamatokat. - Szolgáltatáskapcsolatok létrehozásához: A szolgáltatáskapcsolatokhozrendszergazdai vagy létrehozói szerepkör szükséges. |
| GitHub | - Egy GitHub-fiók . – GitHub-szolgáltatáskapcsolat az Azure Pipelines engedélyezéséhez. |
| Kék | Egy Azure-előfizetés. |
| Termék | Követelmények |
|---|---|
| Azure DevOps | - Egy Azure DevOps-projekt. - Egy önállóan üzemeltetett ügynök. Ahhoz, hogy létrehozzon egyet, tekintse meg a saját üzemeltetésű ügynököket. - A YAML és az Azure Pipelines alapszintű ismerete. További információkért lásd: Az első pipeline létrehozása. - Engedélyek: A folyamat létrehozásához a Közreműködők csoport tagjának kell lennie, és a csoportnak rendelkeznie kell a build folyamat létrehozása engedéllyel, amelynek beállítása "Engedélyezve". A Projektgazdák csoport tagjai kezelhetik a folyamatokat. - Szolgáltatáskapcsolatok létrehozásához: A szolgáltatáskapcsolatokhozrendszergazdai vagy létrehozói szerepkör szükséges. |
| GitHub | - Egy GitHub-fiók . – GitHub-szolgáltatáskapcsolat az Azure Pipelines engedélyezéséhez. |
| Kék | Egy Azure-előfizetés. |
A mintakód forkolása
Forkolja a minta Express.js szerveralkalmazást.
- Nyissa meg a js-e2e-express-server adattárat.
- Válassza a Fork lehetőséget a lap jobb felső sarkában.
- Válassza ki a GitHub-fiókját. Alapértelmezés szerint az elágazás neve megegyezik a szülőadattár nevével, de más nevet adhat neki.
Fontos
Az alábbi eljárások során előfordulhat, hogy a rendszer arra kéri, hogy hozzon létre egy GitHub-szolgáltatáskapcsolatot , vagy átirányítsa a GitHubra a bejelentkezéshez, az Azure Pipelines telepítéséhez vagy az Azure Pipelines engedélyezéséhez. A folyamat befejezéséhez kövesse a képernyőn megjelenő utasításokat. További információért lásd: A GitHub-adattárak elérése.
Hozza létre a saját folyamatvonalát
- Az Azure DevOps-projektben válassza a Pipelines>Create Pipeline elemet, majd válassza a GitHubot a forráskód helyeként.
- Az Adattár kiválasztása képernyőn válassza ki a klónozott mintaadattárat.
- A folyamat konfigurálása képernyőn válassza a Starter-folyamatot. Az Azure Pipelines létrehoz egy azure-pipelines.yml nevű YAML-fájlt a folyamathoz.
- Válassza a Mentés és futtatás melletti legördülő elemet, válassza a Mentés, majd a Mentés újra lehetőséget. A fájl a forkolt GitHub-adattáradba van mentve.
- A következő képernyőn válassza a Szerkesztés lehetőséget.
A csomag létrehozása és egy összetevő közzététele
Szerkessze a azure-pipelines.yml fájlt az alábbiak szerint.
Cserélje le a fájl tartalmát a következő kódra.
trigger: - main pool: vmImage: 'ubuntu-latest' variables: nodeVersion: '18.x' steps: # Install Node.js - task: UseNode@1 inputs: version: $(nodeVersion) displayName: 'Install Node.js' # Install dependencies - script: | npm install displayName: 'Install dependencies' # Build the project - script: | npm run build displayName: 'Build project' # Run tests - script: | npm test displayName: 'Run tests' # Copy project files to artifact staging directory - task: CopyFiles@2 inputs: sourceFolder: '$(Build.SourcesDirectory)' contents: | src/** public/** targetFolder: '$(Build.ArtifactStagingDirectory)' displayName: 'Copy project files' # Publish pipeline artifact - task: PublishPipelineArtifact@1 inputs: artifactName: 'nodejs-app' targetPath: '$(Build.ArtifactStagingDirectory)' displayName: 'Publish pipeline artifact'
A frissített folyamatban a következőt teheti:
- Telepítés Node.js: A UseNode@1 feladat telepíti a megadott Node.js verziót (18.x).
- Függőségek telepítése: Az npm telepítési parancs telepíti a Node.js projekthez szükséges függőségeket.
- A projekt létrehozása: Az npm-alapú buildelési parancs létrehozza a Node.js projektet.
- Tesztek futtatása: Az npm tesztparancs futtatja a projekt tesztcsomagját.
- Fájlok másolása: A CopyFiles@2 feladat a szükséges projektfájlokat (például
src/**éspublic/**) az összetevő átmeneti könyvtárába másolja. - Folyamatösszetevő közzététele: A PublishPipelineArtifact@1 feladat a nodejs-app nevű folyamatösszetevőként teszi közzé az összetevő átmeneti könyvtárából származó fájlokat.
Futtassa a pipeline-ját
Kattintson az Ellenőrzés és mentés, majd a Mentés, Futtatás és ismét a Futtatás lehetőségre.
A pipeline futtatása után ellenőrizze, hogy a feladat sikeresen futott-e, és hogy megjelenik-e egy közzétett artefaktum.
Gratulálunk, sikeresen létrehozott és futtatott egy folyamatot, amely létrehozott és tesztelt egy Node.js csomagot. A folyamatvonal kiterjesztéséhez a következőket teheti:
- Üzembe helyezés felhőplatformon egy olyan szolgáltatással, mint az Azure App Service
- Közzététel NPM-csomagként
- Statikus üzemeltetési szolgáltatás, például az Azure Static Web Apps üzembe helyezése
- Az Azure Kubernetes Service vagy más tárolóvezénylési platformok tárolóba helyezése és üzembe helyezése