在Gitlab CI/CD过程中,如何在审核阶段(对于审核应用程序)将数据导入postgresql服务器?
我目前正在使用Gitlab CI/CD部署到AWS。Postgresql在整个构建阶段都使用。
在构建阶段,信息成功地从另一个应用程序导入到postgresql。然后将数据作为SQL文件转储到工件(在两个位置)。
artifacts:
paths:
- postgres_backup.sql
- scripts/postgres/postgres_backup.sql
expire_in: 1 day构建工件即被创建。但是,它们在review - autodeploy - stage中不可用。审查阶段基本上是:
review:
extends: .auto-deploy
stage: review
before_script:
- echo "Supposedly, this helps to carry over artifacts." 神器不在那里。理想情况下,我希望将SQL备份推送到数据库,但1)工件不可用,2) psql命令不可用(或apt)。
发布于 2021-03-10 03:04:38
看一下.auto-deploy作业(它可能来自included job this too)。如果.auto-deploy作业具有dependencies关键字,则它正在影响您的工件。
默认情况下,当一个作业上传工件时,所有后续阶段的作业都会自动下载该工件。这可以在各个作业上使用dependencies关键字进行控制。
例如,使用dependencies: []意味着此作业没有依赖项,因此不会下载任何工件。dependencies: ["npm install job"]意味着来自名为"npm install job“的作业的工件是唯一下载的工件,即使上传了来自其他作业的工件。
因此,如果您在.auto-deploy作业中看到dependencies关键字,则必须将其包含在review作业中。如果.auto-deploy有dependencies: [],则必须有dependencies: ["your-job-name"],其中作业名称是上载文件的作业。
如果.auto-deploy的dependencies关键字至少有一个作业名称,则必须复制作业,并将其包含在review作业中:
// .auto-deploy job:
.auto-deploy
stage: deploy
dependencies: ["job1", "job2"]
script:
- ...// review job
review:
stage: review
dependencies: ["job1", "job2", "your-postgres-job"]
script:
- ...https://stackoverflow.com/questions/66552877
复制相似问题