github动作多个dotenv文件

问题描述

我一直在努力写这篇文章,所以请多多包涵。尝试并尽可能清楚: 设置:

  • 有3个分支(主/开发/阶段)的Github存储库
  • 每个分支都有唯一的dotenv文件
  • 回购具有VueJS代码(但也可以是laravel)

现在,使用GitHub Actions,我们根据分支将其部署到其他域。

我无法解决的是如何最好地处理不同的dotenv文件。在构建过程中,使用dotenv来构建最终产品。出于明显的原因,我很想在GitHub Secret中保留尽可能多的env文件内容,但是我不确定是否可行。另一个选择是基于分支具有3个dotenv文件,但这只会使它们保持同步而增加了复杂性和混乱性。

处理此问题的最佳方法是什么,以便每次部署都在dotenv文件中获得正确的设置?

解决方法

免责声明:我不了解dotenv的最佳做法。

如果您的机密大于允许的64 KB,则可以按照Limits for secrets的说明进行操作,大致是这样:

  • 加密您的秘密:

    gpg --symmetric --cipher-algo AES256 .env
    
  • 将密码短语存储为机密,例如LARGE_SECRET_PASSPHRASE

  • 将加密文件添加到存储库中,例如作为.env.gpg

  • 要在工作流程中解密,请运行类似的

    run: |
      gpg --quiet --batch --yes --decrypt \
          --passphrase=${{ secrets.LARGE_SECRET_PASSPHRASE }} \
          --output .env .env.gpg
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...