azure - 在带有 linux 容器代理的 Azure DevOps 上的 powershell 脚本中使用环境变量
问题描述
我有几个在 Azure DevOps 的构建管道中运行的 powershell 脚本。脚本使用变量组并在自托管代理 (Windows server 2016) 上运行
我想更改代理,以便脚本将在 Linux 容器代理上运行。我已将 Linux 容器代理设置为 Azure 中的容器实例并更改了 powershell 脚本。容器代理安装了 powershell 核心模块和附加模块。在我的脚本中,我可以使用我的存储库中的文件。一切正常,除了一件事,变量组。
对于之前的代理,我在脚本中所要做的就是使用 $env: 从变量组中访问变量,例如:
$NewAccount = $env:Account
但这不适用于 Linux 容器代理。我尝试了几件事,例如:
$NewAccount = [Environment]::Account
$NewAccount = $(Account)
$($env:Account)
("##vso[task.setvariable variable=Account;]$Account")
但它不起作用。我必须为 Linux 容器代理做一些不同的事情,但我不知道需要更改或添加什么
解决方案
好的,所以解决方案是将 env 变量写成大写:$env:ACCOUNT
推荐阅读
- c++ - 将可取消的作业卸载到需要更新 UI 的不同线程
- python - Python 调用“self.property”和创建返回“self.property”的方法有什么区别?
- java - 对 parseClass 的 GroovyClassLoader 调用成功,即使代码无法编译
- perl - 如何在最新的 perl 上安装额外的 perl 模块(活动状态)
- python - 如何在数组中查找中间数
- c# - 从 Entity Framework web.config 获取连接字符串
- python-3.x - 通过操作和创建新列对数据框进行复杂分组
- c++ - 将 Qt 应用程序与 CMake 和 Visual Studio 链接
- asp.net - 在 RowCreated 中对齐 HeaderCell
- python - Python 函数的 kwargs 参数的键是否保证为字符串类型?