HelmDeploy@1 - Helm grafikleri v1 görevini paketleme ve dağıtma
Helm komutlarını çalıştırarak Azure Container Service'te bir Kubernetes kümesini dağıtın, yapılandırın, güncelleştirin.
Sözdizimi
# Package and deploy Helm charts v1
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@1
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.
# Azure Container Registry
#azureSubscriptionForACR: # string. Alias: azureSubscriptionEndpointForACR. Required when command == login || command == package. Azure subscription for Container Registry.
#azureResourceGroupForACR: # string. Required when command == login || command == package. Resource group.
#azureContainerRegistry: # string. Required when command == login || command == package. Azure Container Registry.
# Commands
command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | '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 == package. Chart Name For Azure Container Registry.
#chartPathForACR: # string. Required when command == package. Chart Path for Azure Container Registry.
# 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: false # boolean. Optional. Use when command != login && command != logout && command != package. Fail on Standard Error. Default: false.
#publishPipelineMetadata: true # boolean. Optional. Use when command != login && command != logout && command != package. Publish pipeline metadata. Default: true.
Giriş
connectionType
-
Bağlantı Türü
string
.
command != logout && command != package
gerekir. İzin verilen değerler: Azure Resource Manager
, Kubernetes Service Connection
, None
. Varsayılan değer: Azure Resource Manager
.
Azure Hizmet Bağlantısı'nı kullanarak bir Azure Kubernetes Service'e bağlanmak için 'Azure Resource Manager'ı seçin. Kubeconfig veya Hizmet Hesabı kullanarak herhangi bir Kubernetes kümesine bağlanmak için 'Kubernetes Hizmet Bağlantısı'nı seçin.
Azure aboneliği
Giriş diğer adı: azureSubscriptionEndpoint
.
string
.
connectionType = Azure Resource Manager && command != logout && command != package
gerekir.
Azure Container Registry'nizin bulunduğu bir Azure aboneliği seçin.
kaynak grubu
string
.
connectionType = Azure Resource Manager && command != logout && command != package
gerekir.
Bir Azure Kaynak Grubu seçin.
Kubernetes kümesi
string
.
connectionType = Azure Resource Manager && command != logout && command != package
gerekir.
Bir Azure Yönetilen Kümesi seçin.
useClusterAdmin
-
Küme yöneticisi kimlik bilgilerini kullanma
boolean
. Opsiyonel.
connectionType = Azure Resource Manager && command != logout && command != package
olduğunda kullanın. Varsayılan değer: false
.
Varsayılan küme kullanıcı kimlik bilgileri yerine küme yöneticisi kimlik bilgilerini kullanın.
Kubernetes Service Connection
Giriş diğer adı: kubernetesServiceEndpoint
.
string
.
connectionType = Kubernetes Service Connection && command != logout && command != package
gerekir.
Bir Kubernetes hizmet bağlantısı seçin.
ad alanı
string
. Opsiyonel.
command != logout && command != package
olduğunda kullanın.
Kullanılacak K8 ad alanını belirtin. Tiller ad alanını kullanma, görevin gelişmiş bölümünde veya --tiller-namespace seçeneğini bağımsız değişken olarak geçirerek belirtilebilir.
Container Registry için Azure aboneliğini
Giriş diğer adı: azureSubscriptionEndpointForACR
.
string
.
command == login || command == package
gerekir.
Azure Container Registry'nizin bulunduğu bir Azure aboneliği seçin.
kaynak grubu
string
.
command == login || command == package
gerekir.
Container Registry'nizin bulunduğu bir Azure Kaynak Grubu seçin.
Azure Container Registry
string
.
command == login || command == package
gerekir.
Helm grafikleri için kullanılacak bir Azure Container Registry seçin.
command
-
Komut
string
. Gerekli. İzin verilen değerler: create
, delete
, expose
, get
, init
, install
, login
, logout
, ls
, package
, rollback
, upgrade
, uninstall
. Varsayılan değer: ls
.
Bir helm komutu seçin.
chartType
-
Grafik Türü
string
.
command == install || command == upgrade
gerekir. İzin verilen değerler: Name
, FilePath
(Dosya Yolu). Varsayılan değer: Name
.
Grafik bilgilerini nasıl girmek istediğinizi seçin. Grafiğin adını veya grafiğe klasör/dosya yolu sağlayabilirsiniz.
chartName
-
Grafik Adı
string
.
chartType == Name
gerekir.
Yüklenecek grafik başvurusu, bu bir URL veya grafik adı olabilir. Örneğin, grafik adı 'stable/mysql' ise, görev 'helm install stable/mysql' komutunu çalıştırır.
chartPath
-
Grafik Yolu
string
.
chartType == FilePath || command == package
gerekir.
Yüklenecek grafiğin yolu. Bu, paketlenmiş bir grafiğin yolu veya paketlenmemiş grafik dizinine giden yol olabilir. Örneğin, './redis' belirtilirse görev 'helm install ./redis' komutunu çalıştırır.
chartVersion
-
Sürüm
Giriş diğer adı: version
.
string
. Opsiyonel.
command == package || command == install || command == upgrade
olduğunda kullanın.
Yüklenecek tam grafik sürümünü belirtin. Bu belirtilmezse en son sürüm yüklenir. Grafikteki sürümü bu semver sürümüne ayarlayın.
releaseName
-
Yayın Adı
string
. Opsiyonel.
command == install || command == upgrade
olduğunda kullanın.
Sürüm adı. Belirtilmezse sizin için otomatik olarak oluşturulur.
overrideValues
-
Değer Ayarlama
string
. Opsiyonel.
command == install || command == upgrade
olduğunda kullanın.
Komut satırında değerleri ayarlayın (virgül veya yeni satırlarla birden çok veya ayrı değer belirtebilir: key1=val1,key2=val2 veya
key1=val1
key2=val2
). Görev, bu ayarlanan değerleri kullanarak helm komutunu oluşturur. Örneğin helm install --set key1=val1 ./redis.
valueFile
-
Değer Dosyası
string
. Opsiyonel.
command == install || command == upgrade
olduğunda kullanın.
YAML dosyasındaki veya URL'deki değerleri belirtin. Örneğin, myvalues.yaml belirtilmesi 'helm install --values=myvals.yaml' ile sonuçlanır.
hedef
string
. Opsiyonel.
command == package
olduğunda kullanın. Varsayılan değer: $(Build.ArtifactStagingDirectory)
.
YAML dosyasındaki veya URL'deki değerleri belirtin.
canaryimage
-
Kanarya görüntüsü sürümünü kullanın.
boolean
. Opsiyonel.
command == init
olduğunda kullanın. Varsayılan değer: false
.
Tiller'ın en son yayın öncesi sürümü olan Kanarya Tiller görüntüsünü kullanın.
Tiller'
boolean
. Opsiyonel.
command == init
olduğunda kullanın. Varsayılan değer: true
.
Tiller zaten yüklüyse yükseltin.
Bağımlılık güncelleştirme
boolean
. Opsiyonel.
command == install || command == package
olduğunda kullanın. Varsayılan değer: false
.
Grafiği yüklemeden önce helm bağımlılık güncelleştirmesini çalıştırın. Paketlemeden önce 'requirements.yaml' olan bağımlılıkları dir 'charts/' olarak güncelleştirin.
save
-
Kaydet
boolean
. Opsiyonel.
command == package
olduğunda kullanın. Varsayılan değer: true
.
Paketlenmiş grafiği yerel grafik deposuna kaydedin (varsayılan true).
install
-
Sürüm yoksa yükle'yi seçin.
boolean
. Opsiyonel.
command == upgrade
olduğunda kullanın. Varsayılan değer: true
.
Bu ada sahip bir sürüm yoksa bir yükleme çalıştırın.
recreate
-
Podları yeniden oluşturun.
boolean
. Opsiyonel.
command == upgrade
olduğunda kullanın. Varsayılan değer: false
.
Varsa kaynak için podları yeniden başlatır.
Değerleri Sıfırla'yı resetValues
- .
boolean
. Opsiyonel.
command == upgrade
olduğunda kullanın. Varsayılan değer: false
.
Değerleri grafikte yerleşik olanlarla sıfırlayın.
force
-
Zorlama
boolean
. Opsiyonel.
command == upgrade
olduğunda kullanın. Varsayılan değer: false
.
Gerekirse kaynak güncelleştirmesini silme/yeniden oluşturma yoluyla zorlama.
waitForExecution
-
Bekle
boolean
. Opsiyonel.
command == init || command == install || command == upgrade
olduğunda kullanın. Varsayılan değer: true
.
Komut yürütme tamamlanana kadar engelle.
bağımsız değişkenleri
string
. Opsiyonel.
command != login && command != logout
olduğunda kullanın.
Helm komut seçenekleri.
TLS etkinleştirmeyi
boolean
. Opsiyonel.
command != login && command != logout && command != package
olduğunda kullanın. Varsayılan değer: false
.
Helm ve Tiller arasında SSL kullanılmasını sağlar.
CA sertifikası
string
.
enableTls == true && command != login && command != logout && command != package
gerekir.
Çapa makinesi ve helm istemcisi için sertifika vermek için kullanılan CA sertifikası.
sertifika
string
.
enableTls == true && command != login && command != logout && command != package
gerekir.
Tiller sertifikası veya Helm istemci sertifikası belirtin.
privatekey
-
Anahtar
string
.
enableTls == true && command != login && command != logout && command != package
gerekir.
Tiller Anahtarını veya Helm istemci anahtarını belirtin.
tillernamespace
-
Tiller ad alanı
string
. Opsiyonel.
command != login && command != logout && command != package
olduğunda kullanın.
Çapa makinesi K8 ad alanını belirtin.
standart hata başarısız
boolean
. Opsiyonel.
command != login && command != logout && command != package
olduğunda kullanın. Varsayılan değer: false
.
Bu doğruysa, 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ış kodunu kullanacaktır.
publishPipelineMetadata
-
İşlem hattı meta verilerini yayımlama
boolean
. Opsiyonel.
command != login && command != logout && command != package
olduğunda kullanın. Varsayılan değer: true
.
Bu doğruysa, görev dağıtım meta verilerini toplar ve yayımlar.
Azure Container Registry için
string
.
command == package
gerekir.
Grafiğin Azure Container Registry'de depolanacağı grafik adı.
Azure Container Registry için
string
.
command == package
gerekir.
Grafik dizininin yolu.
Görev denetimi seçenekleri
Tüm görevlerin, 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örevaşağıdaki
helmExitCode
Belirtilen Helm komutunun yürütülmesinden yayılan Çıkış kodu
helmOutput
Belirtilen Helm komutunun yürütülmesinden yayılan çıktı
Açıklamalar
HelmDeploy@1
görevi için önemli bir değişiklik, helm grafiği komutlarının kaldırılmasıdır:
-
helm chart
alt komutu kaldırıldı -
helm chart push
kaldırıldı -
helm chart remove
kaldırıldı -
helm chart save
helm package
ile değiştirildi -
helm save
kaldırıldı
Gereksinim -leri
Gereksinim | Açıklama |
---|---|
İşlem hattı türleri | YAML, Klasik derleme, Klasik sürüm |
Üzerinde çalışır | Agent, DeploymentGroup |
Talepleri | Hiç kimse |
Özellikleri | Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz. |
Komut kısıtlamaları | Herhangi |
Ayarlanabilir değişkenleri | Herhangi |
Aracı sürümü | Desteklenen tüm aracı sürümleri. |
Görev kategorisi | Dağıtmak |