HelmDeploy@0 - حزم ونشر مهمة مخططات Helm v0

استخدم هذه المهمة لنشر مجموعة Kubernetes أو تكوينها أو تحديثها في Azure Container Service عن طريق تشغيل أوامر helm.

استخدم هذه المهمة لنشر أو تكوين أو تحديث مجموعة Kubernetes في Azure Container Service عن طريق تشغيل أوامر helm.

بناء الجملة

# 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.

الإدخالات

connectionType - نوع الاتصال
string. مطلوب عند command != logout && command != package && command != save. القيم المسموح بها: Azure Resource Manager، ، Kubernetes Service Connection. None القيمة الافتراضية: Azure Resource Manager.

تحديد نوع الاتصال.

  • Kubernetes Service Connection - حدد Kubernetes Service Connection للاتصال بأي نظام مجموعة Kubernetes باستخدام kubeconfig أو حساب خدمة Azure. يسمح لك بتوفير ملف KubeConfig أو تحديد حساب خدمة أو استيراد مثيل AKS باستخدام خيار اشتراك Azure . يتطلب استيراد مثيل AKS باستخدام خيار اشتراك Azure الوصول إلى مجموعة Kubernetes في وقت تكوين اتصال الخدمة.
  • Azure Resource Manager - حدد Azure Resource Manager للاتصال بخدمة Azure Kubernetes باستخدام اتصال خدمة Azure. لا يصل إلى مجموعة Kubernetes في وقت تكوين اتصال الخدمة.
  • None - استخدم تكوين Kubernetes الذي تم إنشاؤه مسبقا مخزنا محليا.

لمزيد من المعلومات، راجع اتصال الخدمة في قسم الملاحظات التالي.


connectionType - نوع الاتصال
string. مطلوب عند command != logout && command != package. القيم المسموح بها: Azure Resource Manager، ، Kubernetes Service Connection. None القيمة الافتراضية: Azure Resource Manager.

تحديد نوع الاتصال.

  • Kubernetes Service Connection - حدد Kubernetes Service Connection للاتصال بأي نظام مجموعة Kubernetes باستخدام kubeconfig أو حساب خدمة Azure. يسمح لك بتوفير ملف KubeConfig أو تحديد حساب خدمة أو استيراد مثيل AKS باستخدام خيار اشتراك Azure . يتطلب استيراد مثيل AKS باستخدام خيار اشتراك Azure الوصول إلى مجموعة Kubernetes في وقت تكوين اتصال الخدمة.
  • Azure Resource Manager - حدد Azure Resource Manager للاتصال بخدمة Azure Kubernetes باستخدام اتصال خدمة Azure. لا يصل إلى مجموعة Kubernetes في وقت تكوين اتصال الخدمة.
  • None - استخدم تكوين Kubernetes الذي تم إنشاؤه مسبقا مخزنا محليا.

لمزيد من المعلومات، راجع اتصال الخدمة في قسم الملاحظات التالي.


azureSubscription - اشتراك Azure
الاسم المستعار للإدخل: azureSubscriptionEndpoint. string. مطلوب عند connectionType = Azure Resource Manager && command != logout && command != package && command != save.

اسم اتصال خدمة Azure. حدد اشتراك Azure الذي يحتوي على سجل الحاوية الخاص بك.


azureSubscription - اشتراك Azure
الاسم المستعار للإدخل: azureSubscriptionEndpoint. string. مطلوب عند connectionType = Azure Resource Manager && command != logout && command != package.

اسم اتصال خدمة Azure. حدد اشتراك Azure الذي يحتوي على سجل الحاوية الخاص بك.


azureResourceGroup - مجموعة الموارد
string. مطلوب عند connectionType = Azure Resource Manager && command != logout && command != package && command != save.

اسم مجموعة الموارد داخل الاشتراك. حدد مجموعة موارد Azure.


azureResourceGroup - مجموعة الموارد
string. مطلوب عند connectionType = Azure Resource Manager && command != logout && command != package.

