macos - Travis OS X 测试 Postgres

标签 macos postgresql travis-ci

如何在 Travis CI OS X 构建中设置 Postgres?

我无法开始,我不知道如何设置这些:

--dbaddress localhost --dbport 5432 --dbname testDb --dbusername postgres

最佳答案

对于 Travis CI OS X 实例,环境类似于典型的 Homebrew安装。

这是 Travis CI OS X environment你可以配置。

可用的数据库服务:

postgis 版本 2.1.3,postgresql 版本 9.3.5

与 Linux 不同,服务配置当前在 OSX 中不可用。您可以使用安装脚本启动数据库服务并直接使用 Postgresql 工具。

示例 .travis.yml 如下所示:

addons:
  postgresql: "9.4"
language:
  - objective-c
os:
  - osx
sudo:
  - false
install:
   - export PG_DATA=$(brew --prefix)/var/postgres
   - pg_ctl -w start -l postgres.log --pgdata ${PG_DATA}
   - createuser -s postgres
   - psql -c 'create database testDb;' -U postgres
   - cat postgres.log

那么它有什么作用呢?

“add ons”是在默认情况下选择你的特定 postgresql 版本

“sudo”命令不能在 Travis CI 中执行

“install”包含我们需要运行的命令和其他你想添加的命令

pg_ctl 命令需要一个数据目录,“PG_DATA”包含本地自制程序安装路径和用于存储数据库文件的目录。

pg_ctl 将启动现有服务并等待(-w)连接。

必须创建一个 unix 用户/角色“postgres”,并在数据库“testDb”的最终创建脚本中使用。

最后,postgres.log 被发送到 Travis CI 日志。

希望这能让您知道从哪里开始。

关于macos - Travis OS X 测试 Postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36875239/

相关文章:

python - 如何使用 travis-ci.org 测试需要键盘输入的项目?

node.js - TravisCI 在 Node BCrypt 上失败并出现 node-gyp 错误

macos - 如何在 Visual Studio for Mac 中安装 Dotfuscator?

macos - 在 Mac 上自动夜间执行 R 脚本

objective-c - NSPopover 的 contentViewController 中的动画变化

windows - 安全更新

sql - Postgres Array[VarChar] 大写?

ruby-on-rails - 构建查询时将 created_at 转换为时间戳

postgresql - 创建函数未终止的美元引号字符串

node.js - Lerna 构建在远程失败 - 内部包的符号链接(symbolic link)很糟糕