我正在尝试在我的 GitLab CI 管道上测试 Firestore 的安全规则。我需要运行 Firebase 的模拟器来完成此任务。
然而,Firebase 模拟器基本上开始提供“假后端”服务。那么,我如何才能与其他作业并行运行该作业呢?
例如:
stages:
- emulator
- test
emulator:
- stage: emulator
script:
- firebase serve --only firestore
test:
- stage: test
script:
- yarn test
The test
由于 GitLab 正在服务于emulator
阶段。因此,它永远不会结束。
您不应该使用 2 个阶段。请记住,每个阶段都是在某处启动的完全独立的“计算机”。因此,一个阶段默认情况下不能与另一个阶段交互。
这script
阶段的一部分实际上是 shell 脚本。因此,如果您想尝试一切是否正常,请创建一个 shell 脚本并执行它。
这就是我所做的。请记住,我没有使用您的特定设置对其进行测试
stages:
- test
test:
- stage: test
script:
- yarn compile
- yarn firebase setup:emulators:firestore
- yarn firebase emulators:exec -P dev1 --only firestore "yarn test --exit"
使用模拟器进行测试CI
系统最好添加一个“启动”脚本。在这种情况下,我添加测试yarn test --exit
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)