اسم مجموعة الموارد داخل الاشتراك. حدد مجموعة موارد Azure.


kubernetesCluster - مجموعة Kubernetes
string. مطلوب عند connectionType = Azure Resource Manager && command != logout && command != package && command != save.

اسم نظام مجموعة AKS. حدد نظام مجموعة مدارة من Azure.


kubernetesCluster - مجموعة Kubernetes
string. مطلوب عند connectionType = Azure Resource Manager && command != logout && command != package.

اسم نظام مجموعة AKS. حدد نظام مجموعة مدارة من Azure.


useClusterAdmin - استخدام بيانات اعتماد مسؤول نظام المجموعة
boolean. ‏‏اختياري. استخدم عندما connectionType = Azure Resource Manager && command != logout && command != package && command != save. القيمة الافتراضية: false.

يستخدم بيانات اعتماد مسؤول نظام المجموعة بدلا من بيانات اعتماد مستخدم نظام المجموعة الافتراضية.


useClusterAdmin - استخدام بيانات اعتماد مسؤول نظام المجموعة
boolean. ‏‏اختياري. استخدم عندما connectionType = Azure Resource Manager && command != logout && command != package. القيمة الافتراضية: false.

يستخدم بيانات اعتماد مسؤول نظام المجموعة بدلا من بيانات اعتماد مستخدم نظام المجموعة الافتراضية.


kubernetesServiceConnection - اتصال خدمة Kubernetes
الاسم المستعار للإدخل: kubernetesServiceEndpoint. string. مطلوب عند connectionType = Kubernetes Service Connection && command != logout && command != package && command != save.

يحدد اتصال خدمة Kubernetes.


kubernetesServiceConnection - اتصال خدمة Kubernetes
الاسم المستعار للإدخل: kubernetesServiceEndpoint. string. مطلوب عند connectionType = Kubernetes Service Connection && command != logout && command != package.

يحدد اتصال خدمة Kubernetes.


namespace - مساحه الاسم
string. ‏‏اختياري. استخدم عندما command != logout && command != package && command != save.

مساحة الاسم التي تقوم بتشغيل الأوامر عليها kubectl . إذا لم يتم تحديدها، تستخدم المهمة مساحة الاسم الافتراضية. حدد مساحة اسم Kubernetes لاستخدامها. يمكنك تحديد مساحة اسم Tiller في القسم المتقدم من المهمة أو عن طريق تمرير --tiller-namespace الخيار كوسيطة.


namespace - مساحه الاسم
string. ‏‏اختياري. استخدم عندما command != logout && command != package.

مساحة الاسم التي تقوم بتشغيل الأوامر عليها kubectl . إذا لم يتم تحديدها، تستخدم المهمة مساحة الاسم الافتراضية. حدد مساحة اسم Kubernetes لاستخدامها. يمكنك تحديد مساحة اسم Tiller في القسم المتقدم من المهمة أو عن طريق تمرير --tiller-namespace الخيار كوسيطة.


azureSubscriptionForACR - اشتراك Azure ل Container Registry
الاسم المستعار للإدخل: azureSubscriptionEndpointForACR. string. مطلوب عند command == save.

يحدد اشتراك Azure الذي يحتوي على Azure Container Registry الخاص بك.


azureResourceGroupForACR - مجموعة الموارد
string. مطلوب عند command == save.

يحدد مجموعة موارد Azure التي تحتوي على سجل الحاوية الخاص بك.


azureContainerRegistry - Azure Container Registry
string. مطلوب عند command == save.

يحدد سجل حاويات Azure لاستخدامه لدفع مخططات Helm.


command - الامر
string. مطلوب القيم المسموح بها: create، delete، expose، get، init، ، install، login، logout، ، ls، package، ، rollback، save، upgrade. uninstall القيمة الافتراضية: ls.

يحدد أمر Helm.


command - الامر
string. مطلوب القيم المسموح بها: create، delete، expose، get، init، ، install، login، logout، lspackage، rollback، ، save. upgrade القيمة الافتراضية: ls.

يحدد أمر Helm.


