您如何在Azure DevOps管道上将.properties文件设置为某种环境变量?

问题描述 投票:0回答:1

[您看到的是,我已将Bitbucket存储库中的Android项目连接到Azure DevOps管道。直到我设置一个apikeys.properties文件为止,管道运行良好,我将其放置在gitignore上,因为显然API密钥是秘密的。

我通过应用级build.gradle运行了Android项目。只要我在通常情况下在本地计算机和同事的计算机中说了properties文件,该项目就可以正常构建。

使Azure DevOps的管道变量似乎无法在我的管道中正常运行,无论是秘密还是其他方式:https://docs.microsoft.com/en-us/azure/devops/pipelines/process/variables

Adding variables in Azure DevOps pipeline

还有另一种选择,Kubernetes,但是我不确定如何进行此选择:https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/

Kubernetes?

还是我应该放弃通过.properties文件设置环境变量的追求?

非常有义务!

android azure-devops azure-pipelines properties-file
1个回答
0
投票

根据您的标题和第一个屏幕截图,您是要使用APPCENTER_DEV_KEY秘密变量作为yaml中的环境变量吗?如果是,首先要弄清楚的是,我们不应该在yaml文件中设置秘密变量,而应该使用Web界面在管道编辑器中对其进行设置。从屏幕快照中,您已经完成了此操作。

然后,与普通变量不同,秘密变量不会作为脚本环境变量自动解密。因此,我们需要明确地映射它们。如下图所示:

steps:
- powershell: |
  env:
    MY_MAPPED_ENV_VAR: $(secretVariable)   

  # Using the mapped env var:
    Write-Host "This works: $env:MY_MAPPED_ENV_VAR"    # Recommended

这是您在问题中发布的可变文档中提到的。如果我误解了这个问题,请指出,在这种情况下最好弄清楚:为什么将.properties文件放在gitignore上,想要实现什么效果,[​​C0]特别指的是什么。

© www.soinside.com 2019 - 2024. All rights reserved.