Azure管道环境和头盔
我有一个azure管道,我正在使用它来生成和推进掌舵图。在这个管道中,我有一个使用Azure管道环境和头盔,azure,kubernetes,azure-devops,azure-pipelines,kubernetes-helm,Azure,Kubernetes,Azure Devops,Azure Pipelines,Kubernetes Helm,我有一个azure管道,我正在使用它来生成和推进掌舵图。在这个管道中,我有一个使用HelmDeploy0任务的部署阶段。此任务需要一个kubernetesServiceEndpoint。因此,我也选择使用管道环境,并将我的dev Kubernetes集群配置为我的dev环境,以便在管道中使用。我不确定该任务将如何使用该环境,因为我必须假设Azure DevOps在使用该环境时必须与集群进行身份验证,因此,只需安装helm chart即可。不幸的是,0任务需要此serviceendpoint密钥。
HelmDeploy0
任务的部署阶段。此任务需要一个kubernetesServiceEndpoint
。因此,我也选择使用管道环境,并将我的dev Kubernetes集群配置为我的dev环境,以便在管道中使用。我不确定该任务将如何使用该环境,因为我必须假设Azure DevOps在使用该环境时必须与集群进行身份验证,因此,只需安装helm chart即可。不幸的是,0
任务需要此serviceendpoint密钥。如有任何见解,将不胜感激。下面是管道阶段的一个片段
- stage: Dev
displayName: Deploy to Dev
dependsOn: Build
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
jobs:
- deployment:
displayName: Deploy $(projName)
environment: 'Dev'
strategy:
runOnce:
preDeploy:
steps:
- task: HelmInstaller@1
inputs:
helmVersionToInstall: latest
deploy:
steps:
- task: HelmDeploy@0
displayName: Install Helm Chart
inputs:
command: install
chartName: $(REGISTRY_NAME)/helm/$(projName)
arguments: --version $(tag)
releaseName: $(projName)
注意:是的,我知道变量不能用作显示名称,它现在用于保护任何IP。您可能需要在环境部分显式指定Kubernetes群集资源名称。见下文:
- deployment:
environment:
name: Dev # name of the environment to run this job on.
resourceName: cluster-resource-name # name of the resource in the environment to record the deployments against
resourceType: Kubernetes
strategy:
...
您还可以尝试使用shorten语法:environment:environmentName.resourceName
。如果shorten语法无法找到资源,则需要使用上述语法提供resourceType
。见文件
部署作业的步骤会自动从部署作业所针对的资源继承服务连接详细信息
您可以将部署目标的范围限定到环境中的特定资源。这允许您记录环境中特定资源的部署历史。部署作业的步骤会自动从部署作业所针对的资源继承服务连接详细信息
查看信息。您好,您是否有机会查看下面的答案。进展如何?你的建议成功了。我甚至能够构建一个部署模板来传递这些信息。非常感谢!我已经在下面标出了你的答案。