首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在gitlab ci中加载init.sql文件到postgres服务?

如何在gitlab ci中加载init.sql文件到postgres服务?
EN

Stack Overflow用户
提问于 2018-11-23 23:13:13
回答 2查看 442关注 0票数 6

我想在测试阶段使用sql文件初始化我的service

代码语言:javascript
复制
test:
  services:
    - postgres:latest
  variables:
    POSTGRES_DB: test
  stage: test
  image: gliderlabs/herokuish:latest
  script:
    - setup_test_db
    - cp -R . /tmp/app
    - /bin/herokuish buildpack test
  only:
    - branches
  except:
    variables:
      - $TEST_DISABLED

这是auto devops中的测试作业。

我想使用postgres镜像docker-entrypoint

下面是我在pc上的docker-compose中使用它的方法:

代码语言:javascript
复制
volumes:
  - './src/sql:/docker-entrypoint-initdb.d'

这样,当postres映像启动时,我就有了可以使用的模式。

我怎样才能在gitlab-ci.yml中做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2020-11-12 10:02:10

目前,Gitlab CI中不支持volumes

在测试期间,您可以使用docker-compose,它提供了一项针对postgres的服务来启动您的项目,您可以照常挂载它的卷

票数 0
EN

Stack Overflow用户

发布于 2022-01-07 07:35:31

你可以将下面的脚本添加到你的gitlab ci中以使其工作。

代码语言:javascript
复制
before_script:
  - apt update && apt install -y postgresql
  - export PGPASSWORD=$POSTGRES_PASSWORD
  - psql -h "postgres" -U "$POSTGRES_USER" -d "$POSTGRES_DB" -f ./src/sql
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53449106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档