Seseorang menyiarkan di twitter bahawa apabila jurutera melakukan sesuatu, mereka harus menulis tentang cara mereka mencapainya. Ia boleh menjimatkan masa jurutera lain mencari untuk mencari penyelesaian. Dan itulah sebabnya kami berada di sini.
Dalam artikel ini kami akan mengkonfigurasi Talian Paip CI/CD untuk projek js nod menggunakan Azure sebagai pembekal awan dan tindakan GitHub.
Pertama sekali
Log masuk ke portal Microsoft Azure atau buat akaun jika anda tidak mempunyai akaun. (Pada masa penulisan, mereka memberikan akaun baharu sehingga $200 kredit.
Seterusnya, cari apl azure.
Pilih Cipta > WebApp. Kemudian isikan butiran dalam borang. Pilih timbunan masa jalan sebagai Node xx LTS. Teruskan mencipta sehingga.
Pada penghujung proses, anda harus mempunyai apl web yang mempunyai halaman lalai microsoft.
Seterusnya,
Terdapat beberapa kaedah yang didokumenkan di sini, tetapi kami menggunakan pilihan Prinsipal Perkhidmatan kerana ia agak lurus ke hadapan.
Buka cli Azure, (ditunjukkan dalam imej di bawah)
Dan jalankan arahan berikut:
az ad sp create-for-rbac --name "myApp" --role contributor --scopes /subscriptions/
Ganti , dan dengan butiran yang betul daripada papan pemuka perkhidmatan apl azure anda. "myApp" ialah nama Pengetua perkhidmatan.
Arahan akan menghasilkan output seperti ini.
{
"clientId": "
"clientSecret": "
"subscriptionId": "
"tenantId": "
(...)
}
Ini akan digunakan kemudian.
Akhirnya ke Github
Dalam repositori navigasi ke tetapan > rahsia dan pembolehubah > tindakan.
Klik tambah rahsia repositori baharu. Tampalkan output json kerana ia berada dalam medan rahsia dan AZURE_CREDENTIALS dalam medan nama.
Navigasi ke tab tindakan untuk menambahkan aliran tindakan github pada projek. Cari "Deploy Node.js to Azure Web App" dan klik konfigurasi untuk meneruskan.
Edit fail supaya kelihatan seperti di bawah:
`pada:
tolak:
cawangan: [ "membangunkan" ]
workflow_dispatch:
env:
AZURE_WEBAPP_NAME: # tetapkan ini kepada nama aplikasi anda
AZURE_WEBAPP_PACKAGE_PATH: '.' # tetapkan ini kepada laluan ke projek apl web anda, lalai kepada akar repositori
NODE_VERSION: '' # tetapkan ini kepada versi nod untuk digunakan
kebenaran:
kandungan: baca
pekerjaan:
bina-dan-gunakan:
runs-on: ubuntu-latest
langkah:
- nama: 'Checkout Github Action'
kegunaan: actions/checkout@v4
- uses: azure/login@v1 with: creds: ${{ secrets.AZURE_CREDENTIALS }} - name: Setup Node ${{ env.NODE_VERSION }} uses: actions/setup-node@v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'npm' - name: npm install, build, and test run: | npm install - uses: azure/webapps-deploy@v3 with: app-name: ${{ env.AZURE_WEBAPP_NAME }} package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }} # Azure logout - name: logout run: | az logout`
Fail aliran kerja dicetuskan semasa menolak ke cawangan yang dibangunkan dan log masuk ke portal azure menggunakan bukti kelayakan yang telah anda simpan dalam rahsia sebelum ini dan kemudian terus membina dan menggunakan.
Ingat untuk menggantikan edit nama apl web, versi nod dengan sewajarnya.
Akhirnya mencetuskan aliran kerja untuk larian pertama. Halaman web lalai pada portal azure anda akan hilang dan apl web anda telah dikonfigurasikan untuk saluran paip CI/CD yang dicetuskan semasa menolak ke cawangan yang dibangunkan.
Semoga ini membantu jurutera lain.
Atas ialah kandungan terperinci Nota Pembangun: Konfigurasikan saluran paip CI/CD untuk projek js nod anda menggunakan Azure dan Github Actions. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!