AWS OpsWorks Chef 11 多数据库

AWS OpsWorks Chef 11 Multiple Databases

我想知道如何防止 OpsWorks 符号链接 database.yml。而是使用 Github Ruby 中 Rails 应用存储库中包含的 database.yml 文件?

如果不可能,我想知道将主数据库和辅助数据库添加到堆栈的 JSON 语法是什么。

它适用于单个数据库

        "database": {
            "host": "...",
            "database": "...",
            "username": "...",
            "password": "...",
            "adapter": "postgresql",
            "port": 5432,
            "pool": 100,
            "encoding": "utf8"
        },

不使用小学和中学

  "database": {
    "primary": {
      "host": "...",
      "database": "...",
      "username": "...",
      "password": "...",
      "adapter": "postgresql",
      "port": 5432,
      "pool": 100,
      "encoding": "utf8"
    },
    "secondary": {
      "host": "...",
      "database": "...",
      "username": "...",
      "password": "...",
      "replica": true,
      "adapter": "postgresql",
      "port": 5432,
      "pool": 100,
      "encoding": "utf8"
    }
  }

提前致谢

解决方案

注意:确保数据库配置和存储库信息是私有的。

  1. 复制./config/database.yml./config/database.bak.yml

  2. 将以下内容添加到config/application.rb

    config.paths["config/database"] = "./config/database.bak.yml"