Tutorial ini menunjukkan cara menggunakan Azure Pipelines, Cloud Run, dan Container Registry untuk membuat pipeline continuous integration/continuous deployment (CI/CD) untuk aplikasi web ASP.NET MVC Core.
Pipeline CI/CD menggunakan dua Google Cloud project, satu untuk pengembangan dan satu untuk produksi, seperti yang ditunjukkan diagram berikut.
Di awal pipeline, developer melakukan commit perubahan pada contoh codebase. Tindakan ini memicu pipeline untuk membuat rilis dan men-deploy-nya ke Cloud Run di cluster pengembangan. Kemudian, pengelola rilis mempromosikan rilis sehingga di-deploy ke project produksi.
Tutorial ini ditujukan bagi developer dan engineer DevOps. Tutorial ini mengasumsikan bahwa
Anda memiliki pengetahuan dasar tentang .NET, Azure Pipelines, Cloud Run, dan
git. Untuk menyelesaikan tutorial ini, Anda memerlukan akses administratif ke akun Azure DevOps.
Tujuan
- Menghubungkan Artifact Registry ke Azure Pipelines untuk memublikasikan image Docker.
- Siapkan aplikasi contoh.NET untuk deployment ke Cloud Run.
- Menyiapkan autentikasi antara Azure Pipelines dan Google Cloud.
- Gunakan pengelolaan rilis Azure Pipelines untuk mengatur deployment Cloud Run.
Biaya
Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih sebagai berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk mengetahui informasi selengkapnya, lihat Pembersihan.
Lihat halaman harga Azure DevOps untuk mengetahui biaya yang mungkin berlaku pada penggunaan Azure DevOps.
Sebelum memulai
Anda menggunakan dua project terpisah dalam tutorial ini, satu untuk pengembangan dan satu untuk produksi. Dengan menggunakan project terpisah, Anda dapat menguji rilis sebelum men-deploy-nya ke produksi dan juga mengelola peran dan izin Identity and Access Management (IAM) satu per satu.
- Buat Google Cloud project untuk pengembangan. Tutorial ini menyebut project ini sebagai project pengembangan.
- Buat Google Cloud project untuk produksi. Tutorial ini merujuk pada project ini sebagai project produksi.
-
Verify that billing is enabled for your Google Cloud project.
- Pastikan Anda memiliki akun Azure DevOps dan akses administrator ke akun tersebut. Jika belum memiliki akun Azure DevOps, Anda dapat mendaftar di halaman beranda Azure DevOps.
Membuat project Azure DevOps
Anda menggunakan Azure DevOps untuk mengelola kode sumber, menjalankan build dan pengujian, serta mengatur deployment ke Cloud Run. Untuk memulai, Anda membuat project di akun Azure DevOps Anda.
- Buka halaman beranda Azure DevOps (https://dev.azure.com/YOUR_AZURE_DEVOPS_ACCOUNT_NAME).
- Klik New Project.
- Masukkan nama project, seperti
CloudDemo. - Tetapkan Visibilitas ke Pribadi, lalu klik Buat project.
- Setelah Anda membuat project, di menu sebelah kiri, klik Repos.
- Klik Impor untuk membuat fork repositori
dotnet-docs-samplesdari GitHub, lalu tetapkan nilai berikut:- Jenis repositori:
Git - URL Clone:
https://github.com/GoogleCloudPlatform/dotnet-docs-samples.git
- Jenis repositori:
Klik Import.
Setelah proses impor selesai, Anda akan melihat kode sumber repositori
dotnet-docs-samples.
Menghubungkan Azure Pipelines ke Artifact Registry
Sebelum dapat menyiapkan continuous integration untuk aplikasi CloudDemo, Anda harus menghubungkan Azure Pipelines ke Artifact Registry. Koneksi ini memungkinkan Azure Pipelines memublikasikan image container ke Artifact Registry.
Menyiapkan akun layanan untuk memublikasikan gambar
Buat akun layananGoogle Cloud di project produksi Anda:
- Di konsol Google Cloud , alihkan ke project produksi.
-
In the Google Cloud console, activate Cloud Shell.
Lakukan inisialisasi variabel lingkungan berikut:
DEV_PROJECT_ID=DEV_PROJECT_ID PROD_PROJECT_ID=PROD_PROJECT_ID
Ganti kode berikut:
DEV_PROJECT_ID: project ID project pengembangan AndaPROD_PROJECT_ID: project ID project produksi Anda
Aktifkan Artifact Registry API di project produksi:
gcloud services enable artifactregistry.googleapis.com \ --project=$PROD_PROJECT_IDBuat repositori Artifact Registry untuk menyimpan image Docker Anda:
gcloud artifacts repositories create docker \ --project=$PROD_PROJECT_ID \ --repository-format=docker \ --location REGIONGanti
REGIONdengan region repositori Artifact Registry Anda, misalnyaus-central1.Buat akun layanan yang digunakan Azure Pipelines untuk memublikasikan image Docker:
gcloud iam service-accounts create azure-pipelines-publisher \ --display-name="Azure Pipelines Publisher" \ --project=$PROD_PROJECT_IDBerikan peran Penulis Artifact Registry (
roles/artifactregistry.writer) ke akun layanan untuk mengizinkan Azure Pipelines melakukan push ke Artifact Registry:AZURE_PIPELINES_PUBLISHER=azure-pipelines-publisher@$PROD_PROJECT_ID.iam.gserviceaccount.com gcloud projects add-iam-policy-binding $PROD_PROJECT_ID \ --member serviceAccount:$AZURE_PIPELINES_PUBLISHER \ --role roles/artifactregistry.writer \ --project=$PROD_PROJECT_IDBuat kunci akun layanan:
gcloud iam service-accounts keys create azure-pipelines-publisher.json \ --iam-account $AZURE_PIPELINES_PUBLISHER \ --project=$PROD_PROJECT_ID tr -d '\n' < azure-pipelines-publisher.json > azure-pipelines-publisher-oneline.jsonLihat konten file kunci akun layanan:
echo $(<azure-pipelines-publisher-oneline.json)Anda memerlukan kunci akun layanan di salah satu langkah berikut.
- Di menu DevOps Azure, pilih Project settings, lalu pilih Pipelines > Service connections.
- Klik Create service connection.
- Dari daftar, pilih Docker Registry, lalu klik Next.
Dalam dialog, masukkan nilai untuk kolom berikut:
- Jenis registry: Lainnya
Docker Registry:
https://REGION-docker.pkg.dev/PROD_PROJECT_ID/docker/Ganti kode berikut:
REGION: region repositori Artifact Registry AndaPROD_PROJECT_ID: nama project produksi Anda
Docker ID:
_json_keySandi: Tempelkan konten
azure-pipelines-publisher-oneline.json.Nama koneksi layanan:
gcr-tutorial
Klik Simpan untuk membuat koneksi.
- Dengan menggunakan Visual Studio atau klien
gitcommand line, clone repositori Git baru Anda. - Di root repositori, buat file bernama
azure-pipelines.yml. Salin kode berikut ke dalam file:
resources: - repo: self fetchDepth: 1 pool: vmImage: ubuntu-22.04 trigger: - master variables: TargetFramework: 'net6.0' BuildConfiguration: 'Release' DockerImageName: 'PROD_PROJECT_ID/docker/CloudDemo' steps: - task: DotNetCoreCLI@2 displayName: Publish inputs: projects: 'applications/clouddemo/netcore/CloudDemo.MvcCore.sln' publishWebProjects: false command: publish arguments: '--configuration $(BuildConfiguration) --framework=$(TargetFramework)' zipAfterPublish: false modifyOutputPath: false - task: PublishBuildArtifacts@1 displayName: 'Publish Artifact' inputs: PathtoPublish: '$(build.artifactstagingdirectory)' - task: Docker@2 displayName: 'Login to Container Registry' inputs: command: login containerRegistry: 'gcr-tutorial' - task: Docker@2 displayName: 'Build and push image' inputs: Dockerfile: 'applications/clouddemo/netcore/Dockerfile' command: buildAndPush repository: '$(DockerImageName)'
Ganti
PROJECT_IDdengan nama project produksi Anda, lalu simpan file.Karena Cloud Run adalah lingkungan berbasis Linux, pipeline menggunakan agen build berbasis Linux.
Lakukan commit pada perubahan Anda dan kirimkan ke Azure Pipelines.
Visual Studio
- Buka Team Explorer, lalu klik ikon Home.
- Klik Perubahan.
- Masukkan pesan commit seperti
Add pipeline definition. - Klik Commit All and Push.
Command line
Siapkan semua file yang diubah:
git add -ALakukan perubahan pada repositori lokal:
git commit -m "Add pipeline definition"Kirim perubahan ke Azure DevOps:
git push
Di menu Azure DevOps, pilih Pipelines, lalu klik Create Pipeline.
Pilih Azure Repos Git.
Pilih repositori Anda.
Di halaman Tinjau YAML pipeline Anda, klik Jalankan.
Build baru dipicu. Proses build mungkin memerlukan waktu sekitar dua menit.
Untuk memverifikasi bahwa image telah dipublikasikan ke Artifact Registry, beralihlah ke project produksi Anda di konsol Google Cloud , pilih Artifact Registry > docker, lalu klik CloudDemo.
Satu gambar dan tag gambar ini ditampilkan. Tag sesuai dengan ID numerik build yang dijalankan di Azure Pipelines.
- Rilis mengacu pada sekumpulan artefak yang membentuk versi tertentu aplikasi Anda dan biasanya merupakan hasil dari proses build.
- Deployment mengacu pada proses pengambilan rilis dan men-deploy-nya ke lingkungan tertentu.
- Deployment melakukan serangkaian tugas, yang dapat dikelompokkan dalam tugas.
- Tahapan memungkinkan Anda menyegmentasikan pipeline dan dapat digunakan untuk mengatur deployment ke beberapa lingkungan—misalnya, lingkungan pengembangan dan pengujian.
Buka Cloud Shell.
Lakukan inisialisasi variabel lingkungan berikut:
DEV_PROJECT_ID=DEV_PROJECT_ID PROD_PROJECT_ID=PROD_PROJECT_ID
Ganti kode berikut:
DEV_PROJECT_ID: project ID project pengembangan AndaPROD_PROJECT_ID: project ID project produksi Anda
Aktifkan Cloud Run dan Compute Engine API di project pengembangan dan produk:
gcloud services enable run.googleapis.com --project=$DEV_PROJECT_ID gcloud services enable run.googleapis.com --project=$PROD_PROJECT_IDMengaktifkan API ini akan menyebabkan akun agen layanan Cloud Run dibuat di project Anda.
Beri dua akun agen layanan Cloud Run akses ke Artifact Registry di project produksi tempat image Docker Anda disimpan:
DEV_PROJECT_NUMBER=$(gcloud projects describe $DEV_PROJECT_ID \ --format='value(projectNumber)') PROD_PROJECT_NUMBER=$(gcloud projects describe $PROD_PROJECT_ID \ --format='value(projectNumber)') gcloud projects add-iam-policy-binding $PROD_PROJECT_ID \ --member=serviceAccount:service-$DEV_PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com \ --role roles/artifactregistry.reader gcloud projects add-iam-policy-binding $PROD_PROJECT_ID \ --member=serviceAccount:service-$PROD_PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com \ --role roles/artifactregistry.readerBuat akun layanan bernama
CloudDemo-runner:gcloud iam service-accounts create clouddemo-runner \ --display-name="CloudDemo Runner" \ --project=$DEV_PROJECT_ID gcloud iam service-accounts create clouddemo-runner \ --display-name="CloudDemo Runner" \ --project=$PROD_PROJECT_ID DEV_CLOUDDEMO_RUNNER=clouddemo-runner@$DEV_PROJECT_ID.iam.gserviceaccount.com PROD_CLOUDDEMO_RUNNER=clouddemo-runner@$PROD_PROJECT_ID.iam.gserviceaccount.comBuat akun layanan bernama
azure-pipelines-deployer:gcloud iam service-accounts create azure-pipelines-deployer \ --display-name="Azure Pipelines Deployer" \ --project=$PROD_PROJECT_ID AZURE_PIPELINES_DEPLOYER=azure-pipelines-deployer@$PROD_PROJECT_ID.iam.gserviceaccount.comTetapkan peran IAM yang diperlukan untuk men-deploy layanan atau revisi Cloud Run baru di project pengembangan:
gcloud projects add-iam-policy-binding $DEV_PROJECT_ID \ --member serviceAccount:$AZURE_PIPELINES_DEPLOYER \ --role roles/run.admin gcloud iam service-accounts add-iam-policy-binding \ $DEV_CLOUDDEMO_RUNNER \ --member=serviceAccount:$AZURE_PIPELINES_DEPLOYER \ --role="roles/iam.serviceAccountUser" \ --project=$DEV_PROJECT_IDTetapkan kumpulan peran yang sama untuk project produksi:
gcloud projects add-iam-policy-binding $PROD_PROJECT_ID \ --member serviceAccount:$AZURE_PIPELINES_DEPLOYER \ --role roles/run.admin gcloud iam service-accounts add-iam-policy-binding \ $PROD_CLOUDDEMO_RUNNER \ --member=serviceAccount:$AZURE_PIPELINES_DEPLOYER \ --role="roles/iam.serviceAccountUser" \ --project=$PROD_PROJECT_IDBuat kunci akun layanan:
gcloud iam service-accounts keys create azure-pipelines-deployer.json \ --iam-account=$AZURE_PIPELINES_DEPLOYER \ --project=$PROD_PROJECT_ID cat azure-pipelines-deployer.json | base64 -w 0Anda menggunakan output perintah ini saat mengonfigurasi pipeline rilis.
- Men-deploy ke lingkungan pengembangan.
- Meminta persetujuan manual sebelum memulai deployment ke lingkungan produksi.
- Men-deploy ke lingkungan produksi.
- Di menu Azure DevOps, pilih Pipelines > Releases.
- Klik New pipeline.
- Dari daftar template, pilih Empty job.
- Saat Anda diminta untuk memasukkan nama panggung, masukkan
Development. - Di bagian atas layar, beri nama pipeline
CloudDemo. - Dalam diagram pipeline, di samping Artifacts, klik Add.
- Pilih Build, lalu tambahkan setelan berikut:
- Jenis sumber: Build
- Sumber (pipeline build): Pilih definisi build (hanya ada satu opsi)
- Versi default: Terbaru
- Alias Sumber:
build
- Klik Tambahkan.
- Di kotak Artefak, klik Pemicu deployment berkelanjutan (ikon petir) untuk menambahkan pemicu deployment.
- Di bagian Pemicu deployment berkelanjutan, setel tombol ke Diaktifkan.
- Klik Simpan.
Masukkan komentar jika Anda mau, lalu konfirmasi dengan mengklik Oke.
Pipeline akan ditampilkan seperti berikut.
- Di menu, beralihlah ke tab Tugas.
- Klik Agent job.
- Tetapkan Agent specification ke ubuntu-22.04.
- Di samping Tugas agen, klik Tambahkan tugas ke tugas agen untuk menambahkan langkah ke fase.
- Pilih tugas Command line, lalu klik Tambahkan.
Klik tugas yang baru ditambahkan dan konfigurasi setelan berikut:
- Nama tampilan:
Deploy image to development project Skrip:
gcloud auth activate-service-account \ --quiet \ --key-file <(echo $(ServiceAccountKey) | base64 -d) && \ gcloud run deploy clouddemo \ --quiet \ --service-account=clouddemo-runner@$(CloudRun.ProjectId.Development).iam.gserviceaccount.com \ --allow-unauthenticated \ --image=$(CloudRun.Region)-docker.pkg.dev/$(ContainerRegistry.ProjectId)/docker/clouddemo:$BUILD_BUILDID \ --platform=managed \ --region=$(CloudRun.Region) \ --project=$(CloudRun.ProjectId.Development)Perintah ini mendapatkan kunci akun layanan dari variabel lingkungan, lalu menggunakan gcloud CLI untuk men-deploy aplikasi ke Cloud Run. gcloud CLI tersedia secara default di agen Azure Pipelines.
- Nama tampilan:
Beralih ke tab Variabel dan tambahkan variabel berikut.
Nama Nilai Secret ServiceAccountKeyKunci akun layanan dibuat untuk azure-pipelines-deployersebelumnya.Ya ContainerRegistry.ProjectIdProject ID project produksi Anda. CloudRun.RegionRegion yang Anda pilih sebelumnya untuk men-deploy resource Artifact Registry. CloudRun.ProjectId.DevelopmentProject ID project pengembangan Anda. CloudRun.ProjectId.ProductionProject ID project produksi Anda. Klik Simpan.
Masukkan komentar jika Anda mau, lalu konfirmasi dengan mengklik Oke.
- Di menu, beralihlah ke tab Pipeline.
- Di kotak Tahapan, pilih Tambahkan > Tahapan baru.
- Dari daftar template, pilih Empty job.
- Saat Anda diminta untuk memasukkan nama panggung, masukkan
Production. - Klik ikon petir pada tahap yang baru dibuat.
Konfigurasi setelan berikut:
- Pilih pemicu: Setelah tahap
- Tahap: Pengembangan
- Persetujuan sebelum deployment: (diaktifkan)
- Pemberi persetujuan: Pilih nama pengguna Anda.
Pipeline menampilkan tampilan yang mirip dengan berikut ini.
Beralihlah ke tab Tugas.
Arahkan kursor ke tab Tasks, lalu pilih Tasks > Production.
Klik Agent job.
Tetapkan Agent specification ke ubuntu-22.04.
Klik Tambahkan tugas ke tugas agen untuk menambahkan langkah ke fase.
Pilih tugas Command line, lalu klik Add.
Klik tugas yang baru ditambahkan dan konfigurasi setelan berikut:
- Nama tampilan:
Deploy image to production project Skrip:
gcloud auth activate-service-account \ --quiet \ --key-file <(echo $(ServiceAccountKey) | base64 -d) && \ gcloud run deploy clouddemo \ --quiet \ --service-account=clouddemo-runner@$(CloudRun.ProjectId.Production).iam.gserviceaccount.com \ --allow-unauthenticated \ --image=$(CloudRun.Region)-docker.pkg.dev/$(ContainerRegistry.ProjectId)/docker/clouddemo:$BUILD_BUILDID \ --platform=managed \ --region=$(CloudRun.Region) \ --project=$(CloudRun.ProjectId.Production)
- Nama tampilan:
Klik Simpan.
Masukkan komentar jika Anda mau, lalu konfirmasi dengan mengklik Oke.
- Di komputer lokal Anda, buka file
applications\clouddemo\netcore\CloudDemo.MvcCore\Views\Home\Index.cshtmldari repositori Git yang Anda clone sebelumnya. - Ubah nilai
ViewBag.TitledariHome PagemenjadiHome Page Cloud Run. Lakukan commit pada perubahan, lalu kirimkan ke Azure Pipelines.
Visual Studio
- Buka Team Explorer, lalu klik ikon Home.
- Klik Perubahan.
- Masukkan pesan commit seperti
Change site title. - Klik Commit All and Push.
Command line
Siapkan semua file yang diubah:
git add -ALakukan perubahan pada repositori lokal:
git commit -m "Change site title"Kirim perubahan ke Azure Pipelines:
git push
Di menu Azure DevOps, pilih Pipelines. Build dipicu.
Setelah build selesai, pilih Pipelines > Releases. Proses rilis dimulai.
Klik Release-1 untuk membuka halaman detail, lalu tunggu hingga status tahap Development berubah menjadi Succeeded.
Di konsol Google Cloud , alihkan ke project pengembangan.
Di menu, pilih Compute > Cloud Run.
Layanan clouddemo berhasil di-deploy.
Klik clouddemo untuk melihat detail selengkapnya.
URL ditampilkan yang menunjukkan bahwa Cloud Run telah menyediakan layanan.
Buka URL di tab browser baru untuk memverifikasi bahwa aplikasi CloudDemo di-deploy dan menggunakan judul kustom.
Di Azure Pipelines, klik Setujui (di samping tahap Produksi) untuk mempromosikan deployment ke lingkungan produksi.
(Opsional) Masukkan komentar.
Konfirmasi dengan mengklik Setujui, dan tunggu hingga status lingkungan Produksi berubah menjadi Berhasil.
Di konsol Google Cloud , alihkan ke project produksi.
Di menu, pilih Compute > Cloud Run.
Layanan clouddemo di-deploy ke project produksi.
Klik clouddemo untuk melihat detail selengkapnya.
URL yang ditampilkan menunjukkan bahwa Cloud Run menyediakan layanan.
Buka URL di tab browser baru untuk memverifikasi bahwa aplikasi CloudDemo di-deploy ke produksi dan menggunakan judul kustom.
Membuat koneksi layanan untuk Artifact Registry
Di Azure Pipelines, buat koneksi layanan baru untuk Artifact Registry:
Membangun secara berkelanjutan
Sekarang Anda dapat menggunakan Azure Pipelines untuk menyiapkan continuous integration. Untuk setiap commit yang dikirim ke repositori Git, Azure Pipelines akan membangun kode dan mengemas artefak build ke dalam container Docker. Kemudian, container akan dipublikasikan ke Artifact Registry.
Repositori sudah berisi Dockerfile berikut:
Sekarang Anda akan membuat pipeline baru yang menggunakan sintaksis YAML:
Men-deploy secara berkelanjutan
Dengan Azure Pipelines yang otomatis membangun kode dan memublikasikan image Docker untuk setiap commit, Anda kini dapat mengalihkan perhatian ke deployment.
Tidak seperti beberapa sistem integrasi berkelanjutan lainnya, Azure Pipelines membedakan antara membangun dan men-deploy, serta menyediakan serangkaian alat khusus berlabel Release Management untuk semua tugas terkait deployment.
Pengelolaan Rilis Azure Pipelines dibangun berdasarkan konsep berikut:
Anda menyiapkan pipeline rilis agar dipicu setiap kali build baru selesai. Pipeline terdiri dari dua tahap: pengembangan dan produksi. Di setiap tahap, pipeline rilis menggunakan image Docker yang dihasilkan oleh pipeline build, lalu pipeline men-deploy-nya ke Cloud Run.
Pipeline build yang Anda konfigurasi sebelumnya memberi tag pada setiap image Docker dengan
ID build sebelum memublikasikannya ke Artifact Registry. Oleh karena itu, di
pipeline rilis, Anda menggunakan variabel $BUILD_BUILDID untuk mengidentifikasi image
Docker yang tepat untuk di-deploy.
Mengonfigurasi Cloud Run
Cloud Run adalah lingkungan serverless yang terkelola sepenuhnya, sehingga Anda tidak perlu menyediakan infrastruktur apa pun. Untuk membantu menjaga keamanan deployment Cloud Run Anda, Anda perlu menyiapkan IAM.
Men-deploy dan menjalankan layanan Cloud Run melibatkan beberapa identitas, seperti yang ditunjukkan diagram berikut.
Setiap identitas ini diimplementasikan sebagai akun layanan dan digunakan untuk tujuan tertentu, seperti yang dijelaskan dalam tabel berikut.
| Service account | Digunakan oleh | Tujuan | Peran yang diperlukan |
|---|---|---|---|
| Azure Pipelines Publisher | Membangun pipeline | Memublikasikan image Docker ke Artifact Registry | roles/artifactregistry.writer (khusus project produksi) |
| Azure Pipelines Deployer | Pipeline rilis | Mulai deployment Cloud Run | roles/run.admin |
| Luncurkan layanan CloudDemo | roles/iam.serviceAccountUser |
||
| Agen layanan Cloud Run | Cloud Run | Mengambil image Docker dari Artifact Registry | roles/artifactregistry.reader (khusus project produksi) |
| Runner CloudDemo (akun layanan runtime) | Layanan CloudDemo | Mengakses resource di Google Cloud | Tidak ada |
Anda telah membuat dan mengonfigurasi akun layanan Azure Pipelines Publisher. Di bagian berikut, Anda akan membuat dan mengonfigurasi akun layanan yang tersisa.
Mengonfigurasi akun layanan Cloud Run
Mengonfigurasi akun peluncur CloudDemo
Sekarang Anda dapat mengonfigurasi akun runner CloudDemo, yang merupakan akun layanan runtime kustom untuk layanan CloudDemo:
Mengonfigurasi akun Azure Pipelines Deployer
Terakhir, buat dan konfigurasi akun Azure Pipelines Deployer, yang digunakan pipeline rilis Azure untuk men-deploy ke Cloud Run.
Mengonfigurasi pipeline rilis
Sekarang Anda dapat kembali ke Azure Pipelines untuk mengotomatiskan deployment, yang mencakup langkah-langkah berikut:
Membuat definisi rilis
Pertama, buat definisi rilis:
Men-deploy ke project pengembangan
Setelah definisi rilis dibuat, Anda kini dapat mengonfigurasi deployment Cloud Run ke project pengembangan.
Men-deploy ke cluster produksi
Terakhir, Anda mengonfigurasi deployment ke project produksi:
Menjalankan pipeline
Setelah mengonfigurasi seluruh pipeline, Anda dapat mengujinya dengan melakukan perubahan kode sumber:
Pembersihan
Agar tidak menimbulkan biaya lebih lanjut setelah Anda menyelesaikan tutorial ini, hapus entitas yang Anda buat.
Menghapus project Azure Pipelines
Untuk menghapus project Azure Pipelines, lihat dokumentasi Azure DevOps Services. Menghapus project Azure Pipelines akan menyebabkan semua perubahan kode sumber hilang.
Hapus Google Cloud project pengembangan dan produksi
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Langkah berikutnya
- Konfigurasi domain kustom untuk layanan Cloud Run Anda.
- Pelajari cara menggunakan Azure Pipelines untuk men-deploy aplikasi yang sama ke Google Kubernetes Engine.
- Baca selengkapnya tentang men-deploy aplikasi .NET di Google Cloud.
- Pelajari arsitektur referensi, diagram, dan praktik terbaik tentang Google Cloud. Lihat Cloud Architecture Center kami.