PPP3: Redmineのインストール(続き2)
たぶんここで苦労するのはおかしい
と思って読み直すと
NOTE
Ansibleのバージョンは2.4.2を前提としています。
これなんじゃないか
わざわざ書いてるのは、ここがつまづきどころだから?
$ ansible --version
ansible 2.7.10
ちょっと仮想マシン作り直してやってみよう
パッケージのバージョン指定はこうか
vagrant@vagrant:~$ sudo pip2 install ansible==2.4.2
:
Collecting ansible==2.4.2
:
Running setup.py install for ansible ... done
Successfully installed MarkupSafe-1.1.1 PyYAML-5.1 ansible-2.4.2.0 asn1crypto-0.24.0 bcrypt-3.1.6 cffi-1.12.3 cryptography-2.6.1 enum34-1.1.6 ipaddress-1.0.22 jinja2-2.10.1 paramiko-2.4.2 pyasn1-0.4.5 pycparser-2.19 pynacl-1.3.0 six-1.12.0
$ pip2 show ansible
---
Metadata-Version: 1.1
Name: ansible
Version: 2.4.2.0
Summary: Radically simple IT automation
:
さてどうだ
$ ansible-playbook -K -i hosts site.yml
:
TASK [redmine : gemsパッケージのインストール]
fatal: [localhost]: FAILED! => {...}
to retry, use: --limit @/home/vagrant/redmine-ubuntu-ansible/site.retry
:
localhost : ok=23 changed=18 unreachable=0 failed=1
変わらんか
そうか
結局bundlerをインストールすると2.0.1が入ってしまうのが問題なんだな
Ansibleのファイルでも書き換えてみる?
bundlerをインストールしているのは
roles/ruby/tasks/main.ymlというファイルっぽい
バージョン指定を入れてみる
- name: bundlerのインストール
become: yes
gem:
name=bundler
user_install=no
version=1.17.3
environment:
PATH: "/usr/local/bin:{{ ansible_env.PATH }}"
冪等冪等って言うけどこのままもう1回やったらうまくいくだろうか
bundlerを消すくらいやっとく必要があるだろうか
まずはそのままやってみる
だめだった
bundlerアンインストールしてからやろう
$ sudo gem uninstall bundler
Select gem to uninstall:
1. bundler-1.17.3
2. bundler-2.0.1
3. All versions
>
ん、こんなんだっけ?
1.17.3も入ってるの?
2.0.1だけ消して進む
$ ansible-playbook -K -i hosts site.yml
:
ok: [localhost] => {
"msg": "インストールが完了しました。 http://10.0.2.15/redmine/ にアクセスしてください。"
}
:
localhost : ok=31 changed=11 unreachable=0 failed=0
できた
どうせ直すならbundler 2.0.1に対応できるように周辺を合わせたほうが
いいんだろうけどそこまでしなくていいかな
https://github.com/farend/redmine-ubuntu-ansible を見てみると
最終更新が1年前だから、その間にbundlerがメジャーバージョンアップしたって
ことかな
Bundler: Announcing Bundler 2.0
そうだった
本が出たのも1年前だし