HelmDeploy@0 - Helm charts v0 görevini paketleme ve dağıtma
Helm komutlarını çalıştırarak Azure Container Service'te kubernetes kümesini dağıtmak, yapılandırmak veya güncelleştirmek için bu görevi kullanın.
Helm komutlarını çalıştırarak Azure Container Service'te Kubernetes kümenizi dağıtmak, yapılandırmak veya güncelleştirmek için bu görevi kullanın.
Syntax
# 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.
Girişler
connectionType
- Bağlantı Türü
string
. olduğunda command != logout && command != package && command != save
gereklidir. İzin verilen değerler: Azure Resource Manager
, Kubernetes Service Connection
, None
. Varsayılan değer: Azure Resource Manager
.
Bağlantı türünü belirtir.
Kubernetes Service Connection
- veya Azure Hizmet Hesabı'nı kullanarakkubeconfig
herhangi bir Kubernetes kümesine bağlanmak için belirtinKubernetes Service Connection
. KubeConfig dosyası sağlamanıza, Hizmet Hesabı belirtmenize veya Azure Aboneliği seçeneğiyle aks örneğini içeri aktarmanıza olanak tanır. Azure Aboneliği seçeneğiyle bir AKS örneğinin içeri aktarılması için Hizmet Bağlantısı yapılandırma zamanında Kubernetes kümesi erişimi gerekir.Azure Resource Manager
- Azure Hizmet Bağlantısı'nı kullanarak bir Azure Kubernetes Service bağlanmak için belirtinAzure Resource Manager
. Hizmet Bağlantısı yapılandırma zamanında Kubernetes kümesine erişmiyor.None
- Yerel olarak depolanan önceden oluşturulmuş bir Kubernetes yapılandırmasını kullanın.
Daha fazla bilgi için aşağıdaki Açıklamalar bölümündeki Hizmet bağlantısı bölümüne bakın.
connectionType
- Bağlantı Türü
string
. olduğunda command != logout && command != package
gereklidir. İzin verilen değerler: Azure Resource Manager
, Kubernetes Service Connection
, None
. Varsayılan değer: Azure Resource Manager
.
Bağlantı türünü belirtir.
Kubernetes Service Connection
- veya Azure Hizmet Hesabı'nı kullanarakkubeconfig
herhangi bir Kubernetes kümesine bağlanmak için belirtinKubernetes Service Connection
. KubeConfig dosyası sağlamanıza, Hizmet Hesabı belirtmenize veya Azure Aboneliği seçeneğiyle aks örneğini içeri aktarmanıza olanak tanır. Azure Aboneliği seçeneğiyle bir AKS örneğinin içeri aktarılması için Hizmet Bağlantısı yapılandırma zamanında Kubernetes kümesi erişimi gerekir.Azure Resource Manager
- Azure Hizmet Bağlantısı'nı kullanarak bir Azure Kubernetes Service bağlanmak için belirtinAzure Resource Manager
. Hizmet Bağlantısı yapılandırma zamanında Kubernetes kümesine erişmiyor.None
- Yerel olarak depolanan önceden oluşturulmuş bir Kubernetes yapılandırmasını kullanın.
Daha fazla bilgi için aşağıdaki Açıklamalar bölümündeki Hizmet bağlantısı bölümüne bakın.
azureSubscription
- Azure aboneliği
Giriş diğer adı: azureSubscriptionEndpoint
. string
. olduğunda connectionType = Azure Resource Manager && command != logout && command != package && command != save
gereklidir.
Azure Hizmet Bağlantısı'nın adı. Kapsayıcı kayıt defterinizi içeren bir Azure aboneliği belirtin.
azureSubscription
- Azure aboneliği
Giriş diğer adı: azureSubscriptionEndpoint
. string
. olduğunda connectionType = Azure Resource Manager && command != logout && command != package
gereklidir.
Azure Hizmet Bağlantısı'nın adı. Kapsayıcı kayıt defterinizi içeren bir Azure aboneliği belirtin.
azureResourceGroup
- Kaynak grubu
string
. olduğunda connectionType = Azure Resource Manager && command != logout && command != package && command != save
gereklidir.
Abonelik içindeki kaynak grubunun adı. Bir Azure Kaynak Grubu belirtin.
azureResourceGroup
- Kaynak grubu
string
. olduğunda connectionType = Azure Resource Manager && command != logout && command != package
gereklidir.
Abonelik içindeki kaynak grubunun adı. Bir Azure Kaynak Grubu belirtin.
kubernetesCluster
- Kubernetes kümesi
string
. olduğunda connectionType = Azure Resource Manager && command != logout && command != package && command != save
gereklidir.
AKS kümesinin adı. Azure Yönetilen Kümesi belirtin.
kubernetesCluster
- Kubernetes kümesi
string
. olduğunda connectionType = Azure Resource Manager && command != logout && command != package
gereklidir.
AKS kümesinin adı. Azure Yönetilen Kümesi belirtin.
useClusterAdmin
- Küme yöneticisi kimlik bilgilerini kullanma
boolean
. İsteğe bağlı. olduğunda connectionType = Azure Resource Manager && command != logout && command != package && command != save
kullanın. Varsayılan değer: false
.
Varsayılan küme kullanıcı kimlik bilgileri yerine küme yöneticisi kimlik bilgilerini kullanır.
useClusterAdmin
- Küme yöneticisi kimlik bilgilerini kullanma
boolean
. İsteğe bağlı. olduğunda connectionType = Azure Resource Manager && command != logout && command != package
kullanın. Varsayılan değer: false
.
Varsayılan küme kullanıcı kimlik bilgileri yerine küme yöneticisi kimlik bilgilerini kullanır.
kubernetesServiceConnection
- Kubernetes Service Connection
Giriş diğer adı: kubernetesServiceEndpoint
. string
. olduğunda connectionType = Kubernetes Service Connection && command != logout && command != package && command != save
gereklidir.
Kubernetes Service Bağlantısı belirtir.
kubernetesServiceConnection
- Kubernetes Service Connection
Giriş diğer adı: kubernetesServiceEndpoint
. string
. olduğunda connectionType = Kubernetes Service Connection && command != logout && command != package
gereklidir.
Kubernetes Service Bağlantısı belirtir.
namespace
- Ad alanı
string
. İsteğe bağlı. olduğunda command != logout && command != package && command != save
kullanın.
Komutlarını çalıştırdığınız kubectl
ad alanı. Belirtilmezse, görev varsayılan ad alanını kullanır. Kullanılacak Kubernetes ad alanını belirtin. Tiller ad alanını görevin gelişmiş bölümünde veya seçeneğini bağımsız değişken olarak geçirerek --tiller-namespace
belirtebilirsiniz.
namespace
- Ad alanı
string
. İsteğe bağlı. olduğunda command != logout && command != package
kullanın.
Komutlarını çalıştırdığınız kubectl
ad alanı. Belirtilmezse, görev varsayılan ad alanını kullanır. Kullanılacak Kubernetes ad alanını belirtin. Tiller ad alanını görevin gelişmiş bölümünde veya seçeneğini bağımsız değişken olarak geçirerek --tiller-namespace
belirtebilirsiniz.
azureSubscriptionForACR
- Container Registry için Azure aboneliği
Giriş diğer adı: azureSubscriptionEndpointForACR
. string
. olduğunda command == save
gereklidir.
Azure Container Registry sahip bir Azure aboneliği belirtir.
azureResourceGroupForACR
- Kaynak grubu
string
. olduğunda command == save
gereklidir.
Container Registry'nizin bulunduğu bir Azure Kaynak Grubu belirtir.
azureContainerRegistry
- Azure Container Registry
string
. olduğunda command == save
gereklidir.
Helm grafiklerini göndermek için kullanılacak bir Azure Container Registry belirtir.
command
- Komut
string
. Gereklidir. İzin verilen değerler: create
, delete
, expose
, , get
, init
, install
, , login
, logout
, , ls
, package
, uninstall
rollback
save
upgrade
. Varsayılan değer: ls
.
Helm komutunu belirtir.
command
- Komut
string
. Gereklidir. İzin verilen değerler: create
, delete
, expose
, , get
, init
, install
, , login
, logout
, , ls
, upgrade
package
rollback
save
. Varsayılan değer: ls
.
Helm komutunu belirtir.
command
- Komut
string
. Gereklidir. İzin verilen değerler: create
, delete
, expose
, get
, , init
, install
, , login
, logout
, ls
, upgrade
package
rollback
. Varsayılan değer: ls
.
Helm komutunu belirtir.
chartType
- Grafik Türü
string
. olduğunda command == install || command == upgrade
gereklidir. İzin verilen değerler: Name
, FilePath
(Dosya Yolu). Varsayılan değer: Name
.
Grafik bilgilerini nasıl girmek istediğinizi belirtir. Grafiğin adını veya grafiğin klasör/dosya yolunu belirtebilirsiniz.
chartName
- Grafik Adı
string
. olduğunda chartType == Name
gereklidir.
Yüklenecek grafik başvurusunun adı. Bu bir URL veya grafik adı olabilir. Örneğin, grafik adı ise stable/mysql
görev çalıştırır helm install stable/mysql
.
chartPath
- Grafik Yolu
string
. olduğunda chartType == FilePath || command == package
gereklidir.
Yüklenecek grafiğin yolu. Bu, paketlenmiş bir grafiğin yolu veya paketlenmemiş grafik dizinine giden yol olabilir. Örneğin, belirtirseniz ./redis
, görev çalıştırır helm install ./redis
. Yapıt olarak yayımlanan bir grafiği kullanıyorsanız yol olacaktır $(System.DefaultWorkingDirectory)/ARTIFACT-NAME/Charts/CHART-NAME
.
chartVersion
- Sürüm
Giriş diğer adı: version
. string
. İsteğe bağlı. olduğunda command == package || command == install || command == upgrade
kullanın.
Yüklenecek tam grafik sürümünü belirtir. Grafik sürümünü belirtmezseniz, görev en son sürümü yükler. Grafikteki sürümü bu semver sürümüne ayarlayın.
chartVersion
- Sürüm
Giriş diğer adı: version
. string
. İsteğe bağlı. olduğunda command == package
kullanın.
Yüklenecek tam grafik sürümünü belirtir. Grafik sürümünü belirtmezseniz, görev en son sürümü yükler. Grafikteki sürümü bu semver sürümüne ayarlayın.
releaseName
- Yayın Adı
string
. İsteğe bağlı. olduğunda command == install || command == upgrade
kullanın.
Yayın adı. Yayın adını belirtmezseniz, görev sizin için otomatik olarak bir ad oluşturur. Giriş releaseName
yalnızca ve upgrade
komutları için install
geçerlidir.
overrideValues
- Değerleri Ayarla
string
. İsteğe bağlı. olduğunda command == install || command == upgrade
kullanın.
Komut satırındaki değerleri belirtir. Bu giriş, virgülle birden çok veya ayrı değer belirtebilir: key1=val1,key2=val2
.
Birden çok değeri, aşağıdaki gibi yeni bir satırla sınırlayarak da belirtebilirsiniz:
- key1=val1
- key2=val2
Yeni satırlar içeren bir değeriniz varsa seçeneğini kullanın valueFile
. Aksi takdirde, görev yeni satırı sınırlayıcı olarak ele alır. Görev, bu küme değerlerini kullanarak Helm komutunu oluşturur. Örneğin, aşağıdaki gibi bir komut kullanarak değeri ayarlayabilirsiniz: helm install --set key1=val1 ./redis
.
valueFile
- Değer Dosyası
string
. İsteğe bağlı. olduğunda command == install || command == upgrade
kullanın.
YAML dosyasındaki veya URL'deki değerleri belirtir. Örneğin, içinde helm install --values=myvals.yaml
sonuçları belirtmemyvalues.yaml
.
destination
- Hedef
string
. İsteğe bağlı. olduğunda command == package
kullanın. Varsayılan değer: $(Build.ArtifactStagingDirectory)
.
YAML dosyasındaki veya URL'deki değerleri belirtir.
canaryimage
- Kanarya görüntüsü sürümünü kullanın.
boolean
. İsteğe bağlı. olduğunda command == init
kullanın. Varsayılan değer: false
.
Kanarya Tiller görüntüsünü belirtir. Tiller'ın en son yayın öncesi sürümünü kullanın.
upgradetiller
- Tiller'i Yükseltme
boolean
. İsteğe bağlı. olduğunda command == init
kullanın. Varsayılan değer: true
.
ise true
, Tiller zaten yüklüyse bu giriş Tiller'ı yükselter.
updatedependency
- Bağımlılığı Güncelleştir
boolean
. İsteğe bağlı. olduğunda command == install || command == package
kullanın. Varsayılan değer: false
.
ise true
, bu giriş grafiği yüklemeden önce helm bağımlılık güncelleştirmesini güncelleştirir. Paketlemeden önce dizininden requirements.yaml
dizinine charts/
bağımlılıkları Güncelleştirmeler.
save
- Kaydetmek
boolean
. İsteğe bağlı. olduğunda command == package
kullanın. Varsayılan değer: true
.
olarak ayarlandığında paketlenmiş grafiği yerel grafik deposuna true
kaydeder.
install
- Sürüm yoksa yükleyin.
boolean
. İsteğe bağlı. olduğunda command == upgrade
kullanın. Varsayılan değer: true
.
Bu ada sahip bir sürüm yoksa, bu giriş bir yükleme çalıştırır.
recreate
- Podları yeniden oluşturun.
boolean
. İsteğe bağlı. when command == upgrade
kullanın. Varsayılan değer: false
.
Varsa, kaynak için podların yeniden başlatılmasını gerçekleştirir.
resetValues
- Değerleri Sıfırla'yı seçin.
boolean
. İsteğe bağlı. when command == upgrade
kullanın. Varsayılan değer: false
.
Değerleri grafikte yerleşik olarak bulunan değerlere sıfırlar.
force
- Kuvvet
boolean
. İsteğe bağlı. when command == upgrade
kullanın. Varsayılan değer: false
.
Gerekirse bir silme veya yeniden oluşturma eylemi aracılığıyla kaynak güncelleştirmesini zorlar.
waitForExecution
- Bekle
boolean
. İsteğe bağlı. when command == init || command == install || command == upgrade
kullanın. Varsayılan değer: true
.
Komut yürütme tamamlanana kadar eylemi engeller.
arguments
- Bağımsız değişken
string
. İsteğe bağlı. when command != login && command != logout
kullanın.
Helm komut seçenekleri.
enableTls
- TLS'yi etkinleştirme
boolean
. İsteğe bağlı. when command != login && command != logout && command != package && command != save
kullanın. Varsayılan değer: false
.
Helm ve Tiller arasında SSL kullanılmasını sağlar.
enableTls
- TLS'yi etkinleştirme
boolean
. İsteğe bağlı. when command != login && command != logout && command != package
kullanın. Varsayılan değer: false
.
Helm ve Tiller arasında SSL kullanılmasını sağlar.
caCert
- CA sertifikası
string
. olduğunda enableTls == true && command != login && command != logout && command != package && command != save
gereklidir.
Tiller ve Helm istemcisi için sertifika vermek için kullanılan CA sertifikası.
caCert
- CA sertifikası
string
. olduğunda enableTls == true && command != login && command != logout && command != package
gereklidir.
Tiller ve Helm istemcisi için sertifika vermek için kullanılan CA sertifikası.
certificate
- Sertifika
string
. olduğunda enableTls == true && command != login && command != logout && command != package && command != save
gereklidir.
Tiller sertifikasını veya Helm istemci sertifikasını belirtin.
certificate
- Sertifika
string
. olduğunda enableTls == true && command != login && command != logout && command != package
gereklidir.
Tiller sertifikasını veya Helm istemci sertifikasını belirtin.
privatekey
- Anahtar
string
. olduğunda enableTls == true && command != login && command != logout && command != package && command != save
gereklidir.
Tiller anahtarını veya Helm istemci anahtarını belirtin.
privatekey
- Anahtar
string
. olduğunda enableTls == true && command != login && command != logout && command != package
gereklidir.
Tiller anahtarını veya Helm istemci anahtarını belirtin.
tillernamespace
- Tiller ad alanı
string
. İsteğe bağlı. when command != login && command != logout && command != package && command != save
kullanın.
Tiller'ın Kubernetes ad alanını belirtin.
tillernamespace
- Tiller ad alanı
string
. İsteğe bağlı. when command != login && command != logout && command != package
kullanın.
Tiller'ın Kubernetes ad alanını belirtin.
failOnStderr
- Standart Hatada Başarısız Oldu
boolean
. İsteğe bağlı. when command != login && command != logout && command != package && command != save
kullanın. Varsayılan değer: false
.
Bu giriş ise true
, hata işlem hattına herhangi bir hata yazılırsa veya Standart Hata akışına herhangi bir veri yazılırsa bu görev başarısız olur. Aksi takdirde, görev hata belirlemek için çıkış koduna dayanır.
failOnStderr
- Standart Hatada Başarısız Oldu
boolean
. İsteğe bağlı. when command != login && command != logout && command != package
kullanın. Varsayılan değer: true
.
Bu giriş ise true
, hata işlem hattına herhangi bir hata yazılırsa veya Standart Hata akışına herhangi bir veri yazılırsa bu görev başarısız olur. Aksi takdirde, görev hata belirlemek için çıkış koduna dayanır.
publishPipelineMetadata
- İşlem hattı meta verilerini yayımlama
boolean
. İsteğe bağlı. when command != login && command != logout && command != package && command != save
kullanın. Varsayılan değer: true
.
Bu giriş ise true
, görev dağıtım meta verilerini toplar ve yayımlar.
chartNameForACR
- Azure Container Registry için grafik adı
string
. olduğunda command == save
gereklidir.
Azure Container Registry grafiğin adı.
chartPathForACR
- Azure Container Registry için Grafik Yolu
string
. olduğunda command == save
gereklidir.
Azure Container Registry grafik dizinine giden dosya yolu.
Görev denetim seçenekleri
Tüm görevlerde görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.
Çıkış değişkenleri
Bu görev aşağı akış adımlarında, işlerde ve aşamalarda kullanabileceğiniz aşağıdaki çıkış değişkenlerini tanımlar.
helmExitCode
Belirtilen Helm komutunun yürütülmesinden yayılan çıkış kodu.
helmOutput
Belirtilen Helm komutunun yürütülmesinden yayılan çıkış.
Yok.
Açıklamalar
Helm komutlarını çalıştırarak Azure Container Service'te kubernetes kümesini dağıtmak, yapılandırmak veya güncelleştirmek için HelmDeploy@0 kullanın. Helm, Grafikler adlı paketleme biçimini kullanarak Kubernetes uygulamalarını dağıtmayı ve yönetmeyi kolaylaştıran bir araçtır.
Helm kullanarak en karmaşık Kubernetes uygulamasını bile tanımlayabilir, sürüm oluşturabilir, paylaşabilir, yükleyebilir ve yükseltebilirsiniz.
- Helm, hizmet, dağıtımlar, yapılandırma haritaları ve daha fazlası gibi birden çok Kubernetes bildirimini (yaml) Helm Charts adlı tek bir ünitede birleştirmenize yardımcı olur. Belirteç oluşturma veya belirteç oluşturma ya da şablon oluşturma aracı kullanmanız gerekmez.
- Helm Charts, uygulama bağımlılıklarını yönetmenize, dağıtmanıza ve birim olarak geri almanıza yardımcı olur. Ayrıca oluşturma, sürüm oluşturma, yayımlama ve diğer iş ortağı ekipleriyle paylaşma işlemleri de kolaydır.
Azure Pipelines, Helm grafikleri için yerleşik desteğe sahiptir:
- Helm Aracı yükleyici görevi, aracılara doğru Helm sürümünü yüklemek için kullanılabilir.
- Helm paketi ve dağıtma görevi, uygulamayı paketlemek ve bir Kubernetes kümesine dağıtmak için kullanılabilir. Tiller'ı bir Kubernetes ad alanına yüklemek veya güncelleştirmek, grafikleri dağıtmak üzere TLS üzerinden Tiller'a güvenli bir şekilde bağlanmak veya lint gibi herhangi bir Helm komutunu çalıştırmak için bu görevi kullanabilirsiniz.
- Helm görevi, Azure hizmet bağlantısı kullanarak bir Azure Kubernetes Service bağlanmayı destekler. Kubeconfig veya bir hizmet hesabı kullanarak herhangi bir Kubernetes kümesine bağlanabilirsiniz.
- Helm dağıtımları Kubectl görevi kullanılarak tamamlanabilir; örneğin create/update, imagepullsecret ve diğerleri.
Hizmet bağlantısı
HelmDeploy@0 iki hizmet bağlantısı türüyle çalışır: Azure Resource Manager ve Kubernetes Service Bağlantısı. Bu iki bağlantı türünü yapılandırma örnekleri için bkz. Örnekler .
Not
Kubernetes kümesine işaret eden bir ortam kaynağı işlem hattının aşamasında zaten belirtilmişse hizmet bağlantısı gerekmez.
AKS'ye erişirken Kubernetes Hizmet Bağlantısı ile ilgili dikkat edilmesi gerekenler
Aşağıdaki seçeneklerden herhangi biriyle Kubernetes hizmet bağlantısı oluşturabilirsiniz.
- KubeConfig
- Hizmet Hesabı
- Azure Aboneliği
Azure Aboneliği seçeneğini belirlediğinizde Kubernetes'e hizmet bağlantısı yapılandırma zamanında Azure DevOps tarafından erişilebilir olması gerekir. Bir hizmet bağlantısının oluşturulamamasının çeşitli nedenleri olabilir. Örneğin, özel bir küme oluşturdunuz veya kümede yerel hesaplar devre dışı bırakılmış olabilir. Bu gibi durumlarda Azure DevOps, hizmet bağlantısı yapılandırma zamanında kümenize bağlanamaz ve takılmış Bir Ad alanları yükleniyor ekranı görürsünüz.
Kubernetes 1.24'den başlayarak, uzun süreli belirteçler artık varsayılan olarak oluşturulmaz. Kubernetes, uzun süreli belirteçler kullanmamanızı önerir. Sonuç olarak, Azure Aboneliği seçeneğiyle oluşturulan bir Kubernetes hizmet bağlantısı kullanan görevlerin kimlik doğrulaması için gereken kalıcı belirteçlere erişimi yoktur ve Kubernetes kümenize erişemez. Bunun sonucunda da donmuş Yükleme ad alanları iletişim kutusu açılır.
AKS'ye erişmek için Azure Resource Manager Hizmeti Bağlantısı'nı kullanma
AKS müşterileri için, Azure Resource Manager hizmeti bağlantı türü özel bir kümeye veya yerel hesapları devre dışı bırakılmış bir kümeye bağlanmak için en iyi yöntemi sağlar. Bu yöntem, hizmet bağlantısı oluşturduğunuzda küme bağlantısına bağımlı değildir. AKS'ye erişim, aşağıdaki avantajlara sahip işlem hattı çalışma zamanına ertelenmiştir:
- Bir (özel) AKS kümesine erişim, kümeye görüş hattı olan şirket içinde barındırılan veya ölçek kümesi aracısından gerçekleştirilebilir.
- Azure Resource Manager hizmet bağlantısı kullanan her görev için bir belirteç oluşturulur. Bu, Kubernetes'e kubernetes önerisi olan kısa süreli bir belirteçle bağlanmanızı sağlar.
- Yerel hesaplar devre dışı bırakıldığında bile AKS'ye erişilebilir.
Hizmet bağlantısı hakkında SSS
Şu hata iletisini alıyorum: Hizmet hesabıyla ilişkili gizli dizi bulunamadı. Ne oluyor?
Azure Aboneliği ile Kubernetes hizmet bağlantısı seçeneğini kullanıyorsunuz. Uzun süreli belirteçler oluşturmak için bu yöntemi güncelleştiriyoruz. Bu özelliğin Mayıs ortasında kullanıma sunulması beklenmektedir. Ancak, Kubernetes kılavuzuna göre uzun süreli belirteçleri kullanmamak için Azure hizmet bağlantı türünü kullanmaya başlamanız önerilir.
AKS kullanıyorum ve hiçbir şeyi değiştirmek istemiyorum, Kubernetes hizmet bağlantısıyla görevleri kullanmaya devam edebilir miyim?
Uzun süreli belirteçler oluşturmak için bu yöntemi güncelleştiriyoruz. Bu özelliğin Mayıs ortasında kullanıma sunulması beklenmektedir. Ancak bu yaklaşımın Kubernetes kılavuzuna aykırı olduğunu lütfen unutmayın.
Kubernetes görevlerini ve Kubernetes hizmet bağlantısını kullanıyorum ama AKS'yi kullanmıyorum. Endişelenmeli miyim?
Görevleriniz daha önce olduğu gibi çalışmaya devam edecektir.
Kubernetes hizmeti bağlantı türü kaldırılacak mı?
Kubernetes görevlerimiz, nerede çalıştıklarından bağımsız olarak tüm Kubernetes kümeleriyle çalışır. Kubernetes hizmeti bağlantısı varolmaya devam edecektir.
Aks müşterisiyim ve her şey yolunda, harekete geçeyim mi?
Hiçbir şeyi değiştirmeye gerek yok. Kubernetes hizmet bağlantısını kullanıyorsanız ve oluşturma sırasında Azure Aboneliği'ni seçtiyseniz , uzun süreli belirteçleri kullanma konusunda Kubernetes kılavuzunun farkında olmanız gerekir.
Kubernetes Ortamı oluşturuyorum ve hizmet bağlantılarını kullanma seçeneğim yok
Ortam oluşturma sırasında AKS'nize erişemiyorsanız boş bir ortam kullanabilir ve girişi Azure Resource Manager hizmet bağlantısına ayarlayabilirsinizconnectionType
.
Aks'yi Azure Active Directory RBAC ile yapılandırdım ve işlem hattım çalışmıyor. Bu güncelleştirmeler bu sorunu çözecek mi?
AAD RBAC etkinleştirildiğinde Kubernetes'e erişmek belirteç oluşturmayla ilgili değildir. Etkileşimli bir istemi önlemek için, gelecekteki bir güncelleştirmede kubelogin'i destekleyeceğiz.
Komut değerleri
Komut girişi şu helm komutlarından birini kabul eder: create/delete/expose/get/init/install/login/logout/ls/package/rollback/upgrade. Örnekler, Örnekler bölümünde verilmiştir.
Her komut girişi bir dizi görev girişiyle eşler. Bir görev girişiyle eşleyen komutlar YAML söz dizimi bloğunda ve görev girişleri tablosunda belirlenir
Sorun giderme
HelmDeploy görevi, Helm 3.0.2 sürümünde 'helm init --wait --client-only' çalıştırırken 'bilinmeyen bayrak: --wait' hatası oluşturur.
Helm 2 ile Helm 3 arasında bazı hataya neden olan değişiklikler vardır. Bunlardan biri, topraklayıcının kaldırılmasını içerir ve bu nedenle helm init
komut artık desteklenmez. Helm 3.0+ sürümlerini kullanırken init komutunu kaldırın.
Helm 3 kullanılırken System.debug true olarak ayarlanmışsa ve Helm yükseltmesi kullanılmakta olan komutsa, yükseltme başarılı olsa bile işlem hattı başarısız olur.
Bu Helm 3'ün bilinen bir sorunudur ve stderr'e bazı günlükler yazar. Stderr'de günlükler varsa ve çıkış kodu sıfırdan farklıysa Helm Görev Dağıt işlemi başarısız olarak işaretlenir. Stderr'e yazdırılan günlükleri yoksaymak için görev çıkışını failOnStderr: false olarak ayarlayın.
Örnekler
Azure Resource Manager
Bu YAML örneği, Azure Resource Manager'nin Kubernetes kümesine başvurmak için nasıl kullanıldığını gösterir. Bu, helm komutlarından biri ve komut için gereken uygun değerlerle kullanılır:
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)
Kubernetes Service Bağlantısı
Bu YAML örneği, Kubernetes kümesine başvurmak için Kubernetes hizmet bağlantısının nasıl kullanıldığını gösterir. Bu, helm komutlarından biri ve komut için gereken uygun değerlerle kullanılır:
- task: HelmDeploy@0
displayName: Helm deploy
inputs:
connectionType: Kubernetes Service Connection
kubernetesServiceEndpoint: Contoso
Komutlar
Komut girişi şu helm komutlarından birini kabul eder: create/delete/expose/get/init/install/login/logout/ls/package/rollback/upgrade.
Bu YAML örneği ls komutunu gösterir:
- task: HelmDeploy@0
displayName: Helm list
inputs:
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureResourceGroup: $(azureResourceGroup)
kubernetesCluster: $(kubernetesCluster)
command: ls
arguments: --all
init komutu
Bu YAML örneği , init komutunu gösterir:
- task: HelmDeploy@0
displayName: Helm init
inputs:
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureResourceGroup: $(azureResourceGroup)
kubernetesCluster: $(kubernetesCluster)
command: init
upgradetiller: true
waitForExecution: true
arguments: --client-only
install komutu
Bu YAML örneği yükleme komutunu gösterir:
- task: HelmDeploy@0
displayName: Helm install
inputs:
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureResourceGroup: $(azureResourceGroup)
kubernetesCluster: $(kubernetesCluster)
command: install
chartType: FilePath
chartPath: Application/charts/sampleapp
package komutu
Bu YAML örneği paket komutunu gösterir:
- task: HelmDeploy@0
displayName: Helm package
inputs:
command: package
chartPath: Application/charts/sampleapp
destination: $(Build.ArtifactStagingDirectory)
upgrade komutu
Bu YAML örneği yükseltme komutunu gösterir:
- 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
save komutu
Bu YAML örneği kaydet komutunu gösterir:
- 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)
Helm grafiklerini paketleme ve imzalama
Bu bölümde, bir işlem hattında Helm grafiklerini paketlemeyi ve imzalamayı öğreneceksiniz.
GPG kullanarak helm grafiğini imzalamak için özel-ortak anahtar çifti oluşturma
GPG'i indirin.
Komut istemini yönetici modunda başlatın. Gpg kullanarak helm grafiğini imzalamak üzere bir özel-ortak anahtar çifti oluşturmak için aşağıdaki komutu çalıştırın. Anahtarı oluştururken kullanıcı adı ve e-posta adresi istenir. "Ad e-posta adresi" daha sonra oluşturulan özel-ortak anahtar çiftini adlandırmak için kullanılır.
gpg --full-generate-key
Parola istenir. Değeri verin ve Tamam'a tıklayın.
Anahtarı oluşturduktan sonra, aşağıdaki komutu kullanarak hem özel hem de genel anahtarlar içeren anahtarların listesini görebilirsiniz.
Özel anahtarların listesini görmek için
gpg --list-secret-keys
Ortak anahtarların listesini görmek için
gpg --list-keys
Aşağıda gösterildiği gibi uzantı gpg ile özel ve ortak anahtarları 2 farklı dosyada depolayın.
- Özel anahtar için
gpg --export-secret-key 94325E18E53EDD99DD8339C3CFD9DAF0707CB788 contoso@microsoft.com > C:/somepath/privatekeys.gpg
Yukarıda bahsedilen yola dışarı aktarılan privatekeys.gpg dosyasını görürsünüz.
- Ortak anahtar için
gpg --export-key 94325E18E53EDD99DD8339C3CFD9DAF0707CB788 contoso@microsoft.com > C:/somepath/publickey.gpg
publickey.gpg dosyasının yukarıda bahsedilen yola aktarıldığını görürsünüz.
Azure DevOps'ta privatekey.gpg dosyasını kitaplık güvenli dosyalar bölümüne kaydedin.
Örnek
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)
Gereksinimler
Gereksinim | Açıklama |
---|---|
İşlem hattı türleri | YAML, Klasik derleme, Klasik sürüm |
Üzerinde çalışır | Agent, DeploymentGroup |
Talep | Hiçbiri |
Özellikler | Bu görev, işteki sonraki görevler için hiçbir talebi karşılamaz. |
Komut kısıtlamaları | Herhangi biri |
Ayarlanabilir değişkenler | Herhangi biri |
Aracı sürümü | Desteklenen tüm aracı sürümleri. |
Görev kategorisi | Dağıtma |