如何在 git 的属性文件中使用管道变量

Cha*_*nna 2 kubernetes azure-devops azure-pipelines azure-pipelines-release-pipeline azure-aks

在 Azure 管道中,我下载了 kubernetes deployment.yml 属性文件,其中包含以下内容。

spec:
  imagePullSecrets:
  - name: some-secret
  containers:
  - name: container-name
    image: pathtoimage/data-processor:$(releaseVersion)
    imagePullPolicy: Always
    ports:
    - containerPort: 8088
    env:
Run Code Online (Sandbox Code Playgroud)

我的目的是从管道变量中获取值$(releaseVersion)。但似乎kubernetes任务不允许从管道变量访问这个值。

我尝试使用内联配置类型并且它有效。这意味着如果我将与内联内容相同的配置复制到kubernetes任务配置,它就可以工作。

无论如何,我可以使它适用于文件中的配置吗?

Mer*_*SFT 5

据我了解,您可能希望在构建执行时替换 deployment.yml 文件内容的变量。

您可以使用一个名为Replace Tokens 任务的任务(注意:此任务名称下的令牌与 PAToken 不同)。这是在设置 VSTS 构建/发布过程时支持用环境变量替换项目中文件值的任务。

首先从市场安装替换令牌,然后将替换令牌任务添加到您的管道中。

在 Root 目录中配置 .yml 文件路径。对我来说,我的目标文件在我本地的 Drop 文件夹下。然后,指出您要操作和替换的文件。

在此处输入图片说明

有关配置的更多参数,您可以查看我参考过的这个文档:https : //github.com/qetza/vsts-replacetokens-task#readme

注意:请在 Deploy to Kubernetes 任务之前执行此任务,以便更改可以应用于 Kubernetes 集群。

这里还有另一个示例博客可以供您参考。