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
Artikel ini menjelaskan cara membuat dan menargetkan lingkungan Azure Pipelines. Lingkungan adalah sekelompok sumber daya yang dapat Anda targetkan dengan penyebaran dari pipeline.
Lingkungan mewakili target logis di mana pipeline Anda menyebarkan perangkat lunak. Nama lingkungan umum termasuk Dev, Test, QA, Staging, dan Production.
Catatan
Lingkungan Azure DevOps tidak tersedia di alur Klasik. Untuk alur Klasik, grup penyebaran menyediakan fungsionalitas serupa.
Lingkungan memberikan manfaat berikut:
Riwayat Penerapan. Nama pipeline dan rincian pelaksanaan dicatat untuk penyebaran ke lingkungan dan sumber dayanya. Dalam konteks beberapa alur yang menargetkan lingkungan atau sumber daya yang sama, Anda dapat menggunakan riwayat penyebaran lingkungan untuk mengidentifikasi sumber perubahan.
Keterlacakan komit dan item pengerjaan. Anda dapat melihat pekerjaan dalam jalur pipa yang menargetkan lingkungan. Anda juga dapat melihat komit dan tugas yang baru disebarkan ke lingkungan. Keterlacakan juga memungkinkan Anda melacak apakah penerapan perubahan kode atau item kerja fitur/perbaikan bug mencapai lingkungan.
Kesehatan sumber daya diagnostik. Anda dapat memvalidasi apakah aplikasi berfungsi pada status yang diinginkan.
Keamanan. Anda dapat mengamankan lingkungan dengan menentukan pengguna dan alur mana yang diizinkan untuk menargetkan lingkungan.
Lingkungan adalah pengelompokan sumber daya di mana sumber daya itu sendiri mewakili target penyebaran aktual. Lingkungan Azure Pipelines saat ini mendukung jenis sumber daya Kubernetes dan komputer virtual.
Jika alur YAML mengacu pada lingkungan yang tidak ada:
Ketika pengguna yang melakukan operasi diketahui dan izin dapat ditetapkan, Azure Pipelines secara otomatis membuat lingkungan.
Ketika Azure Pipelines tidak memiliki informasi tentang pengguna yang melakukan operasi, misalnya dalam pembaruan YAML dari editor kode eksternal, alur gagal.
Prasyarat
| Kategori | 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 opsi gratis. - Pengetahuan dasar tentang YAML dan Azure Pipelines. Untuk informasi selengkapnya, lihat Buat pipa pertama Anda. - Izin: Untuk menambahkan lingkungan, peran Kreator untuk lingkungan dalam project Anda. Secara default, anggota grup Administrator Build, Administrator Rilis, dan Administrator Proyek juga dapat membuat lingkungan. |
| Azure | Sebuah langganan Azure. |
Membuat lingkungan
Untuk membuat lingkungan pertama Anda:
Masuk ke organisasi Azure DevOps Anda di
https://dev.azure.com/{yourorganization}dan buka proyek Anda.Pilih
Alur Lingkungan Buat lingkungan .
Masukkan informasi untuk lingkungan, lalu pilih Buat. Anda dapat menambahkan sumber daya ke lingkungan yang ada nanti.
Kiat
Buat lingkungan kosong dan referensikan dari pekerjaan penyebaran untuk merekam riwayat penyebaran terhadap lingkungan.
Untuk membuat dan mengelola lingkungan secara terprogram, gunakan REST API Lingkungan Azure DevOps.
Anda dapat menggunakan Azure Pipelines untuk menyebarkan ke lingkungan. Untuk informasi selengkapnya, lihat Membangun dan menyebarkan ke Azure Kubernetes Service dengan Azure Pipelines.
Menargetkan lingkungan untuk sebuah pekerjaan penyebaran
Pekerjaan penyebaran berisi langkah-langkah yang berjalan secara berurutan. Anda dapat menggunakan pekerjaan penyebaran untuk menargetkan seluruh grup lingkungan sumber daya, seperti yang ditunjukkan dalam contoh cuplikan YAML berikut. Alur berjalan pada myVM komputer karena nama sumber daya tersebut ditentukan.
- stage: deploy
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-latest'
# creates an environment if it doesn't exist
environment:
name: 'smarthotel-dev'
resourceName: myVM
resourceType: virtualMachine
strategy:
runOnce:
deploy:
steps:
- script: echo Hello world
Menargetkan sumber daya lingkungan tertentu dari tugas penyebaran
Anda dapat mencakup target penyebaran ke sumber daya tertentu dalam lingkungan, sehingga Anda dapat merekam riwayat penyebaran pada sumber daya tertentu. Langkah-langkah pekerjaan penyebaran secara otomatis mewarisi detail koneksi layanan dari sumber daya yang menjadi sasaran pekerjaan penyebaran.
Dalam contoh berikut, nilai untuk kubernetesServiceConnection secara otomatis diturunkan ke tugas dari input environment.resource.
environment:
name: 'smarthotel-dev.bookings'
strategy:
runOnce:
deploy:
steps:
- task: KubernetesManifest@1
displayName: Deploy to Kubernetes cluster
inputs:
action: deploy
namespace: $(k8sNamespace)
manifests: $(System.ArtifactsDirectory)/manifests/*
imagePullSecrets: $(imagePullSecret)
containers: $(containerRegistry)/$(imageRepository):$(tag)
Catatan
Jika Anda menggunakan kluster AKS privat, pastikan Anda terhubung ke jaringan virtual kluster karena titik akhir server API tidak diekspos melalui alamat IP publik.
Azure Pipelines merekomendasikan untuk menyiapkan agen yang dihost sendiri dalam VNET yang memiliki akses ke jaringan virtual kluster. Lihat Opsi untuk menyambungkan ke kluster privat untuk detailnya.
Menggunakan pemeriksaan persetujuan manual
Untuk mengontrol penyebaran ke lingkungan produksi, Azure Pipelines mendukung pemeriksaan persetujuan manual. Pemeriksaan ini memungkinkan pemilik sumber daya mengontrol kapan tahap dalam alur menggunakan sumber daya. Pemilik sumber daya dapat menentukan persetujuan dan pemeriksaan yang harus dipenuhi sebelum tahap mengkonsumsi sumber daya tersebut dapat dimulai.
Peran Pembuat, Administrator, dan Pengguna lingkungan, tetapi bukan peran Pembaca, dapat mengelola persetujuan dan pemeriksaan. Sebagai pemilik lingkungan, Anda dapat mengontrol secara manual kapan tahap harus berjalan dengan menggunakan pemeriksaan persetujuan. Untuk informasi selengkapnya, lihat Menentukan persetujuan dan pemeriksaan.
Lihat lingkungan dalam rincian pelaksanaan
Di bawah tab Lingkungan dari detail jalur pipa, Anda dapat melihat semua lingkungan yang ditargetkan oleh tugas penyebaran jalur pipa.
Catatan
Jika Anda menggunakan kluster privat Azure Kubernetes Service (AKS), tab Lingkungan tidak tersedia.
Lihat riwayat penyebaran
Anda dapat memilih tab Penyebaran di bagian Lingkungan Azure Pipelines untuk melihat riwayat penyebaran.
Lihat pekerjaan dari semua alur yang memfokuskan pada lingkungan yang spesifik. Misalnya, dua layanan mikro yang masing-masing memiliki alurnya sendiri dapat disebarkan ke lingkungan yang sama. Riwayat penyebaran membantu mengidentifikasi semua alur yang memengaruhi lingkungan, dan juga membantu memvisualisasikan urutan penyebaran oleh setiap alur.
Untuk menelusuri detail dalam pekerjaan, pilih tab Perubahan dan Item Pekerjaan di halaman penyebaran. Tab memperlihatkan daftar commit dan item kerja yang telah diterapkan ke lingkungan. Setiap item daftar mewakili item baru dalam penyebaran tersebut.
Pada tab Perubahan, daftar pertama menyertakan semua komit sampai titik tersebut, dan daftar berikutnya hanya menyertakan perubahan untuk pekerjaan tersebut. Jika beberapa komit terkait dengan pekerjaan yang sama, ada beberapa hasil pada tab Perubahan.
Jika beberapa item kerja terkait dengan pekerjaan yang sama, ada beberapa hasil pada tab Item kerja .
Keamanan
Anda dapat mengamankan lingkungan Anda dengan mengatur izin pengguna dan izin alur.
Izin pengguna
Anda dapat mengontrol siapa yang dapat membuat, melihat, menggunakan, dan mengelola lingkungan dengan izin pengguna. Ada empat peran: Pembuat dengan cakupan semua lingkungan, Pembaca, Pengguna, dan Administrator.
Untuk menambahkan pengguna dengan menggunakan panel Izin pengguna lingkungan, buka Lingkungan tertentu yang ingin Anda otorisasi, pilih ikon Tindakan lainnya, dan pilih Keamanan.
Di panel Izin pengguna halaman Keamanan, pilih Tambahkan lalu pilih Pengguna atau grup dan Peran yang sesuai.
Di panel Izin pengguna, Anda juga dapat mengatur izin yang diwariskan, dan mengambil alih peran untuk lingkungan Anda.
| Peran | Deskripsi |
|---|---|
| Pembuat | Peran global, dapat diakses melalui opsi keamanan hub lingkungan. Anggota peran ini dapat membuat lingkungan kerja dalam proyek. Kontributor ditambahkan sebagai anggota secara default. Diperlukan untuk memicu alur YAML saat lingkungan belum tersedia. |
| Pembaca | Anggota peran ini dapat melihat lingkungan. |
| Pengguna | Anggota peran ini dapat menggunakan lingkungan saat membuat atau mengedit alur YAML. |
| Administrator | Pengguna peran ini dapat mengelola izin, membuat, melihat, mengelola, dan menggunakan lingkungan. Untuk lingkungan tertentu, pembuatnya ditambahkan sebagai Administrator secara default. Para administrator juga dapat membuka akses lingkungan untuk semua pipeline. |
Penting
Saat Anda membuat lingkungan, hanya pembuat yang memiliki peran administrator.
| Peran | Deskripsi |
|---|---|
| Pembuat | Peran global, dapat diakses melalui opsi keamanan hub lingkungan. Anggota peran ini dapat membuat lingkungan kerja dalam proyek. Kontributor ditambahkan sebagai anggota secara default. Diperlukan untuk memicu alur YAML saat lingkungan belum tersedia. |
| Pembaca | Anggota peran ini dapat melihat lingkungan. |
| Pengguna | Anggota peran ini dapat menggunakan lingkungan saat membuat atau mengedit alur YAML. |
| Administrator | Selain menggunakan lingkungan, anggota peran ini dapat mengelola keanggotaan semua peran lain dalam lingkungan. Pembuat ditambahkan sebagai anggota secara default. |
Izin Jalur Pemrosesan
Gunakan panel Izin Pipeline pada halaman Keamanan untuk mengotorisasi semua atau pipeline yang dipilih untuk penyebaran ke lingkungan.
Untuk menghapus akses terbuka pada lingkungan atau sumber daya, pilih Batasi izin di Izin Pipeline.
Saat izin dibatasi, Anda dapat mengizinkan alur tertentu untuk disebarkan ke lingkungan atau ke sumber daya tertentu. Pilih + dan pilih dari daftar alur yang akan diizinkan.
FAQ
Mengapa saya mendapatkan pesan kesalahan saat mencoba membuat lingkungan?
Jika Anda melihat pesan Akses ditolak: {User} memerlukan Izin Buat untuk melakukan tindakan, buka Pengaturan>Organisasi Pengguna untuk memeriksa apakah Anda memiliki peran Pemangku Kepentingan. Peran Pemangku Kepentingan tidak dapat membuat lingkungan karena pemangku kepentingan tidak memiliki akses ke repositori.
Ubah tingkat akses Anda, lalu periksa untuk melihat apakah Anda dapat membuat lingkungan. Untuk informasi selengkapnya, lihat Tanya Jawab Umum tentang manajemen pengguna dan izin.
Mengapa saya mendapatkan pesan kesalahan bahwa lingkungan tidak dapat ditemukan?
Jika Anda melihat pesan Pekerjaan XXXX: Lingkungan XXXX tidak dapat ditemukan. Lingkungan tidak ada atau belum diotorisasi untuk digunakan., ada beberapa kemungkinan alasan kegagalan.
Parameter runtime tidak berfungsi saat membuat lingkungan karena parameter hanya diperluas saat run-time. Anda dapat menggunakan variabel untuk membuat lingkungan atau menggunakan templateContext untuk meneruskan properti ke templat.
Saat Anda merujuk ke lingkungan yang tidak ada dalam file pipeline YAML, Azure Pipelines otomatis membuat lingkungan tersebut dalam kasus berikut:
- Anda menggunakan panduan pembuatan pipeline YAML di antarmuka web Azure Pipelines dan merujuk ke lingkungan yang belum dibuat.
- Anda memperbarui file YAML menggunakan editor web Azure Pipelines dan menyimpan pipeline setelah menambahkan referensi ke lingkungan.
Dalam kasus berikut, Azure Pipelines tidak memiliki informasi tentang pengguna yang membuat lingkungan, sehingga alur gagal:
- Anda memperbarui file YAML menggunakan editor kode eksternal lainnya.
- Anda menambahkan referensi ke lingkungan yang tidak ada, lalu menyebabkan pipeline integrasi manual atau berkelanjutan terpicu.
Sebelumnya, Azure Pipelines menangani kasus ini dengan menambahkan semua kontributor proyek ke peran administrator untuk lingkungan. Setiap anggota proyek kemudian dapat mengubah izin ini dan mencegah orang lain mengakses lingkungan. Untuk mencegah hasil ini, Azure Pipelines sekarang gagal dalam tugas ini.