gpt4 book ai didi

ruby-on-rails - Travis-CI 上的 Rails 数据库设置

转载 作者:行者123 更新时间:2023-12-03 11:31:59 24 4
gpt4 key购买 nike

我正在尝试在 Rails 项目上使用 Travis 持续集成。文档说必须为 SQLite3 配置测试数据库如下:

test:
adapter: sqlite3
database: ":memory:"
timeout: 500

但我想保留本地测试的默认配置。是否可以同时保留我的本地设置和 Travis 要求?

最佳答案

我对这个问题的解决方案完全基于 a blog post有一些区别:

  • config/database.travis.yml 中的 Travis CI 特定设置;
  • cp config/database.travis.yml config/database.yml.travis.yml 的脚本部分之前;
  • 我没有 config/database.yml在源树中。

  • 以下是这两个文件的完整列表:
    # .travis.yml
    language: ruby
    rvm:
    - 1.9.3
    env:
    - DB=sqlite
    - DB=mysql
    - DB=postgresql
    script:
    - RAILS_ENV=test bundle exec rake db:migrate --trace
    - bundle exec rake db:test:prepare
    - bundle exec rake
    before_script:
    - cp config/database.travis.yml config/database.yml
    - mysql -e 'create database strano_test'
    - psql -c 'create database strano_test' -U postgres


    # config/database.travis.yml
    sqlite: &sqlite
    adapter: sqlite3
    database: db/<%= Rails.env %>.sqlite3

    mysql: &mysql
    adapter: mysql2
    username: root
    password:
    database: strano_<%= Rails.env %>

    postgresql: &postgresql
    adapter: postgresql
    username: postgres
    password:
    database: strano_<%= Rails.env %>
    min_messages: ERROR

    defaults: &defaults
    pool: 5
    timeout: 5000
    host: localhost
    <<: *<%= ENV['DB'] || "postgresql" %>

    development:
    <<: *defaults

    test:
    <<: *defaults

    production:
    <<: *defaults

    关于ruby-on-rails - Travis-CI 上的 Rails 数据库设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9321153/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com