-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Open
Labels
Description
New issue checklist
- I searched for existing GitHub issues
- I read pipeline troubleshooting guide
- I checked how to collect logs
Task name
HelmDeploy@1
Task version
1.263.0
Issue Description
During update from HelmDeploy@0 to HelmDeploy@1 I've got strange issue.
Task should accept path to helm folder, pack it and push to ACR as OCI artefact.
helm v3.6.0, HelmDeploy@0
- task: HelmDeploy@0
displayName: "Helm: build & push to ACR"
env:
HELM_EXPERIMENTAL_OCI: $(HELM_EXPERIMENTAL_OCI)
inputs:
azureSubscriptionForACR: ${{ variables.ACR_AZURE_SERVICE_CONNECTION }}
azureContainerRegistry: $(ACR_REGISTRY_HOST)
azureResourceGroupForACR: $(ACR_AZURE_RESOURCE_GROUP)
command: 'save'
chartNameForACR: "$(repository_name):$(version_tag)"
chartPathForACR: "$(helm_chart_folder)"
was updated to
- task: HelmDeploy@1
displayName: "Helm: build & push to ACR"
env:
HELM_EXPERIMENTAL_OCI: $(HELM_EXPERIMENTAL_OCI)
inputs:
connectionType: 'Azure Resource Manager'
#kubernetesServiceConnection: "N/A" # <- this value is required despite 'Azure Resource Manager' connectionType is used
azureSubscriptionForACR: ${{ variables.ACR_AZURE_SERVICE_CONNECTION }}
azureContainerRegistry: $(ACR_REGISTRY_HOST)
azureResourceGroupForACR: $(ACR_AZURE_RESOURCE_GROUP)
command: 'push'
chartPath: "$(helm_chart_folder)"
remoteRepo: $(repository_name)
chartNameForACR: "$(repository_name):$(version_tag)"
chartPathForACR: "$(helm_chart_folder)"
But task fails with error
##[error]Error: Input required: kubernetesServiceEndpoint
I'm using ARM connection, we have no k8s serviceConnections to use.
Of course, other serviceConnections then k8s are failing on start since they are not k8s service connections.
Previous save command were used to create local .tgz file and due to having chartNameForACR and chartPathForACR, were automatically pushed to ACR.
Environment type (Please select at least one enviroment where you face this issue)
- Self-Hosted
- Microsoft Hosted
- VMSS Pool
- Container
Azure DevOps Server type
dev.azure.com (formerly visualstudio.com)
Azure DevOps Server Version (if applicable)
No response
Operation system
Ubuntu 24.04.3
Relevant log output
##[error]Error: Input required: kubernetesServiceEndpointFull task logs with system.debug enabled
##[debug]Evaluating condition for step: 'Helm: build & push to ACR' ##[debug]Evaluating: SucceededNode() ##[debug]Evaluating SucceededNode: ##[debug]=> True ##[debug]Result: True Starting: Helm: build & push to ACR ============================================================================== Task : Package and deploy Helm charts Description : Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands Version : 1.263.0 Author : Microsoft Corporation Help : https://aka.ms/azpipes-helm-tsg ============================================================================== ##[debug]Using node path: /usr/local/vss-agent/4.261.0/externals/node20_1/bin/node ##[debug]agent.TempDirectory=/mnt/vss/_work/_temp ##[debug]loading inputs and endpoints ##[debug]loading INPUT_CONNECTIONTYPE ##[debug]loading INPUT_USECLUSTERADMIN ##[debug]loading INPUT_AZURESUBSCRIPTIONENDPOINTFORACR ##[debug]loading INPUT_AZURERESOURCEGROUPFORACR ##[debug]loading INPUT_AZURECONTAINERREGISTRY ##[debug]loading INPUT_COMMAND ##[debug]loading INPUT_CHARTTYPE ##[debug]loading INPUT_CHARTPATH ##[debug]loading INPUT_REMOTEREPO ##[debug]loading INPUT_VALUEFILE ##[debug]loading INPUT_DESTINATION ##[debug]loading INPUT_CANARYIMAGE ##[debug]loading INPUT_UPGRADETILLER ##[debug]loading INPUT_UPDATEDEPENDENCY ##[debug]loading INPUT_SAVE ##[debug]loading INPUT_INSTALL ##[debug]loading INPUT_RECREATE ##[debug]loading INPUT_RESETVALUES ##[debug]loading INPUT_FORCE ##[debug]loading INPUT_WAITFOREXECUTION ##[debug]loading INPUT_ENABLETLS ##[debug]loading INPUT_FAILONSTDERR ##[debug]loading INPUT_PUBLISHPIPELINEMETADATA ##[debug]loading INPUT_CHARTNAMEFORACR ##[debug]loading INPUT_CHARTPATHFORACR ##[debug]loading ENDPOINT_AUTH_c924e97e-edac-427e-98d7-6453e135d566 ##[debug]loading ENDPOINT_AUTH_SCHEME_c924e97e-edac-427e-98d7-6453e135d566 ##[debug]loading ENDPOINT_AUTH_PARAMETER_c924e97e-edac-427e-98d7-6453e135d566_SERVICEPRINCIPALID ##[debug]loading ENDPOINT_AUTH_PARAMETER_c924e97e-edac-427e-98d7-6453e135d566_AUTHENTICATIONTYPE ##[debug]loading ENDPOINT_AUTH_PARAMETER_c924e97e-edac-427e-98d7-6453e135d566_TENANTID ##[debug]loading ENDPOINT_AUTH_PARAMETER_c924e97e-edac-427e-98d7-6453e135d566_SERVICEPRINCIPALKEY ##[debug]loading ENDPOINT_AUTH_SYSTEMVSSCONNECTION ##[debug]loading ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION ##[debug]loading ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN ##[debug]loading SECRET_AD_FEEDBACK_CLIENTSECRET ##[debug]loading SECRET_DOCKERSCOUTPAT ##[debug]loading SECRET_APP_INSIGHTS_INSTRUMENTATION_KEY ##[debug]loading SECRET_SYSTEM_ACCESSTOKEN ##[debug]loading SECRET_APP_INSIGHTS_INGESTION_ENDPOINT ##[debug]loading SECRET_AD_ONETALENT_CLIENTSECRET ##[debug]loading SECRET_SEQ_APIKEY ##[debug]loading SECRET_CLIENT_SECRET ##[debug]loading SECRET_APP_INSIGHTS_APPLICATION_ID ##[debug]loading SECRET_APP_INSIGHTS_LIVE_ENDPOINT ##[debug]loading SECRET_CONTAINER_AUTHENTICATIONTOKEN ##[debug]loading SECRET_APPINSIGHTS_CONNSTRING ##[debug]loaded 46 ##[debug]Agent.ProxyUrl=undefined ##[debug]Agent.CAInfo=undefined ##[debug]Agent.ClientCert=undefined ##[debug]Agent.SkipCertValidation=undefined ##[debug]namespace=undefined ##[debug]System.TeamFoundationCollectionUri= ##[debug]System.HostType=build ##[debug]System.DefaultWorkingDirectory=/mnt/vss/_work/1/s ##[debug]Build.SourceBranchName=main ##[debug]Build.Repository.Provider=TfsGit ##[debug]Build.Repository.Uri= ##[debug]namespace=undefined ##[debug]check path : /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/task.json ##[debug]adding resource file: /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/task.json ##[debug]system.culture=en-US ##[debug]check path : /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/node_modules/azure-pipelines-tasks-azure-arm-rest/module.json ##[debug]adding resource file: /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/node_modules/azure-pipelines-tasks-azure-arm-rest/module.json ##[debug]system.culture=en-US ##[debug]command=push ##[debug]connectionType=Azure Resource Manager ##[debug]connectionType=Azure Resource Manager ##[debug]connectionType=Azure Resource Manager ##[debug]azureSubscriptionEndpoint=undefined ##[debug]connectionType=Azure Resource Manager ##[debug]azureSubscriptionEndpoint=undefined ##[debug]Agent.ProxyUrl=undefined ##[debug]Agent.CAInfo=undefined ##[debug]Agent.ClientCert=undefined ##[debug]check path : /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/node_modules/azure-pipelines-tool-lib/lib.json ##[debug]adding resource file: /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/node_modules/azure-pipelines-tool-lib/lib.json ##[debug]system.culture=en-US ##[debug]check path : /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/node_modules/azure-pipelines-tasks-kubernetes-common/module.json ##[debug]adding resource file: /mnt/vss/_work/_tasks/HelmDeploy_afa7d54d-537b-4dc8-b60a-e0eeea2c9a87/1.263.0/node_modules/azure-pipelines-tasks-kubernetes-common/module.json ##[debug]system.culture=en-US ##[debug]task result: Failed ##[error]Error: Input required: kubernetesServiceEndpoint ##[debug]Processed: ##vso[task.issue type=error;source=TaskInternal;correlationId=06634c3a-f880-442d-88b5-e8554afd1968;]Error: Input required: kubernetesServiceEndpoint ##[debug]Processed: ##vso[task.complete result=Failed;]Error: Input required: kubernetesServiceEndpoint Finishing: Helm: build & push to ACR
Repro steps
# With helm #3.19.0
- task: HelmDeploy@1
displayName: "Helm: build & push to ACR"
env:
HELM_EXPERIMENTAL_OCI: $(HELM_EXPERIMENTAL_OCI)
inputs:
connectionType: 'Azure Resource Manager'
#kubernetesServiceConnection: "N/A" <- this value is required despite 'Azure Resource Manager' connectionType is used
azureSubscriptionForACR: ${{ variables.ACR_AZURE_SERVICE_CONNECTION }}
azureContainerRegistry: $(ACR_REGISTRY_HOST)
azureResourceGroupForACR: $(ACR_AZURE_RESOURCE_GROUP)
command: 'push'
chartPath: "$(helm_chart_folder)"
remoteRepo: $(repository_name)
chartNameForACR: "$(repository_name):$(version_tag)"
chartPathForACR: "$(helm_chart_folder)"