command - الامر
string. مطلوب القيم المسموح بها: createو deleteو exposeو getو initو و installو loginو و logoutو lsو packageو rollbackupgradeو. القيمة الافتراضية: ls.

يحدد أمر Helm.


chartType - نوع المخطط
string. مطلوب عند command == install || command == upgrade. القيم المسموح بها: Name، FilePath (مسار الملف). القيمة الافتراضية: Name.

يحدد كيفية إدخال معلومات المخطط. يمكنك إما توفير اسم المخطط أو مسار المجلد/الملف إلى المخطط.


chartName - اسم المخطط
string. مطلوب عند chartType == Name.

اسم مرجع المخطط المراد تثبيته. يمكن أن يكون هذا عنوان URL أو اسم مخطط. على سبيل المثال، إذا كان اسم المخطط هو stable/mysql، يتم تشغيل helm install stable/mysqlالمهمة .


chartPath - مسار المخطط
string. مطلوب عند chartType == FilePath || command == package.

المسار إلى المخطط المراد تثبيته. يمكن أن يكون هذا مسارا إلى مخطط مجمع أو مسارا إلى دليل مخطط غير حزم. على سبيل المثال، إذا قمت بتحديد ./redis، يتم تشغيل helm install ./redisالمهمة . إذا كنت تستهلك مخططا تم نشره كأداة، فسيكون $(System.DefaultWorkingDirectory)/ARTIFACT-NAME/Charts/CHART-NAMEالمسار .


chartVersion - الإصدار
الاسم المستعار للإدخل: version. string. ‏‏اختياري. استخدم عندما command == package || command == install || command == upgrade.

يحدد إصدار المخطط الدقيق المراد تثبيته. إذا لم تحدد إصدار المخطط، تقوم المهمة بتثبيت أحدث إصدار. قم بتعيين الإصدار على المخطط إلى إصدار semver هذا.


chartVersion - الإصدار
الاسم المستعار للإدخل: version. string. ‏‏اختياري. استخدم عندما command == package.

يحدد إصدار المخطط الدقيق المراد تثبيته. إذا لم تحدد إصدار المخطط، تقوم المهمة بتثبيت أحدث إصدار. قم بتعيين الإصدار على المخطط إلى إصدار semver هذا.


releaseName - اسم الإصدار
string. ‏‏اختياري. استخدم عندما command == install || command == upgrade.

اسم الإصدار. إذا لم تحدد اسم الإصدار، فإن المهمة تقوم تلقائيا بخلق اسم لك. الإدخال releaseName صالح فقط ل install والأوامر upgrade .


overrideValues - تعيين القيم
string. ‏‏اختياري. استخدم عندما command == install || command == upgrade.

يحدد القيم في سطر الأوامر. يمكن لهذا الإدخال تحديد قيم متعددة أو منفصلة بفواصل: key1=val1,key2=val2.

يمكنك أيضا تحديد قيم متعددة عن طريق تحديدها بخط جديد، كما يلي:

  • key1=val1
  • key2=val2

إذا كانت لديك قيمة تحتوي على أسطر جديدة، فاستخدم valueFile الخيار . وإلا، فإن المهمة تتعامل مع السطر الجديد كمحدد. تنشئ المهمة أمر Helm باستخدام قيم المجموعة هذه. على سبيل المثال، يمكنك تعيين القيمة باستخدام أمر مثل ما يلي: helm install --set key1=val1 ./redis.


valueFile - ملف القيمة
string. ‏‏اختياري. استخدم عندما command == install || command == upgrade.

يحدد القيم في ملف YAML أو عنوان URL. على سبيل المثال، تحديد myvalues.yaml النتائج في helm install --values=myvals.yaml.


destination - الوجهه
string. ‏‏اختياري. استخدم عندما command == package. القيمة الافتراضية: $(Build.ArtifactStagingDirectory).

يحدد القيم في ملف YAML أو عنوان URL.


canaryimage - استخدم إصدار صورة الكناري.
boolean. ‏‏اختياري. استخدم عندما command == init. القيمة الافتراضية: false.

يحدد صورة Canary Tiller. استخدم أحدث إصدار قبل الإصدار من Tiller.


upgradetiller - ترقية تيلر
boolean. ‏‏اختياري. استخدم عندما command == init. القيمة الافتراضية: true.

إذا ، trueيقوم هذا الإدخال بترقية Tiller إذا تم تثبيت Tiller بالفعل.


updatedependency - تحديث التبعية
boolean. ‏‏اختياري. استخدم عندما command == install || command == package. القيمة الافتراضية: false.

إذا ، trueيحدث هذا الإدخال تحديث تبعية Helm قبل تثبيت المخطط. التحديثات التبعيات من requirements.yaml إلى charts/ الدليل قبل التعبئة.


save - حفظ
boolean. ‏‏اختياري. استخدم عندما command == package. القيمة الافتراضية: true.

يحفظ المخطط المجمع في مستودع المخطط المحلي عند تعيينه إلى true​.


install - تثبيت إذا لم يكن الإصدار موجودا.
boolean. ‏‏اختياري. استخدم عندما command == upgrade. القيمة الافتراضية: true.

إذا لم يكن الإصدار بهذا الاسم موجودا بالفعل، يقوم هذا الإدخال بتشغيل تثبيت.


recreate - إعادة إنشاء Pods.
boolean. ‏‏اختياري. استخدم عندما command == upgrade. القيمة الافتراضية: false.

يقوم بإعادة تشغيل pods للمورد، إذا كان ذلك ممكنا.


resetValues - إعادة تعيين القيم.
boolean. ‏‏اختياري. استخدم عندما command == upgrade. القيمة الافتراضية: false.

إعادة تعيين القيم إلى القيم المضمنة في المخطط.


force - القوه
boolean. ‏‏اختياري. استخدم عندما command == upgrade. القيمة الافتراضية: false.

فرض تحديث مورد من خلال إجراء حذف أو إعادة إنشاء، إذا لزم الأمر.


waitForExecution - انتظري
boolean. ‏‏اختياري. استخدم عندما command == init || command == install || command == upgrade. القيمة الافتراضية: true.

يحظر الإجراء حتى يكتمل تنفيذ الأمر.


arguments - الحجج
string. ‏‏اختياري. استخدم عندما command != login && command != logout.

خيارات أمر Helm.


enableTls - تمكين TLS
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package && command != save. القيمة الافتراضية: false.

تمكين استخدام SSL بين Helm وTiler.


enableTls - تمكين TLS
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package. القيمة الافتراضية: false.

تمكين استخدام SSL بين Helm وTiler.


caCert - شهادة CA
string. مطلوب عند enableTls == true && command != login && command != logout && command != package && command != save.

شهادة المرجع المصدق المستخدمة لإصدار شهادة لعميل Tiller وHelm.


caCert - شهادة CA
string. مطلوب عند enableTls == true && command != login && command != logout && command != package.

شهادة المرجع المصدق المستخدمة لإصدار شهادة لعميل Tiller وHelm.


certificate - شهاده
string. مطلوب عند enableTls == true && command != login && command != logout && command != package && command != save.

حدد شهادة Tiller أو شهادة عميل Helm.


certificate - شهاده
string. مطلوب عند enableTls == true && command != login && command != logout && command != package.

حدد شهادة Tiller أو شهادة عميل Helm.


privatekey - مفتاح
string. مطلوب عند enableTls == true && command != login && command != logout && command != package && command != save.

حدد مفتاح Tiller أو مفتاح عميل Helm.


privatekey - مفتاح
string. مطلوب عند enableTls == true && command != login && command != logout && command != package.

حدد مفتاح Tiller أو مفتاح عميل Helm.


tillernamespace - مساحة اسم Tiller
string. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package && command != save.

حدد مساحة اسم Kubernetes الخاصة ب Tiller.


tillernamespace - مساحة اسم Tiller
string. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package.

حدد مساحة اسم Kubernetes الخاصة ب Tiller.


