Bagikan melalui


HelmDeploy@0 - Mengemas dan menyebarkan tugas bagan Helm v0

Gunakan tugas ini untuk menyebarkan, mengonfigurasi, atau memperbarui kluster Kubernetes di Azure Container Service dengan menjalankan perintah helm.

Gunakan tugas ini untuk menyebarkan, mengonfigurasi, atau memperbarui kluster Kubernetes di Azure Container Service dengan menjalankan perintah helm.

Sintaks

# Package and deploy Helm charts v0
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@0
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout && command != package && command != save. Connection Type. Default: Azure Resource Manager.
    #azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Use cluster admin credentials. Default: false.
    #kubernetesServiceConnection: # string. Alias: kubernetesServiceEndpoint. Required when connectionType = Kubernetes Service Connection && command != logout && command != package && command != save. Kubernetes Service Connection. 
    #namespace: # string. Optional. Use when command != logout && command != package && command != save. Namespace. 
  # Azure Container Registry
    #azureSubscriptionForACR: # string. Alias: azureSubscriptionEndpointForACR. Required when command == save. Azure subscription for Container Registry. 
    #azureResourceGroupForACR: # string. Required when command == save. Resource group. 
    #azureContainerRegistry: # string. Required when command == save. Azure Container Registry. 
  # Commands
    command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | 'save' | 'upgrade' | 'uninstall'. Required. Command. Default: ls.
    #chartType: 'Name' # 'Name' | 'FilePath'. Required when command == install || command == upgrade. Chart Type. Default: Name.
    chartName: # string. Required when chartType == Name. Chart Name. 
    #chartPath: # string. Required when chartType == FilePath || command == package. Chart Path. 
    #chartVersion: # string. Alias: version. Optional. Use when command == package || command == install || command == upgrade. Version. 
    #releaseName: # string. Optional. Use when command == install || command == upgrade. Release Name. 
    #overrideValues: # string. Optional. Use when command == install || command == upgrade. Set Values. 
    #valueFile: # string. Optional. Use when command == install || command == upgrade. Value File. 
    #destination: '$(Build.ArtifactStagingDirectory)' # string. Optional. Use when command == package. Destination. Default: $(Build.ArtifactStagingDirectory).
    #canaryimage: false # boolean. Optional. Use when command == init. Use canary image version. Default: false.
    #upgradetiller: true # boolean. Optional. Use when command == init. Upgrade Tiller. Default: true.
    #updatedependency: false # boolean. Optional. Use when command == install || command == package. Update Dependency. Default: false.
    #save: true # boolean. Optional. Use when command == package. Save. Default: true.
    #install: true # boolean. Optional. Use when command == upgrade. Install if release not present. Default: true.
    #recreate: false # boolean. Optional. Use when command == upgrade. Recreate Pods. Default: false.
    #resetValues: false # boolean. Optional. Use when command == upgrade. Reset Values. Default: false.
    #force: false # boolean. Optional. Use when command == upgrade. Force. Default: false.
    #waitForExecution: true # boolean. Optional. Use when command == init || command == install || command == upgrade. Wait. Default: true.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
    #chartNameForACR: # string. Required when command == save. Chart Name For Azure Container Registry. 
    #chartPathForACR: # string. Required when command == save. Chart Path for Azure Container Registry. 
  # TLS
    #enableTls: false # boolean. Optional. Use when command != login && command != logout && command != package && command != save. Enable TLS. Default: false.
    #caCert: # string. Required when enableTls == true && command != login && command != logout && command != package && command != save. CA certificate. 
    #certificate: # string. Required when enableTls == true && command != login && command != logout && command != package && command != save. Certificate. 
    #privatekey: # string. Required when enableTls == true && command != login && command != logout && command != package && command != save. Key. 
  # Advanced
    #tillernamespace: # string. Optional. Use when command != login && command != logout && command != package && command != save. Tiller namespace. 
    #failOnStderr: false # boolean. Optional. Use when command != login && command != logout && command != package && command != save. Fail on Standard Error. Default: false.
    #publishPipelineMetadata: true # boolean. Optional. Use when command != login && command != logout && command != package && command != save. Publish pipeline metadata. Default: true.
# Package and deploy Helm charts v0
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@0
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout && command != package && command != save. Connection Type. Default: Azure Resource Manager.
    #azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout && command != package && command != save. Use cluster admin credentials. Default: false.
    #kubernetesServiceConnection: # string. Alias: kubernetesServiceEndpoint. Required when connectionType = Kubernetes Service Connection && command != logout && command != package && command != save. Kubernetes Service Connection. 
    #namespace: # string. Optional. Use when command != logout && command != package && command != save. Namespace. 
  # Azure Container Registry
    #azureSubscriptionForACR: # string. Alias: azureSubscriptionEndpointForACR. Required when command == save. Azure subscription for Container Registry. 
    #azureResourceGroupForACR: # string. Required when command == save. Resource group. 
    #azureContainerRegistry: # string. Required when command == save. Azure Container Registry. 
  # Commands
    command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | 'save' | 'upgrade'. Required. Command. Default: ls.
    #chartType: 'Name' # 'Name' | 'FilePath'. Required when command == install || command == upgrade. Chart Type. Default: Name.
    chartName: # string. Required when chartType == Name. Chart Name. 
    #chartPath: # string. Required when chartType == FilePath || command == package. Chart Path. 
    #chartVersion: # string. Alias: version. Optional. Use when command == package || command == install || command == upgrade. Version. 
    #releaseName: # string. Optional. Use when command == install || command == upgrade. Release Name. 
    #overrideValues: # string. Optional. Use when command == install || command == upgrade. Set Values. 
    #valueFile: # string. Optional. Use when command == install || command == upgrade. Value File. 
    #destination: '$(Build.ArtifactStagingDirectory)' # string. Optional. Use when command == package. Destination. Default: $(Build.ArtifactStagingDirectory).
    #canaryimage: false # boolean. Optional. Use when command == init. Use canary image version. Default: false.
    #upgradetiller: true # boolean. Optional. Use when command == init. Upgrade Tiller. Default: true.
    #updatedependency: false # boolean. Optional. Use when command == install || command == package. Update Dependency. Default: false.
    #save: true # boolean. Optional. Use when command == package. Save. Default: true.
    #install: true # boolean. Optional. Use when command == upgrade. Install if release not present. Default: true.
    #recreate: false # boolean. Optional. Use when command == upgrade. Recreate Pods. Default: false.
    #resetValues: false # boolean. Optional. Use when command == upgrade. Reset Values. Default: false.
    #force: false # boolean. Optional. Use when command == upgrade. Force. Default: false.
    #waitForExecution: true # boolean. Optional. Use when command == init || command == install || command == upgrade. Wait. Default: true.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
    #chartNameForACR: # string. Required when command == save. Chart Name For Azure Container Registry. 
    #chartPathForACR: # string. Required when command == save. Chart Path for Azure Container Registry. 
  # TLS
    #enableTls: false # boolean. Optional. Use when command != login && command != logout && command != package && command != save. Enable TLS. Default: false.
    #caCert: # string. Required when enableTls == true && command != login && command != logout && command != package && command != save. CA certificate. 
    #certificate: # string. Required when enableTls == true && command != login && command != logout && command != package && command != save. Certificate. 
    #privatekey: # string. Required when enableTls == true && command != login && command != logout && command != package && command != save. Key. 
  # Advanced
    #tillernamespace: # string. Optional. Use when command != login && command != logout && command != package && command != save. Tiller namespace. 
    #failOnStderr: false # boolean. Optional. Use when command != login && command != logout && command != package && command != save. Fail on Standard Error. Default: false.
    #publishPipelineMetadata: true # boolean. Optional. Use when command != login && command != logout && command != package && command != save. Publish pipeline metadata. Default: true.
# Package and deploy Helm charts v0
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@0
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout && command != package. Connection Type. Default: Azure Resource Manager.
    #azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when connectionType = Azure Resource Manager && command != logout && command != package. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout && command != package. Use cluster admin credentials. Default: false.
    #kubernetesServiceConnection: # string. Alias: kubernetesServiceEndpoint. Required when connectionType = Kubernetes Service Connection && command != logout && command != package. Kubernetes Service Connection. 
    #namespace: # string. Optional. Use when command != logout && command != package. Namespace. 
  # Commands
    command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | 'upgrade'. Required. Command. Default: ls.
    #chartType: 'Name' # 'Name' | 'FilePath'. Required when command == install || command == upgrade. Chart Type. Default: Name.
    chartName: # string. Required when chartType == Name. Chart Name. 
    #chartPath: # string. Required when chartType == FilePath || command == package. Chart Path. 
    #chartVersion: # string. Alias: version. Optional. Use when command == package. Version. 
    #releaseName: # string. Optional. Use when command == install || command == upgrade. Release Name. 
    #overrideValues: # string. Optional. Use when command == install || command == upgrade. Set Values. 
    #valueFile: # string. Optional. Use when command == install || command == upgrade. Value File. 
    #destination: '$(Build.ArtifactStagingDirectory)' # string. Optional. Use when command == package. Destination. Default: $(Build.ArtifactStagingDirectory).
    #canaryimage: false # boolean. Optional. Use when command == init. Use canary image version. Default: false.
    #upgradetiller: true # boolean. Optional. Use when command == init. Upgrade Tiller. Default: true.
    #updatedependency: false # boolean. Optional. Use when command == install || command == package. Update Dependency. Default: false.
    #save: true # boolean. Optional. Use when command == package. Save. Default: true.
    #install: true # boolean. Optional. Use when command == upgrade. Install if release not present. Default: true.
    #recreate: false # boolean. Optional. Use when command == upgrade. Recreate Pods. Default: false.
    #resetValues: false # boolean. Optional. Use when command == upgrade. Reset Values. Default: false.
    #force: false # boolean. Optional. Use when command == upgrade. Force. Default: false.
    #waitForExecution: true # boolean. Optional. Use when command == init || command == install || command == upgrade. Wait. Default: true.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # TLS
    #enableTls: false # boolean. Optional. Use when command != login && command != logout && command != package. Enable TLS. Default: false.
    #caCert: # string. Required when enableTls == true && command != login && command != logout && command != package. CA certificate. 
    #certificate: # string. Required when enableTls == true && command != login && command != logout && command != package. Certificate. 
    #privatekey: # string. Required when enableTls == true && command != login && command != logout && command != package. Key. 
  # Advanced
    #tillernamespace: # string. Optional. Use when command != login && command != logout && command != package. Tiller namespace. 
    #failOnStderr: true # boolean. Optional. Use when command != login && command != logout && command != package. Fail on Standard Error. Default: true.
# Package and deploy Helm charts v0
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@0
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout && command != package. Connection Type. Default: Azure Resource Manager.
    #azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when connectionType = Azure Resource Manager && command != logout && command != package. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Kubernetes cluster. 
    #kubernetesServiceConnection: # string. Alias: kubernetesServiceEndpoint. Required when connectionType = Kubernetes Service Connection && command != logout && command != package. Kubernetes Service Connection. 
    #namespace: # string. Optional. Use when command != logout && command != package. Namespace. 
  # Commands
    command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | 'upgrade'. Required. Command. Default: ls.
    #chartType: 'Name' # 'Name' | 'FilePath'. Required when command == install || command == upgrade. Chart Type. Default: Name.
    chartName: # string. Required when chartType == Name. Chart Name. 
    #chartPath: # string. Required when chartType == FilePath || command == package. Chart Path. 
    #chartVersion: # string. Alias: version. Optional. Use when command == package. Version. 
    #releaseName: # string. Optional. Use when command == install || command == upgrade. Release Name. 
    #overrideValues: # string. Optional. Use when command == install || command == upgrade. Set Values. 
    #valueFile: # string. Optional. Use when command == install || command == upgrade. Value File. 
    #destination: '$(Build.ArtifactStagingDirectory)' # string. Optional. Use when command == package. Destination. Default: $(Build.ArtifactStagingDirectory).
    #canaryimage: false # boolean. Optional. Use when command == init. Use canary image version. Default: false.
    #upgradetiller: true # boolean. Optional. Use when command == init. Upgrade Tiller. Default: true.
    #updatedependency: false # boolean. Optional. Use when command == install || command == package. Update Dependency. Default: false.
    #save: true # boolean. Optional. Use when command == package. Save. Default: true.
    #install: true # boolean. Optional. Use when command == upgrade. Install if release not present. Default: true.
    #recreate: false # boolean. Optional. Use when command == upgrade. Recreate Pods. Default: false.
    #resetValues: false # boolean. Optional. Use when command == upgrade. Reset Values. Default: false.
    #force: false # boolean. Optional. Use when command == upgrade. Force. Default: false.
    #waitForExecution: true # boolean. Optional. Use when command == init || command == install || command == upgrade. Wait. Default: true.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # TLS
    #enableTls: false # boolean. Optional. Use when command != login && command != logout && command != package. Enable TLS. Default: false.
    #caCert: # string. Required when enableTls == true && command != login && command != logout && command != package. CA certificate. 
    #certificate: # string. Required when enableTls == true && command != login && command != logout && command != package. Certificate. 
    #privatekey: # string. Required when enableTls == true && command != login && command != logout && command != package. Key. 
  # Advanced
    #tillernamespace: # string. Optional. Use when command != login && command != logout && command != package. Tiller namespace.
# Package and deploy Helm charts v0
# Deploy, configure, update your Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@0
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout && command != package. Connection Type. Default: Azure Resource Manager.
    #azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when connectionType = Azure Resource Manager && command != logout && command != package. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Kubernetes cluster. 
    #kubernetesServiceConnection: # string. Alias: kubernetesServiceEndpoint. Required when connectionType = Kubernetes Service Connection && command != logout && command != package. Kubernetes Service Connection. 
    #namespace: # string. Optional. Use when command != logout && command != package. Namespace. 
  # Commands
    command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | 'upgrade'. Required. Command. Default: ls.
    #chartType: 'Name' # 'Name' | 'FilePath'. Required when command == install || command == upgrade. Chart Type. Default: Name.
    chartName: # string. Required when chartType == Name. Chart Name. 
    #chartPath: # string. Required when chartType == FilePath || command == package. Chart Path. 
    #chartVersion: # string. Alias: version. Optional. Use when command == package. Version. 
    #releaseName: # string. Optional. Use when command == install || command == upgrade. Release Name. 
    #overrideValues: # string. Optional. Use when command == install || command == upgrade. Set Values. 
    #valueFile: # string. Optional. Use when command == install || command == upgrade. Value File. 
    #destination: '$(Build.ArtifactStagingDirectory)' # string. Optional. Use when command == package. Destination. Default: $(Build.ArtifactStagingDirectory).
    #canaryimage: false # boolean. Optional. Use when command == init. Use canary image version. Default: false.
    #upgradetiller: true # boolean. Optional. Use when command == init. Upgrade Tiller. Default: true.
    #updatedependency: false # boolean. Optional. Use when command == install || command == package. Update Dependency. Default: false.
    #save: true # boolean. Optional. Use when command == package. Save. Default: true.
    #install: true # boolean. Optional. Use when command == upgrade. Install if release not present. Default: true.
    #recreate: false # boolean. Optional. Use when command == upgrade. Recreate Pods. Default: false.
    #resetValues: false # boolean. Optional. Use when command == upgrade. Reset Values. Default: false.
    #force: false # boolean. Optional. Use when command == upgrade. Force. Default: false.
    #waitForExecution: true # boolean. Optional. Use when command == init || command == install || command == upgrade. Wait. Default: true.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # TLS
    #enableTls: false # boolean. Optional. Use when command != login && command != logout && command != package. Enable TLS. Default: false.
    #caCert: # string. Required when enableTls == true && command != login && command != logout && command != package. CA certificate. 
    #certificate: # string. Required when enableTls == true && command != login && command != logout && command != package. Certificate. 
    #privatekey: # string. Required when enableTls == true && command != login && command != logout && command != package. Key. 
  # Advanced
    #tillernamespace: # string. Optional. Use when command != login && command != logout && command != package. Tiller namespace.

Input

connectionType - Tipe Koneksi
string. Diperlukan saat command != logout && command != package && command != save. Nilai yang diizinkan: Azure Resource Manager, Kubernetes Service Connection, dan None. Nilai default: Azure Resource Manager.

Menentukan jenis koneksi.

  • Kubernetes Service Connection - Tentukan Kubernetes Service Connection untuk terhubung ke kluster Kubernetes apa pun dengan menggunakan kubeconfig atau Akun Layanan Azure. Memungkinkan Anda menyediakan file KubeConfig, menentukan Akun Layanan, atau mengimpor instans AKS dengan opsi Langganan Azure . Mengimpor instans AKS dengan opsi Langganan Azure memerlukan akses kluster Kubernetes pada waktu konfigurasi Koneksi Layanan.
  • Azure Resource Manager- Tentukan untuk menyambungkan Azure Resource Manager ke Azure Kubernetes Service dengan menggunakan Koneksi Layanan Azure. Tidak mengakses kluster Kubernetes pada waktu konfigurasi Koneksi Layanan.
  • None - Gunakan konfigurasi Kubernetes yang telah dibuat sebelumnya yang disimpan secara lokal.

Untuk informasi selengkapnya, lihat Koneksi layanan di bagian Keterangan berikut ini.


connectionType - Tipe Koneksi
string. Diperlukan saat command != logout && command != package. Nilai yang diizinkan: Azure Resource Manager, Kubernetes Service Connection, dan None. Nilai default: Azure Resource Manager.

