如何在Python脚本中访问GitHub Actions Secrets?
在Python脚本中访问GitHub Actions Secrets的方法
GitHub Secrets不会自动暴露为环境变量,必须手动将其注入到工作流的环境变量中,才能在Python脚本里通过os.environ访问。以下是两种可行的配置方式:
方法一:在执行Python脚本的Step中注入环境变量
修改你的GitHub Actions工作流文件,在运行Python脚本的Step里,通过env字段将Secrets映射为环境变量:
jobs: log-the-inputs: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Run Python script env: EMAIL_USER: ${{ secrets.EMAIL_USER }} EMAIL_PASSWORD: ${{ secrets.EMAIL_PASSWORD }} run: python your_script.py
之后在Python脚本中,就可以通过os.environ读取这些变量:
import os email_user = os.environ.get("EMAIL_USER") email_password = os.environ.get("EMAIL_PASSWORD") # 后续业务逻辑
方法二:为整个Job注入环境变量
如果多个Step都需要用到这些Secrets,可以在Job级别定义env,让整个Job的所有Step共享这些环境变量:
jobs: log-the-inputs: runs-on: ubuntu-latest env: EMAIL_USER: ${{ secrets.EMAIL_USER }} EMAIL_PASSWORD: ${{ secrets.EMAIL_PASSWORD }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Run Python script run: python your_script.py
关键注意事项
- 禁止在日志中打印Secrets内容,GitHub会自动屏蔽Secrets的输出,但仍需避免手动触发泄露风险。
- 确保Secrets已在仓库的「Settings → Secrets and variables → Actions」中正确配置,且名称完全匹配(区分大小写)。
内容的提问来源于stack exchange,提问作者Mate Mrše
相关产品推荐
相关产品推荐