failOnStderr - فشل عند الخطأ القياسي
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package && command != save. القيمة الافتراضية: false.

إذا كان هذا الإدخال هو true، تفشل هذه المهمة إذا تمت كتابة أي أخطاء في مسار الخطأ، أو إذا تمت كتابة أي بيانات إلى دفق الخطأ القياسي. وإلا، تعتمد المهمة على التعليمات البرمجية للخروج لتحديد الفشل.


failOnStderr - فشل عند الخطأ القياسي
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package. القيمة الافتراضية: true.

إذا كان هذا الإدخال هو true، تفشل هذه المهمة إذا تمت كتابة أي أخطاء في مسار الخطأ، أو إذا تمت كتابة أي بيانات إلى دفق الخطأ القياسي. وإلا، تعتمد المهمة على التعليمات البرمجية للخروج لتحديد الفشل.


publishPipelineMetadata - نشر بيانات تعريف البنية الأساسية لبرنامج ربط العمليات التجارية
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout && command != package && command != save. القيمة الافتراضية: true.

إذا كان هذا الإدخال هو true، فإن المهمة تجمع بيانات تعريف النشر وتنشرها.


chartNameForACR - اسم المخطط ل Azure Container Registry
string. مطلوب عند command == save.

اسم المخطط في Azure Container Registry.


chartPathForACR - مسار المخطط ل Azure Container Registry
string. مطلوب عند command == save.

مسار الملف إلى دليل المخطط في Azure Container Registry.


خيارات التحكم بالمهمة

تحتوي جميع المهام على خيارات التحكم بالإضافة إلى مدخلات المهام الخاصة بها. لمزيد من المعلومات، راجع خيارات التحكم وخصائص المهمة الشائعة.

متغيرات الإخراج

تحدد هذه المهمة متغيرات الإخراج التالية، والتي يمكنك استهلاكها في خطوات انتقال البيانات من الخادم والوظائف والمراحل.

helmExitCode
التعليمة البرمجية للخروج المنبعثة من تنفيذ أمر Helm المحدد.

helmOutput
الإخراج المنبعثة من تنفيذ أمر Helm المحدد.

لا شيء

الملاحظات

استخدم HelmDeploy@0 لنشر مجموعة Kubernetes أو تكوينها أو تحديثها في Azure Container Service عن طريق تشغيل أوامر Helm. Helm هي أداة تبسط توزيع تطبيقات Kubernetes وإدارتها باستخدام تنسيق حزم يسمى المخططات.

يمكنك تحديد إصدار ومشاركة وتثبيت وترقية حتى تطبيق Kubernetes الأكثر تعقيدا باستخدام Helm.

  • يساعدك Helm على دمج بيانات Kubernetes متعددة (yaml) مثل الخدمة والنشرات والتكوينات والمزيد في وحدة واحدة تسمى Helm Charts. لا تحتاج إما إلى اختراع أو استخدام رمز مميز أو أداة تقضم.
  • تساعدك مخططات Helm على إدارة تبعيات التطبيق والنشر بالإضافة إلى العودة إلى الحالة السابقة كوحدة. كما أنها سهلة الإنشاء والإصدار والنشر والمشاركة مع الفرق الشريكة الأخرى.

يحتوي Azure Pipelines على دعم مضمن لمخططات Helm:

  • يمكن استخدام مهمة مثبت أداة Helm لتثبيت الإصدار الصحيح من Helm على العوامل.
  • يمكن استخدام حزمة Helm ومهمة التوزيع لحزم التطبيق ونشره في مجموعة Kubernetes. يمكنك استخدام المهمة لتثبيت أو تحديث Tiller إلى مساحة اسم Kubernetes، للاتصال بأمان ب Tiller عبر TLS لنشر المخططات، أو لتشغيل أي أمر Helm مثل lint.
  • تدعم مهمة Helm الاتصال بخدمة Azure Kubernetes باستخدام اتصال خدمة Azure. يمكنك الاتصال بأي نظام مجموعة Kubernetes باستخدام kubeconfig أو حساب خدمة.
  • يمكن استكمال عمليات نشر Helm باستخدام مهمة Kubectl ؛ على سبيل المثال، إنشاء/تحديث، imagepullsecret، وغيرها.