Menentukan jenis koneksi.

  • Kubernetes Service Connection - Tentukan Kubernetes Service Connection untuk terhubung ke kluster Kubernetes apa pun dengan menggunakan kubeconfig atau Akun Layanan Azure. Memungkinkan Anda menyediakan file KubeConfig, menentukan Akun Layanan, atau mengimpor instans AKS dengan opsi Langganan Azure . Mengimpor instans AKS dengan opsi Langganan Azure memerlukan akses kluster Kubernetes pada waktu konfigurasi Koneksi Layanan.
  • Azure Resource Manager- Tentukan untuk menyambungkan Azure Resource Manager ke Azure Kubernetes Service dengan menggunakan Koneksi Layanan Azure. Tidak mengakses kluster Kubernetes pada waktu konfigurasi Koneksi Layanan.
  • None - Gunakan konfigurasi Kubernetes yang telah dibuat sebelumnya yang disimpan secara lokal.

Untuk informasi selengkapnya, lihat Koneksi layanan di bagian Keterangan berikut ini.


azureSubscription - Langganan Azure
Alias input: azureSubscriptionEndpoint. string. Diperlukan saat connectionType = Azure Resource Manager && command != logout && command != package && command != save.

Nama Koneksi Layanan Azure. Tentukan langganan Azure yang memiliki registri kontainer Anda.


azureSubscription - Langganan Azure
Alias input: azureSubscriptionEndpoint. string. Diperlukan saat connectionType = Azure Resource Manager && command != logout && command != package.

Nama Koneksi Layanan Azure. Tentukan langganan Azure yang memiliki registri kontainer Anda.


azureResourceGroup - Grup sumber daya
string. Diperlukan saat connectionType = Azure Resource Manager && command != logout && command != package && command != save.

Nama grup sumber daya dalam langganan. Tentukan Grup Sumber Daya Azure.


azureResourceGroup - Grup sumber daya
string. Diperlukan saat connectionType = Azure Resource Manager && command != logout && command != package.

Nama grup sumber daya dalam langganan. Tentukan Grup Sumber Daya Azure.


kubernetesCluster - Kluster Kubernetes
string. Diperlukan saat connectionType = Azure Resource Manager && command != logout && command != package && command != save.

Nama kluster AKS. Tentukan Kluster Terkelola Azure.


kubernetesCluster - Kluster Kubernetes
string. Diperlukan saat connectionType = Azure Resource Manager && command != logout && command != package.

Nama kluster AKS. Tentukan Kluster Terkelola Azure.


useClusterAdmin - Menggunakan kredensial admin kluster
boolean. Opsional. Gunakan saat connectionType = Azure Resource Manager && command != logout && command != package && command != save. Nilai default: false.

Menggunakan kredensial administrator kluster alih-alih kredensial pengguna kluster default.


useClusterAdmin - Menggunakan kredensial admin kluster
boolean. Pilihan. Gunakan saat connectionType = Azure Resource Manager && command != logout && command != package. Nilai default: false.

Menggunakan kredensial administrator kluster alih-alih kredensial pengguna kluster default.


kubernetesServiceConnection - Koneksi Layanan Kubernetes
Alias input: kubernetesServiceEndpoint. string. Diperlukan saat connectionType = Kubernetes Service Connection && command != logout && command != package && command != save.

Menentukan Koneksi Layanan Kubernetes.


kubernetesServiceConnection - Koneksi Layanan Kubernetes
Alias input: kubernetesServiceEndpoint. string. Diperlukan saat connectionType = Kubernetes Service Connection && command != logout && command != package.

Menentukan Koneksi Layanan Kubernetes.


namespace - Namespace
string. Opsional. Gunakan saat command != logout && command != package && command != save.

Namespace tempat Anda menjalankan kubectl perintah. Jika tidak ditentukan, tugas menggunakan namespace default. Tentukan namespace Layanan Kube yang akan digunakan. Anda dapat menentukan namespace Tiller di bagian lanjutan tugas atau dengan meneruskan --tiller-namespace opsi sebagai argumen.


namespace - Namespace
string. Opsional. Gunakan saat command != logout && command != package.

Namespace tempat Anda menjalankan kubectl perintah. Jika tidak ditentukan, tugas menggunakan namespace default. Tentukan namespace Layanan Kube yang akan digunakan. Anda dapat menentukan namespace Tiller di bagian lanjutan tugas atau dengan meneruskan --tiller-namespace opsi sebagai argumen.


azureSubscriptionForACR - Langganan Azure untuk Container Registry
Alias input: azureSubscriptionEndpointForACR. string. Diperlukan saat command == save.

Menentukan langganan Azure yang memiliki Azure Container Registry Anda.


azureResourceGroupForACR - Grup sumber daya
string. Diperlukan saat command == save.

Menentukan Grup Sumber Daya Azure yang memiliki Container Registry Anda.


azureContainerRegistry - Azure Container Registry
string. Diperlukan saat command == save.

Menentukan Azure Container Registry yang akan digunakan untuk mendorong bagan Helm.


command - Perintah
string. Wajib diisi. Nilai yang diizinkan: create, , exposedelete, get, init, install, login, lslogout, package, , rollback, save, upgrade, uninstall. Nilai default: ls.

Menentukan perintah Helm.


command - Perintah
string. Wajib diisi. Nilai yang diizinkan: create, , exposedelete, get, init, install, login, logout, ls, package, rollback, save, upgrade. Nilai default: ls.

Menentukan perintah Helm.


command - Perintah
string. Wajib diisi. Nilai yang diizinkan: create, , exposedelete, get, init, install, login, logout, ls, package, rollback, upgrade. Nilai default: ls.

Menentukan perintah Helm.


chartType - Tipe Bagan
string. Diperlukan saat command == install || command == upgrade. Nilai yang diizinkan: Name, FilePath (Jalur File). Nilai default: Name.

Menentukan bagaimana Anda ingin memasukkan informasi bagan. Anda dapat memberikan nama bagan atau jalur folder/file ke bagan.


chartName - Nama Bagan
string. Diperlukan saat chartType == Name.

Nama referensi bagan yang akan diinstal. Ini bisa berupa url atau nama bagan. Misalnya, jika nama bagan adalah stable/mysql, tugas akan berjalan helm install stable/mysql.


chartPath - Jalur Bagan
string. Diperlukan saat chartType == FilePath || command == package.

Jalur ke bagan yang akan diinstal. Ini bisa menjadi jalur ke bagan yang dikemas atau jalur ke direktori bagan yang tidak dikemas. Misalnya, jika Anda menentukan ./redis, tugas akan berjalan helm install ./redis. Jika Anda menggunakan bagan yang diterbitkan sebagai artefak, jalurnya adalah $(System.DefaultWorkingDirectory)/ARTIFACT-NAME/Charts/CHART-NAME.


chartVersion - Versi
Alias input: version. string. Opsional. Gunakan saat command == package || command == install || command == upgrade.

Menentukan versi bagan yang tepat untuk diinstal. Jika Anda tidak menentukan versi bagan, tugas akan menginstal versi terbaru. Atur versi pada bagan ke versi semver ini.


chartVersion - Versi
Alias input: version. string. Pilihan. Gunakan saat command == package.

Menentukan versi bagan yang tepat untuk diinstal. Jika Anda tidak menentukan versi bagan, tugas akan menginstal versi terbaru. Atur versi pada bagan ke versi semver ini.


releaseName - Nama Rilis
string. Opsional. Gunakan saat command == install || command == upgrade.

Nama rilis. Jika Anda tidak menentukan nama rilis, tugas akan menghasilkannya secara otomatis untuk Anda. Input releaseName hanya valid untuk install perintah dan upgrade .


overrideValues - Atur Nilai
string. Pilihan. Gunakan saat command == install || command == upgrade.

Menentukan nilai pada baris perintah. Input ini dapat menentukan beberapa atau memisahkan nilai dengan koma: key1=val1,key2=val2.

Anda juga dapat menentukan beberapa nilai dengan memisahkannya dengan baris baru, sebagai berikut:

  • key1=val1
  • key2=val2

Jika Anda memiliki nilai yang berisi baris baru, gunakan opsi .valueFile Jika tidak, tugas memperlakukan baris baru sebagai pemisah. Tugas membuat perintah Helm dengan menggunakan nilai yang ditetapkan ini. Misalnya, Anda dapat mengatur nilai menggunakan perintah seperti berikut ini: helm install --set key1=val1 ./redis.


valueFile - File Nilai
string. Pilihan. Gunakan saat command == install || command == upgrade.

Menentukan nilai dalam file YAML atau URL. Misalnya, menentukan myvalues.yaml hasil dalam helm install --values=myvals.yaml.


destination - Tujuan
string. Opsional. Gunakan saat command == package. Nilai default: $(Build.ArtifactStagingDirectory).

Menentukan nilai dalam file YAML atau URL.


canaryimage - Gunakan versi gambar kenari.
boolean. Pilihan. Gunakan saat command == init. Nilai default: false.

Menentukan gambar Tiller kenari. Gunakan tiller versi pra-rilis terbaru.


upgradetiller - Tingkatkan Tiller
boolean. Pilihan. Gunakan saat command == init. Nilai default: true.

Jika true, input ini meningkatkan Tiller jika Tiller sudah diinstal.


updatedependency - Perbarui Dependensi
boolean. Pilihan. Gunakan saat command == install || command == package. Nilai default: false.

Jika true, input ini memperbarui pembaruan dependensi Helm sebelum menginstal bagan. Updates dependensi dari requirements.yaml ke direktori sebelum pengemasancharts/.


save - Menyimpan
boolean. Opsional. Gunakan saat command == package. Nilai default: true.

Menyimpan bagan kemasan ke repositori bagan lokal saat diatur ke true​.


install - Instal jika rilis tidak ada.
boolean. Pilihan. Gunakan saat command == upgrade. Nilai default: true.

Jika rilis dengan nama ini belum ada, input ini menjalankan penginstalan.


recreate - Buat ulang Pod.
boolean. Pilihan. Gunakan saat command == upgrade. Nilai default: false.

Melakukan mulai ulang pod untuk sumber daya, jika berlaku.


resetValues - Reset Nilai.
boolean. Pilihan. Gunakan saat command == upgrade. Nilai default: false.

Mereset nilai ke nilai yang disertakan dalam bagan.


force - Kekuatan
boolean. Pilihan. Gunakan saat command == upgrade. Nilai default: false.

Memaksa pembaruan sumber daya melalui tindakan hapus atau buat ulang, jika diperlukan.


waitForExecution - Tunggu
boolean. Opsional. Gunakan saat command == init || command == install || command == upgrade. Nilai default: true.

Memblokir tindakan hingga eksekusi perintah selesai.


arguments - Argumen
string. Pilihan. Gunakan saat command != login && command != logout.

Opsi perintah Helm.


enableTls - Aktifkan TLS
boolean. Pilihan. Gunakan saat command != login && command != logout && command != package && command != save. Nilai default: false.

Memungkinkan penggunaan SSL antara Helm dan Tiller.


enableTls - Aktifkan TLS
boolean. Pilihan. Gunakan saat command != login && command != logout && command != package. Nilai default: false.

Memungkinkan penggunaan SSL antara Helm dan Tiller.


caCert - Sertifikat CA
string. Diperlukan saat enableTls == true && command != login && command != logout && command != package && command != save.

Sertifikasi CA digunakan untuk menerbitkan sertifikat untuk klien Tiller dan Helm.


caCert - Sertifikat CA
string. Diperlukan saat enableTls == true && command != login && command != logout && command != package.

Sertifikasi CA digunakan untuk menerbitkan sertifikat untuk klien Tiller dan Helm.


certificate - Sertifikat
string. Diperlukan saat enableTls == true && command != login && command != logout && command != package && command != save.

Tentukan sertifikat Tiller atau sertifikat klien Helm.


certificate - Sertifikat
string. Diperlukan saat enableTls == true && command != login && command != logout && command != package.

Tentukan sertifikat Tiller atau sertifikat klien Helm.


privatekey - Kunci
string. Diperlukan saat enableTls == true && command != login && command != logout && command != package && command != save.

Tentukan kunci Tiller atau kunci klien Helm.


privatekey - Kunci
string. Diperlukan saat enableTls == true && command != login && command != logout && command != package.

Tentukan kunci Tiller atau kunci klien Helm.


tillernamespace - Namespace layanan tiller
string. Opsional. Gunakan saat command != login && command != logout && command != package && command != save.

Tentukan namespace Layanan Kubernetes Tiller.


tillernamespace - Namespace layanan tiller
string. Pilihan. Gunakan saat command != login && command != logout && command != package.

Tentukan namespace Layanan Kubernetes Tiller.


failOnStderr - Gagal pada Kesalahan Standar
boolean. Pilihan. Gunakan saat command != login && command != logout && command != package && command != save. Nilai default: false.

Jika input ini adalah true, tugas ini gagal jika ada kesalahan yang ditulis ke alur kesalahan, atau jika ada data yang ditulis ke aliran Kesalahan Standar. Jika tidak, tugas bergantung pada kode keluar untuk menentukan kegagalan.


failOnStderr - Gagal pada Kesalahan Standar
boolean. Pilihan. Gunakan saat command != login && command != logout && command != package. Nilai default: true.

Jika input ini adalah true, tugas ini gagal jika ada kesalahan yang ditulis ke alur kesalahan, atau jika ada data yang ditulis ke aliran Kesalahan Standar. Jika tidak, tugas bergantung pada kode keluar untuk menentukan kegagalan.


publishPipelineMetadata - Menerbitkan metadata alur
boolean. Pilihan. Gunakan saat command != login && command != logout && command != package && command != save. Nilai default: true.

Jika input ini adalah true, tugas mengumpulkan dan menerbitkan metadata penyebaran.


chartNameForACR - Nama Bagan Untuk Azure Container Registry
string. Diperlukan saat command == save.

Nama bagan dalam Azure Container Registry.


chartPathForACR - Jalur Bagan untuk Azure Container Registry
string. Diperlukan saat command == save.

Jalur file ke direktori bagan di Azure Container Registry.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugas mereka. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.

Variabel output

Tugas ini menentukan variabel output berikut, yang dapat Anda konsumsi dalam langkah-langkah hilir, pekerjaan, dan tahapan.

helmExitCode
Kode keluar yang dikeluarkan dari eksekusi perintah Helm yang ditentukan.

helmOutput
Output yang dipancarkan dari eksekusi perintah Helm yang ditentukan.

Tidak ada.

Keterangan

Gunakan HelmDeploy@0 untuk menyebarkan, mengonfigurasi, atau memperbarui kluster Kubernetes di Azure Container Service dengan menjalankan perintah Helm. Helm adalah alat yang menyederhanakan penyebaran dan pengelolaan aplikasi Kubernetes menggunakan format kemasan yang disebut bagan.

Anda dapat menentukan, membuat versi, berbagi, menginstal, dan meningkatkan bahkan aplikasi Kubernetes yang paling kompleks dengan menggunakan Helm.

  • Helm membantu Anda menggabungkan beberapa manifes Kubernetes (yaml) seperti layanan, penyebaran, peta konfigurasi, dan lainnya ke dalam satu unit yang disebut Bagan Helm. Anda tidak perlu menciptakan atau menggunakan tokenisasi atau alat templat.
  • Bagan Helm membantu Anda mengelola dependensi aplikasi dan menyebarkan serta memutar kembali sebagai unit. Mereka juga mudah untuk membuat, membuat versi, menerbitkan, dan berbagi dengan tim mitra lainnya.

Azure Pipelines memiliki dukungan bawaan untuk bagan Helm:

  • Tugas penginstal Alat Helm dapat digunakan untuk menginstal versi Helm yang benar ke agen.
  • Paket Helm dan tugas penyebaran dapat digunakan untuk mengemas aplikasi dan menyebarkannya ke kluster Kubernetes. Anda dapat menggunakan tugas untuk menginstal atau memperbarui Tiller ke namespace Layanan Kubernetes, untuk terhubung dengan aman ke Tiller melalui TLS untuk menyebarkan bagan, atau untuk menjalankan perintah Helm seperti lint.
  • Tugas Helm mendukung menyambungkan ke Azure Kubernetes Service dengan menggunakan koneksi layanan Azure. Anda dapat terhubung ke kluster Kubernetes mana pun dengan menggunakan kubeconfig atau akun layanan.
  • Penyebaran Helm dapat dilengkapi dengan menggunakan tugas Kubectl ; misalnya, buat/perbarui, imagepullsecret, dan lainnya.

Koneksi layanan

HelmDeploy@0 berfungsi dengan dua jenis koneksi layanan: Azure Resource Manager dan Koneksi Layanan Kubernetes. Lihat Contoh untuk contoh tentang mengonfigurasi dua jenis koneksi ini.

Catatan

Koneksi layanan tidak diperlukan jika sumber daya lingkungan yang menunjuk ke kluster Kubernetes telah ditentukan dalam tahap alur.

Pertimbangan Koneksi Layanan Kubernetes saat mengakses AKS

Anda dapat membuat koneksi layanan Kubernetes dengan salah satu opsi berikut.

  • KubeConfig
  • Akun Layanan
  • Azure Subscription

Cuplikan layar memilih metode autentikasi koneksi layanan Kubernetes.

