如何解决如何在CI中创建我的秘密awsconfiguration.json?
我一直在使用AWS Amplify构建我的iOS应用程序的后端。
我在后端创建了4个DTAP环境,具有4种不同的配置,并使用运行脚本在编译时根据所选内容切换awsconfiguration.json
和amplifyconfiguration.json
的正确版本方案。
由于这些自动生成的配置文件包含许多秘密和API密钥,因此我将其与.gitignore中的源代码控制区分开,因为这将是一个失败点,并且我不想公开我的全部信息后端。
这在本地运行良好,但是当我在Bitrise上运行CI时,构建失败,因为这些配置文件不存在。我需要找到一种方法来将这些AWS和Amplify配置文件放入CI中,以便能够创建我的测试版本。
如果我过于谨慎,并且配置文件实际上可以保留在源代码管理中(即不是秘密),请告诉我。我真的不希望将机密设置为单独的环境变量,因为Amplify将为我需要的每个环境提供多个机密和终结点,并且让脚本将这些配置文件作为CI阶段构建起来实在太麻烦和复杂了。 / p>
我尝试过的事情:
- 使用伪造的机密创建模拟配置文件,并在编译时将其复制进来-这失败了,因为编译时脚本仍尝试为实际环境复制不存在的配置文件
- 使用单个环境变量作为Bitrise的秘密-这可能行得通,但是对于我的1-dev初创公司来说,维护它是一项艰巨的努力
- 触摸伪造的配置文件进行复制-可以,但这意味着实际的AWS基础设施在测试版本中不起作用
对于任何人的想法,建议或经历,我将不胜感激。
谢谢
Jacob
解决方法
我建议使用通用文件存储和相关步骤下载它们。这会将它们注入到您的构建中,并且您可以将它们放置在编译项目之前所需的位置。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。