اتصال الخدمة

يعمل HelmDeploy@0 مع نوعين من اتصالات الخدمة: Azure Resource Managerواتصال خدمة Kubernetes. راجع أمثلة على تكوين نوعي الاتصال هذين.

ملاحظة

اتصال الخدمة غير مطلوب إذا تم تحديد مورد بيئة يشير إلى مجموعة Kubernetes بالفعل في مرحلة المسار.

اعتبارات اتصال خدمة Kubernetes عند الوصول إلى AKS

يمكنك إنشاء اتصال خدمة Kubernetes مع أي من الخيارات التالية.

  • KubeConfig
  • حساب الخدمة
  • اشتراك Azure

لقطة شاشة لاختيار طريقة مصادقة اتصال خدمة Kubernetes.

عند تحديد خيار اشتراك Azure ، يجب أن يكون Kubernetes متاحا ل Azure DevOps في وقت تكوين اتصال الخدمة. قد تكون هناك أسباب مختلفة لتعذر إنشاء اتصال خدمة، على سبيل المثال قمت بإنشاء مجموعة خاصة أو أن نظام المجموعة لديه حسابات محلية معطلة. في هذه الحالات، لا يمكن ل Azure DevOps الاتصال بنظام المجموعة في وقت تكوين اتصال الخدمة وسترى شاشة تحميل مساحات الأسماء عالقة .

لقطة شاشة لاختيار مربع حوار مصادقة اتصال خدمة Kubernetes عالق عند تحميل مساحات الأسماء.

بدءا من Kubernetes 1.24، لم تعد الرموز المميزة طويلة العمر يتم إنشاؤها بشكل افتراضي. يوصي Kubernetes بعدم استخدام الرموز المميزة طويلة العمر. ونتيجة لذلك، لا تتمتع المهام التي تستخدم اتصال خدمة Kubernetes الذي تم إنشاؤه باستخدام خيار اشتراك Azure بالوصول إلى الرمز المميز الدائم المطلوب للمصادقة ولا يمكنها الوصول إلى مجموعة Kubernetes الخاصة بك. يؤدي هذا أيضا إلى مربع حوار مساحات أسماء التحميل المجمدة .

استخدام Azure Resource Manager Service Connection للوصول إلى AKS

بالنسبة لعملاء AKS، يوفر نوع اتصال خدمة Azure Resource Manager أفضل طريقة للاتصال بمجموعة خاصة، أو نظام مجموعة معطل للحسابات المحلية. لا يعتمد هذا الأسلوب على اتصال نظام المجموعة في الوقت الذي تقوم فيه بإنشاء اتصال خدمة. يتم تأجيل الوصول إلى AKS إلى وقت تشغيل البنية الأساسية لبرنامج ربط العمليات التجارية، والذي له المزايا التالية:

  • يمكن إجراء الوصول إلى نظام مجموعة AKS (خاص) من عامل مستضاف ذاتيا أو عامل مجموعة مقياس مع خط رؤية إلى نظام المجموعة.
  • يتم إنشاء رمز مميز لكل مهمة تستخدم اتصال خدمة Azure Resource Manager. يضمن هذا الاتصال ب Kubernetes برمز مميز قصير العمر، وهو توصية Kubernetes.
  • يمكن الوصول إلى AKS حتى عند تعطيل الحسابات المحلية.

الأسئلة المتداولة حول اتصال الخدمة

أتلقى رسالة الخطأ التالية: تعذر العثور على أي سر مقترن بحساب الخدمة. ماذا يحدث؟

أنت تستخدم اتصال خدمة Kubernetes مع خيار اشتراك Azure. نقوم بتحديث هذا الأسلوب لإنشاء رموز مميزة طويلة الأمد. ومن المتوقع أن يكون ذلك متاحا في منتصف أيار/مايو. ومع ذلك، يوصى بالبدء في استخدام نوع اتصال خدمة Azure وعدم استخدام الرموز المميزة طويلة الأمد وفقا لإرشادات Kubernetes.

