【发布时间】:2023-02-07 22:38:08
【问题描述】:
出于安全原因,我无法提交此文件,但我需要以某种方式在服务器上获取此 .env.prod 文件。
有没有办法指定一个秘密文件从 GitHub 操作推送到服务器?
我只看到一种为操作而不是服务器设置环境变量的方法
使用 GitHub 操作的 Ssh 和 rsync
【问题讨论】:
-
您是否尝试将此文件的内容设置为机密?
-
是的,弄清楚我必须那样做并写出来。
标签: github-actions
出于安全原因,我无法提交此文件,但我需要以某种方式在服务器上获取此 .env.prod 文件。
有没有办法指定一个秘密文件从 GitHub 操作推送到服务器?
我只看到一种为操作而不是服务器设置环境变量的方法
使用 GitHub 操作的 Ssh 和 rsync
【问题讨论】:
标签: github-actions
我在同一台服务器上同时拥有 prod 和 dev。 Prod 从release 分支发布,所有其他分支都被视为开发环境。
任何 json 都必须在秘密中进行 base64 编码……问题是这可能会在日志中回显,因此它不是 100% 安全的。
- name: Set env file and jwk.json for release
if: ${{ contains(github.ref_name, 'release') || github.ref == 'refs/heads/release' }}
run: |
echo "${{secrets.PRODUCTION_ENV }}" > .env.prod
ln -sf .env.prod .env
echo "${{secrets.PRODUCTION_JWK}}" | base64 --decode > jwk.json
- name: Set env file and jwk.json for development
if: ${{ !contains(github.ref_name, 'release') || github.ref != 'refs/heads/release' }}
run: |
echo "${{secrets.DEVELOPMENT_ENV }}" > .env.dev
ln -sf .env.dev .env
echo "${{secrets.DEVELOPMENT_JWK}}" | base64 --decode > jwk.json
【讨论】: