Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Layanan Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Anda dapat membangun, menguji, dan menyebarkan aplikasi Node.js sebagai bagian dari sistem integrasi berkelanjutan dan pengiriman berkelanjutan (CI/CD) Azure Pipelines Anda. Pelajari cara menggunakan pipeline guna membuat paket Node.js dengan Node Package Manager (npm) dan menerbitkan artefak pipeline.
Contoh alur mengotomatiskan proses membangun, menguji, dan mengemas aplikasi Node.js, membuatnya siap untuk penyebaran atau distribusi lebih lanjut.
Prasyarat
| Produk | Persyaratan |
|---|---|
| Azure DevOps | - Proyek Azure DevOps. - Kemampuan untuk menjalankan pipeline pada agen yang di-host oleh Microsoft. Anda dapat membeli pekerjaan paralel atau Anda dapat meminta tingkat layanan gratis. - Pengetahuan dasar tentang YAML dan Azure Pipelines. Untuk informasi selengkapnya, lihat Buat pipa pertama Anda. - Izin: - Untuk membuat alur: Anda harus berada di grup Kontributor dan grup harus mengatur izin Buat alur build ke Izinkan. Anggota grup Administrator Proyek dapat mengelola alur. - Untuk membuat koneksi layanan: Anda harus memiliki peran Administrator atau Creator untuk koneksi layanan . |
| GitHub | - Akun GitHub. - Koneksi layanan GitHub untuk mengotorisasi Azure Pipelines. |
| Azure | Sebuah langganan Azure. |
| Produk | Persyaratan |
|---|---|
| Azure DevOps | - Proyek Azure DevOps. - Agen mandiri. Untuk membuatnya, lihat Agen yang di-host sendiri. - Pengetahuan dasar tentang YAML dan Azure Pipelines. Untuk informasi selengkapnya, lihat Buat pipa pertama Anda. - Izin: - Untuk membuat alur: Anda harus berada di grup Kontributor dan grup harus mengatur izin Buat alur build ke Izinkan. Anggota grup Administrator Proyek dapat mengelola alur. - Untuk membuat koneksi layanan: Anda harus memiliki peran Administrator atau Creator untuk koneksi layanan . |
| GitHub | - Akun GitHub. - Koneksi layanan GitHub untuk mengotorisasi Azure Pipelines. |
| Azure | Sebuah langganan Azure. |
Fork (salin dan modifikasi) kode sampel
Lakukan fork pada aplikasi server Express.js contoh.
- Pergi ke repositori js-e2e-express-server.
- Pilih Fork di sudut kanan atas halaman.
- Pilih akun GitHub Anda. Secara default, fork diberi nama yang sama dengan repositori induk, tetapi Anda dapat memberinya nama yang berbeda.
Penting
Selama prosedur berikut, Anda mungkin diminta untuk membuat koneksi layanan GitHub atau dialihkan ke GitHub untuk masuk, menginstal Azure Pipelines, atau mengotorisasi Azure Pipelines. Ikuti instruksi di layar untuk menyelesaikan proses. Untuk informasi selengkapnya, lihat Akses ke repositori GitHub.
Membangun alur Anda
- Di proyek Azure DevOps Anda, pilih Alur>Buat Alur, lalu pilih GitHub sebagai lokasi kode sumber Anda.
- Pada layar Pilih sebuah repositori, pilih repositori sampel fork Anda.
- Pada layar Konfigurasikan alur Anda, pilih Alur pemula. Azure Pipelines menghasilkan file YAML bernama azure-pipelines.yml untuk alur Anda.
- Pilih tanda dropdown di samping Simpan dan jalankan, pilih Simpan, lalu pilih Simpan lagi. File disimpan ke repositori GitHub fork Anda.
- Pada layar berikutnya, pilih Edit.
Buat paket dan terbitkan artefak
Edit file azure-pipelines.yml sebagai berikut.
Ganti konten file dengan kode berikut.
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'
Dalam alur yang diperbarui, Anda akan:
- Instal Node.js: Tugas UseNode@1 menginstal versi Node.js yang ditentukan (18.x).
- Menginstal dependensi: Perintah penginstalan npm menginstal dependensi yang diperlukan untuk proyek Node.js.
- Membangun proyek: Perintah npm run build digunakan untuk membangun proyek Node.js.
- Jalankan Pengujian: Perintah pengujian npm menjalankan rangkaian pengujian proyek.
- Salin file: Tugas CopyFiles@2 menyalin file proyek yang diperlukan (misalnya,
src/**danpublic/**) ke direktori penahapan artefak. - Menerbitkan artefak alur: Tugas PublishPipelineArtifact@1 menerbitkan file dari direktori penahapan artefak sebagai artefak alur bernama nodejs-app.
Jalankan alur Anda
Pilih Validasi dan simpan, lalu Simpan, Jalankan, dan Jalankan lagi.
Setelah pipeline Anda berjalan, verifikasi bahwa tugas berhasil dijalankan dan Anda melihat artefak yang diterbitkan.
Selamat, Anda berhasil membuat dan menjalankan alur yang membangun dan menguji paket Node.js. Untuk memperluas alur kerja, Anda dapat:
- Menyebarkan ke platform cloud dengan layanan seperti Azure App Service
- Menerbitkan sebagai paket NPM
- Menyebarkan layanan hosting statis seperti Azure Static Web Apps
- Kontainerisasi dan sebarkan Azure Kubernetes Service atau platform orkestrasi kontainer lainnya