PHP / Github 操作工作流程:如何在 $_ENV 中提供秘密
PHP / Github Actions workflows: how to provide secrets in $_ENV
我正在尝试使用从 Github 到 phpunit 的加密秘密。
我在 Github 中创建了一些加密的 Secret,并在我的工作流程文件中对其进行了测试:
- name: Execute tests
env:
TWITTER_ACCESS_TOKEN: ${{ secrets.TWITTER_ACCESS_TOKEN }}
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}
TWITTER_ACCOUNT_ID: ${{ secrets.TWITTER_ACCOUNT_ID }}
TWITTER_BEARER_TOKEN: ${{ secrets.TWITTER_BEARER_TOKEN }}
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }}
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }}
run: vendor/bin/phpunit
但是在我的测试文件中,一个简单的 var_dump($_ENV)
是空的 (array(0) { }
),我的测试不起作用。
缺少什么?
此致。
来自 Github 的屏幕截图:
感谢您的帮助。
经过各种测试,我意识到 $_ENV
与 getenv()
不同。
所以类似的东西有效:
foreach (getenv() as $settingKey => $settingValue) {
if (strpos($settingKey, 'TWITTER_') === 0) {
...
}
}
我正在尝试使用从 Github 到 phpunit 的加密秘密。
我在 Github 中创建了一些加密的 Secret,并在我的工作流程文件中对其进行了测试:
- name: Execute tests
env:
TWITTER_ACCESS_TOKEN: ${{ secrets.TWITTER_ACCESS_TOKEN }}
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}
TWITTER_ACCOUNT_ID: ${{ secrets.TWITTER_ACCOUNT_ID }}
TWITTER_BEARER_TOKEN: ${{ secrets.TWITTER_BEARER_TOKEN }}
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }}
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }}
run: vendor/bin/phpunit
但是在我的测试文件中,一个简单的 var_dump($_ENV)
是空的 (array(0) { }
),我的测试不起作用。
缺少什么?
此致。
来自 Github 的屏幕截图:
感谢您的帮助。
经过各种测试,我意识到 $_ENV
与 getenv()
不同。
所以类似的东西有效:
foreach (getenv() as $settingKey => $settingValue) {
if (strpos($settingKey, 'TWITTER_') === 0) {
...
}
}