Github return 空字符串作为秘密,而 运行 动作
Github return empty string as secrets while running actions
当我做的时候
${{ secrets.MY_SECRET }}
它returns空字符串,
我是提交更改的人及其我的存储库,因此关于机密授权应该没有问题,并且还克隆了它而不是 fork,
这就是我的动作工作的样子
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v2.1.5
- name: Download Modules
run: npm ci
- name: Test
env:
TEST_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TEST_SECRET: ${{ secrets.TEST_SECRET }}
run: |
echo ${#TEST_GITHUB_TOKEN}
echo ${#TEST_SECRET}
- name: React Build
run: npm run build
env:
CI: true
REACT_APP_FIREBASE_API_KEY: ${{ secrets.REACT_APP_FIREBASE_API_KEY }}
REACT_APP_PIXABAY_API_KEY: ${{ secrets.REACT_APP_PIXABAY_API_KEY }}
REACT_APP_TEST: 'TESTING'
- name: Upload a Build Artifact
uses: actions/upload-artifact@v2.2.3
with:
name: docs
path: './build'
TEST_GITHUB_TOKEN returns 40
和TEST_SECRET returns 0
并且 REACT_APP_TEST 环境变量按预期工作,这意味着秘密是没有被传递的东西
长话短说;博士
使用正确的环境访问机密
基本上,有两个地方可以放置您的秘密,即环境秘密和存储库秘密,
存储库机密会自动提供给作业,但要访问环境,您必须明确告诉它像这样传递环境
jobs:
myJob:
environment: myEnironmentName
runs-on: ubuntu-latest
- 您可以使用任何 OS
转到
repo >> settings >> secrets
并检查您的机密是否存储在环境机密或回购机密中,如果它们存储在环境机密中,则您必须像上面的代码一样显式访问它。
非常感谢所有评论并帮助找到答案的社区成员,
谢谢:)
当我做的时候
${{ secrets.MY_SECRET }}
它returns空字符串,
我是提交更改的人及其我的存储库,因此关于机密授权应该没有问题,并且还克隆了它而不是 fork,
这就是我的动作工作的样子
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v2.1.5
- name: Download Modules
run: npm ci
- name: Test
env:
TEST_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TEST_SECRET: ${{ secrets.TEST_SECRET }}
run: |
echo ${#TEST_GITHUB_TOKEN}
echo ${#TEST_SECRET}
- name: React Build
run: npm run build
env:
CI: true
REACT_APP_FIREBASE_API_KEY: ${{ secrets.REACT_APP_FIREBASE_API_KEY }}
REACT_APP_PIXABAY_API_KEY: ${{ secrets.REACT_APP_PIXABAY_API_KEY }}
REACT_APP_TEST: 'TESTING'
- name: Upload a Build Artifact
uses: actions/upload-artifact@v2.2.3
with:
name: docs
path: './build'
TEST_GITHUB_TOKEN returns 40
和TEST_SECRET returns 0
并且 REACT_APP_TEST 环境变量按预期工作,这意味着秘密是没有被传递的东西
长话短说;博士 使用正确的环境访问机密
基本上,有两个地方可以放置您的秘密,即环境秘密和存储库秘密, 存储库机密会自动提供给作业,但要访问环境,您必须明确告诉它像这样传递环境
jobs:
myJob:
environment: myEnironmentName
runs-on: ubuntu-latest
- 您可以使用任何 OS
转到
repo >> settings >> secrets
并检查您的机密是否存储在环境机密或回购机密中,如果它们存储在环境机密中,则您必须像上面的代码一样显式访问它。
非常感谢所有评论并帮助找到答案的社区成员, 谢谢:)