Saat memilih opsi Langganan Azure , Kubernetes harus dapat diakses oleh Azure DevOps pada waktu konfigurasi koneksi layanan. Mungkin ada berbagai alasan koneksi layanan tidak dapat dibuat, misalnya Anda membuat kluster privat atau kluster menonaktifkan akun lokal. Dalam kasus ini, Azure DevOps tidak dapat terhubung ke kluster Anda pada waktu konfigurasi koneksi layanan dan Anda akan melihat layar Namespace layanan Pemuatan yang macet.

Cuplikan layar memilih dialog autentikasi koneksi layanan Kubernetes macet saat memuat namespace layanan.

Dimulai dengan Kubernetes 1.24, token berumur panjang tidak lagi dibuat secara default. Kubernetes merekomendasikan untuk tidak menggunakan token berumur panjang. Akibatnya, tugas yang menggunakan koneksi layanan Kubernetes yang dibuat dengan opsi Langganan Azure tidak memiliki akses ke token permanen yang diperlukan untuk mengautentikasi dan tidak dapat mengakses kluster Kubernetes Anda. Ini juga menghasilkan dialog namespace layanan Pemuatan yang dibekukan.

Menggunakan Azure Resource Manager Service Connection untuk mengakses AKS

Untuk pelanggan AKS, jenis koneksi layanan Azure Resource Manager menyediakan metode terbaik untuk terhubung ke kluster privat, atau kluster yang menonaktifkan akun lokal. Metode ini tidak bergantung pada konektivitas kluster pada saat Anda membuat koneksi layanan. Akses ke AKS ditangguhkan ke runtime alur, yang memiliki keuntungan berikut:

  • Akses ke kluster AKS (privat) dapat dilakukan dari agen yang dihost sendiri atau set skala dengan garis pandang ke kluster.
  • Token dibuat untuk setiap tugas yang menggunakan koneksi layanan Azure Resource Manager. Ini memastikan Anda terhubung ke Kubernetes dengan token berumur pendek, yang merupakan rekomendasi Kubernetes.
  • AKS dapat diakses bahkan ketika akun lokal dinonaktifkan.

Tanya Jawab Umum koneksi layanan

Saya menerima pesan kesalahan berikut: Tidak dapat menemukan rahasia apa pun yang terkait dengan akun layanan. Apa yang terjadi?

Anda menggunakan koneksi layanan Kubernetes dengan opsi Langganan Azure. Kami memperbarui metode ini untuk membuat token berumur panjang. Ini diperkirakan akan tersedia pertengahan Mei. Namun, disarankan untuk mulai menggunakan jenis koneksi layanan Azure dan tidak menggunakan token berumur panjang sesuai panduan Kubernetes.

Saya menggunakan AKS dan tidak ingin mengubah apa pun, dapatkah saya terus menggunakan tugas dengan koneksi layanan Kubernetes?

Kami memperbarui metode ini untuk membuat token berumur panjang. Ini diperkirakan akan tersedia pertengahan Mei. Namun, perlu diketahui bahwa pendekatan ini bertentangan dengan panduan Kubernetes.

Saya menggunakan tugas Kubernetes dan koneksi layanan Kubernetes tetapi bukan AKS. Haruskah aku khawatir?

Tugas Anda akan terus berfungsi seperti sebelumnya.

Apakah jenis koneksi layanan Kubernetes akan dihapus?

Tugas Kubernetes kami bekerja dengan kluster Kubernetes apa pun, di mana pun mereka berjalan. Koneksi layanan Kubernetes akan terus ada.

Saya pelanggan AKS dan semuanya berjalan dengan baik, haruskah saya bertindak?

Tidak perlu mengubah apa pun. Jika Anda menggunakan koneksi layanan Kubernetes dan Langganan Azure yang dipilih selama pembuatan, Anda harus mengetahui panduan Kubernetes tentang menggunakan token berumur panjang.

Saya membuat Lingkungan Kubernetes, dan tidak memiliki opsi untuk menggunakan koneksi layanan

Jika Anda tidak dapat mengakses AKS selama waktu pembuatan lingkungan, Anda dapat menggunakan lingkungan kosong dan mengatur connectionType input ke koneksi layanan Azure Resource Manager.

Saya memiliki AKS yang dikonfigurasi dengan Azure Active Directory RBAC, dan alur saya tidak berfungsi. Apakah pembaruan ini akan mengatasinya?

Mengakses Kubernetes ketika AAD RBAC diaktifkan tidak terkait dengan pembuatan token. Untuk mencegah prompt interaktif, kami akan mendukung kubelogin di pembaruan mendatang.

Nilai perintah

Input perintah menerima salah satu perintah helm berikut: create/delete/expose/get/init/install/login/logout/ls/package/rollback/upgrade. Contoh disediakan di bagian Contoh .

Setiap perintah memasukkan peta ke sekumpulan input tugas. Perintah yang memetakan ke input tugas ditunjuk dalam blok sintaks YAML dan dalam tabel input tugas

Pemecahan Masalah

Tugas HelmDeploy melemparkan kesalahan 'bendera tidak diketahui: --wait' saat menjalankan 'helm init --wait --client-only' pada versi Helm 3.0.2.

Ada beberapa perubahan mencolok antara Helm 2 dan Helm 3. Salah satunya termasuk penghapusan tiller, dan karenanya helm init perintah tidak lagi didukung. Hapus perintah: init saat Anda menggunakan versi Helm 3.0+.

Saat menggunakan Helm 3, jika System.debug diatur ke true dan peningkatan Helm adalah perintah yang digunakan, alur gagal meskipun peningkatan berhasil.

Ini adalah masalah yang diketahui dengan Helm 3, karena menulis beberapa log ke stderr. Tugas Sebarkan Helm ditandai sebagai gagal jika ada log ke stderr atau kode keluar bukan nol. Atur input tugas failOnStderr: false untuk mengabaikan log yang dicetak ke stderr.

Contoh

Azure Resource Manager

Contoh YAML ini menunjukkan bagaimana Azure Resource Manager digunakan untuk merujuk ke kluster Kubernetes. Ini digunakan dengan salah satu perintah helm dan nilai yang sesuai yang diperlukan untuk perintah:

