HelmDeploy@1 - Helm 차트 v1 작업 패키지 및 배포
Helm 명령을 실행하여 Azure Container Service에서 Kubernetes 클러스터를 배포, 구성, 업데이트합니다.
통사론
# 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.
입력
connectionType
-
연결 형식
string
.
command != logout && command != package
때 필요합니다. 허용되는 값: Azure Resource Manager
, Kubernetes Service Connection
, None
. 기본값: Azure Resource Manager
.
'Azure Resource Manager'를 선택하여 Azure 서비스 연결을 사용하여 Azure Kubernetes Service에 연결합니다. 'Kubernetes 서비스 연결'을 선택하여 kubeconfig 또는 서비스 계정을 사용하여 Kubernetes 클러스터에 연결합니다.
Azure 구독
입력 별칭: azureSubscriptionEndpoint
.
string
.
connectionType = Azure Resource Manager && command != logout && command != package
때 필요합니다.
Azure Container Registry가 있는 Azure 구독을 선택합니다.
azureResourceGroup
-
리소스 그룹
string
.
connectionType = Azure Resource Manager && command != logout && command != package
때 필요합니다.
Azure 리소스 그룹을 선택합니다.
Kubernetes 클러스터
string
.
connectionType = Azure Resource Manager && command != logout && command != package
때 필요합니다.
Azure Managed Cluster를 선택합니다.
useClusterAdmin
-
클러스터 관리자 자격 증명 사용
boolean
. 선택적.
connectionType = Azure Resource Manager && command != logout && command != package
때 사용합니다. 기본값: false
.
기본 클러스터 사용자 자격 증명 대신 클러스터 관리자 자격 증명을 사용합니다.
Kubernetes Service 연결
입력 별칭: kubernetesServiceEndpoint
.
string
.
connectionType = Kubernetes Service Connection && command != logout && command != package
때 필요합니다.
Kubernetes 서비스 연결을 선택합니다.
namespace
-
네임스페이스
string
. 선택적.
command != logout && command != package
때 사용합니다.
사용할 K8 네임스페이스를 지정합니다. 작업의 고급 섹션에서 또는 --tiller-namespace 옵션을 인수로 전달하여 Tiller 네임스페이스를 사용할 수 있습니다.
Container Registry 대한 Azure 구독
입력 별칭: azureSubscriptionEndpointForACR
.
string
.
command == login || command == package
때 필요합니다.
Azure Container Registry가 있는 Azure 구독을 선택합니다.
azureResourceGroupForACR
-
리소스 그룹
string
.
command == login || command == package
때 필요합니다.
Container Registry가 있는 Azure 리소스 그룹을 선택합니다.
Azure Container Registry
string
.
command == login || command == package
때 필요합니다.
Helm 차트에 사용할 Azure Container Registry를 선택합니다.
command
-
명령
string
. 필수. 허용되는 값: create
, delete
, expose
, get
, init
, install
, login
, logout
, ls
, package
, rollback
, upgrade
, uninstall
. 기본값: 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'를 실행합니다.
chartVersion
-
버전
입력 별칭: version
.
string
. 선택적.
command == package || command == install || command == upgrade
때 사용합니다.
설치할 정확한 차트 버전을 지정합니다. 지정하지 않으면 최신 버전이 설치됩니다. 차트의 버전을 이 셈버 버전으로 설정합니다.
releaseName
-
릴리스 이름
string
. 선택적.
command == install || command == upgrade
때 사용합니다.
릴리스 이름입니다. 지정되지 않은 경우 자동으로 생성됩니다.
overrideValues
-
값 설정
string
. 선택적.
command == install || command == upgrade
때 사용합니다.
명령줄에서 값 설정(쉼표 또는 줄 바꿈을 사용하여 여러 값 또는 별도의 값을 지정할 수 있습니다. key1=val1,key2=val2 또는
key1=val1
key2=val2
). 태스크는 이러한 집합 값을 사용하여 helm 명령을 생성합니다. 예를 들어 helm 설치 --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
.
최신 시험판 버전의 Tiller 카나리아 틸러 이미지를 사용합니다.
upgradetiller
-
업그레이드 Tiller
boolean
. 선택적.
command == init
때 사용합니다. 기본값: true
.
Tiller가 이미 설치된 경우 업그레이드합니다.
updatedependency
-
종속성 업데이트
boolean
. 선택적.
command == install || command == package
때 사용합니다. 기본값: false
.
차트를 설치하기 전에 helm 종속성 업데이트를 실행합니다. 패키징하기 전에 종속성을 'requirements.yaml'에서 dir 'charts/'로 업데이트합니다.
save
-
저장
boolean
. 선택적.
command == package
때 사용합니다. 기본값: true
.
패키지된 차트를 로컬 차트 리포지토리에 저장합니다(기본값 true).
install
-
릴리스가 없는 경우 설치합니다.
boolean
. 선택적.
command == upgrade
때 사용합니다. 기본값: true
.
이 이름의 릴리스가 아직 없는 경우 설치를 실행합니다.
recreate
-
Pod를 다시 만듭니다.
boolean
. 선택적.
command == upgrade
때 사용합니다. 기본값: false
.
해당하는 경우 리소스에 대한 Pod 다시 시작을 수행합니다.
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 명령 옵션입니다.
TLS 사용하도록
boolean
. 선택적.
command != login && command != logout && command != package
때 사용합니다. 기본값: false
.
Helm과 Tiller 간에 SSL을 사용할 수 있습니다.
caCert
-
CA 인증서
string
.
enableTls == true && command != login && command != logout && command != package
때 필요합니다.
tiller 및 helm 클라이언트에 대한 인증서를 발급하는 데 사용되는 CA 인증서입니다.
certificate
-
인증서
string
.
enableTls == true && command != login && command != logout && command != package
때 필요합니다.
Tiller 인증서 또는 Helm 클라이언트 인증서를 지정합니다.
privatekey
-
키
string
.
enableTls == true && command != login && command != logout && command != package
때 필요합니다.
Tiller 키 또는 Helm 클라이언트 키를 지정합니다.
tillernamespace
-
Tiller 네임스페이스
string
. 선택적.
command != login && command != logout && command != package
때 사용합니다.
tiller의 K8 네임스페이스를 지정합니다.
표준 오류
boolean
. 선택적.
command != login && command != logout && command != package
때 사용합니다. 기본값: false
.
이 경우 오류가 오류 파이프라인에 기록되거나 표준 오류 스트림에 데이터가 기록되는 경우 이 작업이 실패합니다. 그렇지 않으면 태스크는 종료 코드를 사용하여 오류를 확인합니다.
파이프라인 메타데이터 게시
boolean
. 선택적.
command != login && command != logout && command != package
때 사용합니다. 기본값: true
.
이 경우 태스크는 배포 메타데이터를 수집하고 게시합니다.
Azure Container Registry 대한
string
.
command == package
때 필요합니다.
차트가 Azure Container Registry에 저장될 차트 이름입니다.
Azure Container Registry 대한
string
.
command == package
때 필요합니다.
차트 디렉터리의 경로입니다.
작업 제어 옵션
모든 작업에는 작업 입력 외에도 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성참조하세요.
출력 변수
이 작업은 다운스트림 단계, 작업 및 단계에서 사용할 수 있는 다음 출력 변수정의합니다.
helmExitCode
지정된 Helm 명령의 실행에서 내보낸 종료 코드
helmOutput
지정된 Helm 명령의 실행에서 내보낸 출력
발언
HelmDeploy@1
작업의 주요 변경 사항은 helm 차트 명령이 제거된다는 것입니다.
-
helm chart
하위 명령이 제거되었습니다. -
helm chart push
제거되었습니다. -
helm chart remove
제거되었습니다. -
helm chart save
helm package
-
helm save
제거되었습니다.