أنا أستخدم AKS ولا أريد تغيير أي شيء، هل يمكنني الاستمرار في استخدام المهام مع اتصال خدمة Kubernetes؟

نقوم بتحديث هذا الأسلوب لإنشاء رموز مميزة طويلة الأمد. ومن المتوقع أن يكون ذلك متاحا في منتصف أيار/مايو. ومع ذلك، يرجى أن تدرك أن هذا النهج يتعارض مع إرشادات Kubernetes.

أنا أستخدم مهام Kubernetes واتصال خدمة Kubernetes ولكن ليس AKS. هل يجب أن أكون قلقا؟

ستستمر المهام في العمل كما كان من قبل.

هل ستتم إزالة نوع اتصال خدمة Kubernetes؟

تعمل مهام Kubernetes الخاصة بنا مع أي مجموعة Kubernetes، بغض النظر عن مكان تشغيلها. سيستمر اتصال خدمة Kubernetes في الوجود.

أنا عميل AKS وكل شيء يعمل بشكل جيد، هل يجب أن أتصرف؟

ليست هناك حاجة لتغيير أي شيء. إذا كنت تستخدم اتصال خدمة Kubernetes واشتراك Azure المحدد أثناء الإنشاء، فيجب أن تكون على دراية بإرشادات Kubernetes حول استخدام الرموز المميزة طويلة الأمد.

أقوم بإنشاء بيئة Kubernetes، وليس لدي خيار لاستخدام اتصالات الخدمة

في حالة عدم إمكانية الوصول إلى AKS أثناء وقت إنشاء البيئة، يمكنك استخدام بيئة فارغة وتعيين connectionType الإدخال إلى اتصال خدمة Azure Resource Manager.

لقد تم تكوين AKS باستخدام Azure Active Directory RBAC، ولا تعمل البنية الأساسية لبرنامج ربط العمليات التجارية الخاصة بي. هل ستحل هذه التحديثات ذلك؟

الوصول إلى Kubernetes عند تمكين AAD RBAC لا علاقة له بإنشاء الرمز المميز. لمنع مطالبة تفاعلية، سندعم kubelogin في تحديث مستقبلي.

قيم الأوامر

يقبل إدخال الأمر أحد أوامر helm التالية: create/delete/expose/get/init/install/login/logout/ls/package/rollback/upgrade. يتم توفير أمثلة في قسم الأمثلة .

يتم تعيين كل إدخال أمر إلى مجموعة من مدخلات المهمة. يتم تعيين الأوامر التي تعين إلى إدخال مهمة في كتلة بناء جملة YAML وفي جدول إدخالات المهمة

استكشاف الأخطاء وإصلاحها

تطرح مهمة HelmDeploy الخطأ "علامة غير معروفة: --wait" أثناء تشغيل "helm init --wait --client-only" على إصدار Helm 3.0.2.

هناك بعض التغييرات العاجلة بين Helm 2 وHelm 3. يتضمن أحدها إزالة الحول، وبالتالي helm init لم يعد الأمر مدعوما. الأمر إزالة: init عند استخدام إصدارات Helm 3.0+.

عند استخدام Helm 3، إذا تم تعيين System.debug إلى true وكانت ترقية Helm هي الأمر المستخدم، تفشل البنية الأساسية لبرنامج ربط العمليات التجارية على الرغم من نجاح الترقية.

هذه مشكلة معروفة مع Helm 3، لأنها تكتب بعض السجلات إلى stderr. يتم وضع علامة على مهمة نشر Helm على أنها فاشلة إذا كانت هناك سجلات ل stderr أو كانت التعليمات البرمجية للخروج غير صفرية. تعيين فشل إدخال المهمةOnStderr: خطأ لتجاهل السجلات المطبوعة إلى stderr.

أمثلة

Azure Resource Manager