variables:
  azureSubscriptionEndpoint: Contoso
  azureContainerRegistry: contoso.azurecr.io
  azureResourceGroup: Contoso
  kubernetesCluster: Contoso

- task: HelmDeploy@0
  displayName: Helm deploy
  inputs:
    connectionType: Azure Resource Manager
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)

Koneksi Layanan Kubernetes

Contoh YAML ini menunjukkan bagaimana koneksi layanan Kubernetes digunakan untuk merujuk ke kluster Kubernetes. Ini digunakan dengan salah satu perintah helm dan nilai yang sesuai yang diperlukan untuk perintah:

- task: HelmDeploy@0
  displayName: Helm deploy
  inputs:
    connectionType: Kubernetes Service Connection
    kubernetesServiceEndpoint: Contoso

Perintah

Input perintah menerima salah satu perintah helm berikut: create/delete/expose/get/init/install/login/logout/ls/package/rollback/upgrade.

Contoh YAML ini menunjukkan perintah ls :

- task: HelmDeploy@0
  displayName: Helm list
  inputs:
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: ls
    arguments: --all

perintah init

Contoh YAML ini menunjukkan perintah init :

- task: HelmDeploy@0
  displayName: Helm init
  inputs:
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: init
    upgradetiller: true
    waitForExecution: true
    arguments: --client-only

perintah instal

Contoh YAML ini menunjukkan perintah instal :

- task: HelmDeploy@0
  displayName: Helm install
  inputs:
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: install
    chartType: FilePath
    chartPath: Application/charts/sampleapp

perintah paket

Contoh YAML ini menunjukkan perintah paket :

- task: HelmDeploy@0
  displayName: Helm package
  inputs:
    command: package
    chartPath: Application/charts/sampleapp
    destination: $(Build.ArtifactStagingDirectory)

perintah peningkatan

Contoh YAML ini menunjukkan perintah peningkatan :

- task: HelmDeploy@0
  displayName: Helm upgrade
  inputs:
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: upgrade
    chartType: filepath
    chartPath: $(Build.ArtifactStagingDirectory)/sampleapp-v0.2.0.tgz
    releaseName: azuredevopsdemo
    install: true
    waitForExecution: false

perintah simpan

Contoh YAML ini menunjukkan perintah simpan :

- task: HelmDeploy@0
  displayName: Helm save
  inputs:
    command: save
    chartNameForACR: mycontainerregistry.azurecr.io/helm/hello-world:v1
    chartPathForACR: Application/charts/sampleapp
    azureSubscriptionEndpointForACR: $(azureSubscriptionEndpointForACR)
    azureResourceGroupForACR: $(azureResourceGroupForACR)
    azureContainerRegistry: $(azureContainerRegistry)

Mengemas dan menandatangani bagan Helm

Di bagian ini Anda akan mempelajari cara mengemas dan menandatangani bagan Helm dalam alur.

Membuat pasangan kunci privat-publik untuk menandatangani bagan helm menggunakan GPG

  1. Unduh GPG.

  2. Luncurkan prompt perintah dalam mode administrator. Jalankan perintah berikut untuk menghasilkan pasangan kunci privat-publik untuk menandatangani bagan helm menggunakan gpg. Saat membuat kunci, Anda akan dimintai nama pengguna dan alamat email. "Nama alamat email" kemudian digunakan untuk memberi nama pasangan kunci privat-publik yang dibuat.

    gpg --full-generate-key
    

    Hasilkan Kunci

  3. Anda akan dimintai frase sandi. Berikan nilai dan klik ok.

    Cuplikan layar yang menunjukkan frase sandi.

  4. Setelah membuat kunci, Anda dapat melihat daftar kunci yang berisi privat dan publik menggunakan perintah berikut.

    • Untuk melihat daftar kunci privat

      gpg --list-secret-keys
      

      Kunci Privat

    • Untuk melihat daftar kunci publik

      gpg --list-keys
      

      Kunci Umum

  5. Simpan kunci privat dan publik dalam 2 file berbeda dengan ekstensi gpg seperti yang ditunjukkan di bawah ini.

    • Untuk kunci privat
    gpg --export-secret-key 94325E18E53EDD99DD8339C3CFD9DAF0707CB788 contoso@microsoft.com > C:/somepath/privatekeys.gpg
    

    Anda akan melihat file privatekeys.gpg yang diekspor ke jalur yang disebutkan di atas.

    • Untuk kunci umum
    gpg --export-key 94325E18E53EDD99DD8339C3CFD9DAF0707CB788 contoso@microsoft.com > C:/somepath/publickey.gpg
    

    Anda akan melihat file publickey.gpg yang diekspor ke jalur yang disebutkan di atas.

Di Azure DevOps, simpan file privatekey.gpg di bagian file aman pustaka.

Contoh

pool:
  name: Hosted Ubuntu 1604

variables:
  # The below variable should be secure
  HelmKeyPassphrase: contoso@123
  keyName: contoso contoso@microsoft.com
  azureSubscriptionEndpoint: contoso
  azureResourceGroup: contoso
  kubernetesCluster: contoso

steps:
- task: DownloadSecureFile@1
  displayName: Download Secure file
  inputs:
    secureFile: privatekey.gpg
  name: privateKeyRing

- task: HelmInstaller@0
  displayName: Install Helm 2.12.0
  inputs:
    helmVersion: 2.12.0

- task: HelmDeploy@0
  displayName: helm init
  inputs:
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: init
    arguments: --client-only

- task: HelmDeploy@0
  displayName: helm package
  inputs:
    command: package
    chartPath: Application/charts/sampleapp
    arguments: --sign --key "$(keyName)" --keyring $(privateKeyRing.secureFilePath)
  env:
    HelmKeyPassphrase: $(HelmKeyPassphrase)

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen Semua versi agen yang didukung.
Kategori tugas Sebarkan