我正在尝试使用ansible package在ubuntu 16.04上安装特定版本的RethinkDB。
我用:
- name: Ensure rethinkDB package repository is present
apt_repository: repo='deb http://download.rethinkdb.com/apt xenial main' state=present
tags:
- rethinkdb
- name: install RethinkDB
package: name=rethinkdb-2.3.2 state=latest
tags:
- rethinkdb
但是我收到以下错误:
任务[安装RethinkDB] ************************************************** *****任务路径:/Users/nha/.../playbook.yml:173致命: [机器]:失败了! => {"更改":false,"失败":是," msg":"否 包匹配' rethinkdb-2.3.2'可用"}重试,使用: --limit @ ops / ansible / playbook.retry
即使遗漏了版本,我也会收到错误:
任务[安装RethinkDB] ************************************************** *****任务路径:/Users/nha/.../playbook.yml:173致命: [机器]:失败了! => {" cache_update_time":0," cache_updated":false, "更改":false,"失败":true," msg":"' / usr / bin / apt-get -y - Ø \" DPKG ::选项:: = - 力confdef \" -o \" DPKG ::选项:: = - 力confold \"安装' rethinkdb''失败: E:有未经验证的软件包,-y没有使用 --allow-unauthenticated \ n"," stderr":" E:有未经身份验证的软件包,-y在没有--allow-unauthenticated \ n",&#34的情况下使用;标准输出&#34 ;: "读取包列表... \ n建立依赖关系树... \ n读取状态 信息... \ n将安装以下附加软件包:\ n libcurl3 \ n将安装以下新软件包:\ n libcurl3 rethinkdb \ n0升级,2新安装,0删除,0不 升级。\ n需要获得11.2 MB的档案。\ n此操作后, 将使用40.2 MB的额外磁盘空间。\ n警告:以下软件包无法通过身份验证!\ n rethinkdb \ n"," stdout_lines": ["阅读包列表......","建立依赖关系树...","阅读 状态信息......","以下附加包将是 安装:"," libcurl3","以下新包将是 安装:"," libcurl3 rethinkdb"," 0升级,2新安装,0 删除和0未升级。","需要获得11.2 MB的档案。", "完成此操作后,将有40.2 MB的额外磁盘空间 使用。","警告:以下软件包无法通过身份验证!"," rethinkdb"]}重试,使用: - limit @ ops / ansible / playbook.retry
答案 0 :(得分:5)
第一条错误消息指出RethinkDB apt repo不包含2.3.2版本的软件包。
第二个错误是因为您还没有添加apt key来信任此回购。 RethinkDB的Ubuntu installation instructions也提到你需要添加他们的apt密钥。
您可以使用apt_key
模块轻松完成此操作:
- name: add rethinkdb apt key
apt_key: url=https://download.rethinkdb.com/apt/pubkey.gpg
顺便说一下,指定一个版本然后在状态上指定latest
并没有多大意义。