يوضح مثال YAML هذا كيفية استخدام Azure Resource Manager للإشارة إلى مجموعة Kubernetes. يتم استخدام هذا مع أحد أوامر helm والقيم المناسبة المطلوبة للأمر:

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

يوضح مثال YAML هذا كيفية استخدام اتصال خدمة Kubernetes للإشارة إلى نظام مجموعة Kubernetes. يتم استخدام هذا مع أحد أوامر helm والقيم المناسبة المطلوبة للأمر:

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

الأوامر

يقبل إدخال الأمر أحد أوامر helm التالية: create/delete/expose/get/init/install/login/logout/ls/package/rollback/upgrade.

يوضح مثال YAML هذا الأمر ls :

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

أمر init

يوضح مثال YAML هذا الأمر init :

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

أمر التثبيت

يوضح مثال YAML هذا أمر التثبيت :

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

أمر الحزمة

يوضح مثال YAML هذا أمر الحزمة :

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

أمر الترقية

يوضح مثال YAML هذا أمر الترقية :

- 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

الأمر "حفظ"

يوضح مثال YAML هذا أمر الحفظ :

- 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 وتوقيعها

في هذا القسم، ستتعلم كيفية حزم مخططات Helm وتوقيعها في البنية الأساسية لبرنامج ربط العمليات التجارية.

إنشاء زوج مفاتيح عام خاص لتوقيع مخطط helm باستخدام GPG

  1. تنزيل GPG.

  2. قم بتشغيل موجه الأوامر في وضع المسؤول. قم بتشغيل الأمر التالي لإنشاء زوج مفاتيح عام خاص لتوقيع مخطط helm باستخدام gpg. أثناء إنشاء المفتاح، ستتم مطالبتك باسم المستخدم وعنوان البريد الإلكتروني. يتم استخدام "عنوان البريد الإلكتروني للاسم" لاحقا لتسمية زوج المفاتيح الخاصة والعامة الذي تم إنشاؤه.

    gpg --full-generate-key
    

    إنشاء مفتاح

  3. ستتم مطالبتك باستخدام عبارة المرور. امنح القيمة وانقر فوق موافق.

    لقطة شاشة توضح إعطاء عبارة المرور.

  4. بعد إنشاء المفتاح، يمكنك مشاهدة قائمة المفاتيح التي تحتوي على كل من الخاص والعام باستخدام الأمر التالي.

    • للاطلاع على قائمة المفاتيح الخاصة

      gpg --list-secret-keys
      

      مفاتيح خاصة

    • لمشاهدة قائمة المفاتيح العامة

      gpg --list-keys
      

      المفاتيح العامة

  5. قم بتخزين المفاتيح الخاصة والعامة في ملفين مختلفين باستخدام gpg الملحق كما هو موضح أدناه.

    • لمفتاح خاص
    gpg --export-secret-key 94325E18E53EDD99DD8339C3CFD9DAF0707CB788 contoso@microsoft.com > C:/somepath/privatekeys.gpg
    

    سترى ملف privatekeys.gpg الذي تم تصديره إلى المسار الذي ذكر أعلاه.

    • لمفتاح عام
    gpg --export-key 94325E18E53EDD99DD8339C3CFD9DAF0707CB788 contoso@microsoft.com > C:/somepath/publickey.gpg
    

    سترى ملف publickey.gpg الذي تم تصديره إلى المسار الذي ذكر أعلاه.

في Azure DevOps، احفظ ملف privatekey.gpg في قسم الملفات الآمنة للمكتبة.

مثال

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)

المتطلبات

المتطلبات الوصف
أنواع البنية الأساسية لبرنامج ربط العمليات التجارية YAML، الإصدار الكلاسيكي، الإصدار الكلاسيكي
يعمل على Agent, DeploymentGroup
المطالب بلا
القدرات لا تفي هذه المهمة بأي طلبات للمهام اللاحقة في الوظيفة.
قيود الأوامر أي
متغيرات Settable أي
إصدار الوكيل جميع إصدارات العامل المدعومة.
فئة المهمة نشر