无法从Gitlab CI / CD在AWS RDS数据库上运行迁移

时间:2019-05-04 23:18:05

标签: node.js postgresql gitlab amazon-rds knex.js

我创建了一个CI / CD管道,以自动化部署到AWS Lambda和RDS中。另外,使用Knex Migrations和NodeJS创建迁移以更新此数据库。因此,CI / CI管道中的任务之一就是运行迁移。

即使在我的计算机上,迁移也可以正常运行,并且CI / CD可以运行所有其他任务,甚至可以更新AWS Lambda上的功能。

问题是迁移无法连接到RDS,因此失败。我认为它与inboud IP地址白名单有关(我的计算机IP已列入白名单),但是在这种情况下我不知道要使用什么gitlab IP。也曾在Gitlab上尝试过此High Availability tutorial,但没有用(我做了确切的教程,但在我需要为数据库创建子网的部分中失败了。)

如何使该管道正常运行并迁移数据库?

[编辑] 这是.gitlab-ci.yml文件

image: node:8.10

stages:
  - migrate

before_script:
    - npm install -g knex
    - npm install -g pg

migrate:
  stage: migrate
  only: 
    - master
  script:
    - cd ./api && knex migrate:latest --env production
  environment: production

1 个答案:

答案 0 :(得分:0)

这不是一个确定的解决方案,但是当我使用0.0.0.0/0设置入站IP时一切正常。