如何获得 PR (Pull Request) 号
How to get the PR (Pull Request) number
我刚开始使用 Pulumi,我检查了很多文档、很多回购协议,但就是找不到如何获得要使用的 PR(拉取请求)编号。
我知道 Pulumi 生成了一个名为 ci.pr.number
的环境 variable/output/config。
我想使用该数字创建一个 Azure 资源组,例如 rg-{appname}-{environment}-{pr number}
。例如,rg-myapp-dev-022
.
最后一次尝试是:
var config = new Pulumi.Config();
var prNumber = config.Require("ci.pr.number");
提前致谢!
PS:我正在对 运行 Pulumi 使用 GitHub 操作。
如果您想在运行时在 Pulumi 程序中使用 PR 编号,则需要以某种方式从 GitHub Actions 运行时环境中读取它; Pulumi 不会将其写入您的堆栈配置。 GitHub Actions 公开了一个 Context API 这使得这相当简单,假设您有权对工作流本身进行少量添加。这是一个 PR 工作流的示例,其中包含一个步骤,该步骤将 PR 编号提取到环境变量 (PR_NUMBER
) 中,然后在几个脚本中使用它,首先是 Bash,然后是 Node.js:
name: My Workflow
on:
pull_request:
branches:
- master
jobs:
build:
name: Do Things
runs-on: ubuntu-18.04
steps:
- name: Install Node
uses: actions/setup-node@v1
with:
node-version: '14.x'
- name: Check out branch
uses: actions/checkout@v2
- name: Read the PR number
env:
PR_NUMBER: ${{ github.event.number }}
run: |
echo "From Bash: ${PR_NUMBER}"
node -e "console.log('From Node:', process.env.PR_NUMBER);"
我没有办法方便地验证相关的 C#,但看起来你应该可以用 System.Environment.GetEnvironmentVariable("PR_NUMBER").
https://docs.microsoft.com/en-us/dotnet/api/system.environment.getenvironmentvariable
我刚开始使用 Pulumi,我检查了很多文档、很多回购协议,但就是找不到如何获得要使用的 PR(拉取请求)编号。
我知道 Pulumi 生成了一个名为 ci.pr.number
的环境 variable/output/config。
我想使用该数字创建一个 Azure 资源组,例如 rg-{appname}-{environment}-{pr number}
。例如,rg-myapp-dev-022
.
最后一次尝试是:
var config = new Pulumi.Config();
var prNumber = config.Require("ci.pr.number");
提前致谢!
PS:我正在对 运行 Pulumi 使用 GitHub 操作。
如果您想在运行时在 Pulumi 程序中使用 PR 编号,则需要以某种方式从 GitHub Actions 运行时环境中读取它; Pulumi 不会将其写入您的堆栈配置。 GitHub Actions 公开了一个 Context API 这使得这相当简单,假设您有权对工作流本身进行少量添加。这是一个 PR 工作流的示例,其中包含一个步骤,该步骤将 PR 编号提取到环境变量 (PR_NUMBER
) 中,然后在几个脚本中使用它,首先是 Bash,然后是 Node.js:
name: My Workflow
on:
pull_request:
branches:
- master
jobs:
build:
name: Do Things
runs-on: ubuntu-18.04
steps:
- name: Install Node
uses: actions/setup-node@v1
with:
node-version: '14.x'
- name: Check out branch
uses: actions/checkout@v2
- name: Read the PR number
env:
PR_NUMBER: ${{ github.event.number }}
run: |
echo "From Bash: ${PR_NUMBER}"
node -e "console.log('From Node:', process.env.PR_NUMBER);"
我没有办法方便地验证相关的 C#,但看起来你应该可以用 System.Environment.GetEnvironmentVariable("PR_NUMBER").
https://docs.microsoft.com/en-us/dotnet/api/system.environment.getenvironmentvariable