Azure Devops 发布管道:我能否以某种方式将服务连接传递给 Powershell 脚本?
Azure Devops Release Pipeline: Can I Somehow Pass in a Service Connection to a Powershell Script?
我有一个 Powershell 任务,用于对 Pivotal Cloud Foundry 实例执行多个命令。现在,我无法“手动”传递 URL
、username
和 password
(作为锁定变量),所以我可以 cf login
- 但它们已经存在作为服务连接。
是否可以“传入”服务连接以访问这些值?例如,Cloud Foundry CLI
任务有一个用于选择 Cloud Foundry 端点的下拉列表。当我创建一个任务组时,如果我在任何地方添加 $(someVariable)
,ADO 足够聪明,可以将它添加到任务组需要的变量列表中。我希望存在类似的东西,我可以在我的 Powershell 脚本中说 $([ServiceConnection]cfConn)
或类似的东西,魔法就会发生。
所以,你可以这样做。你会想要:
转到“服务连接”并设置“通用”服务连接以与 Cloud Foundry 一起使用. (在这个例子中我们称之为“Cloud Foundry - Dev”)
完成后,您可以将服务连接设置为根变量:
trigger:
- main
pool:
vmImage: ubuntu-latest
variables:
CloudFoundryServiceConnectionName: 'Cloud Foundry - Dev'
steps:
- task: CloudFoundryCLI@0
inputs:
cfEndpoint: ${{ variables.CloudFoundryServiceConnectionName }}
cfCommand: 'YOUR-COMMAND'
但是,如果您尝试在同一个 CloudFoundryCLI 任务中多次登录,则此路径不适合您。该任务仅使用一个字符串来查找服务连接并进行设置。
更新:包括经典编辑器方法
要使用经典编辑器执行此操作:
- 转到您的版本(或管道)中的“变量”选项卡:
- 添加一个“ServiceConnection”变量:
- 前往您的 Cloud Foundry CLI 任务
- 添加 "$(ServiceConnection)" 作为服务连接:
更新: 如果您希望在 Powershell 中直接访问自定义变量,而不是服务连接,您需要创建一个新的 Variable Azure DevOps 中 库 中的组 :
然后,您需要前往您的管道(下例中的经典示例)并绑定变量组:
最后,更新您的 Powershell 脚本以使用变量:
我有一个 Powershell 任务,用于对 Pivotal Cloud Foundry 实例执行多个命令。现在,我无法“手动”传递 URL
、username
和 password
(作为锁定变量),所以我可以 cf login
- 但它们已经存在作为服务连接。
是否可以“传入”服务连接以访问这些值?例如,Cloud Foundry CLI
任务有一个用于选择 Cloud Foundry 端点的下拉列表。当我创建一个任务组时,如果我在任何地方添加 $(someVariable)
,ADO 足够聪明,可以将它添加到任务组需要的变量列表中。我希望存在类似的东西,我可以在我的 Powershell 脚本中说 $([ServiceConnection]cfConn)
或类似的东西,魔法就会发生。
所以,你可以这样做。你会想要:
转到“服务连接”并设置“通用”服务连接以与 Cloud Foundry 一起使用. (在这个例子中我们称之为“Cloud Foundry - Dev”)
完成后,您可以将服务连接设置为根变量:
trigger:
- main
pool:
vmImage: ubuntu-latest
variables:
CloudFoundryServiceConnectionName: 'Cloud Foundry - Dev'
steps:
- task: CloudFoundryCLI@0
inputs:
cfEndpoint: ${{ variables.CloudFoundryServiceConnectionName }}
cfCommand: 'YOUR-COMMAND'
但是,如果您尝试在同一个 CloudFoundryCLI 任务中多次登录,则此路径不适合您。该任务仅使用一个字符串来查找服务连接并进行设置。
更新:包括经典编辑器方法 要使用经典编辑器执行此操作:
- 转到您的版本(或管道)中的“变量”选项卡:
- 添加一个“ServiceConnection”变量:
- 前往您的 Cloud Foundry CLI 任务
- 添加 "$(ServiceConnection)" 作为服务连接:
更新: 如果您希望在 Powershell 中直接访问自定义变量,而不是服务连接,您需要创建一个新的 Variable Azure DevOps 中 库 中的组 :
然后,您需要前往您的管道(下例中的经典示例)并绑定变量组:
最后,更新您的 Powershell 脚本以使用变量: