質問編集履歴
1
修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -3,33 +3,37 @@
|
|
|
3
3
|
```ここに言語を入力
|
|
4
4
|
[WARNING]: Consider using 'become', 'become_method', and 'become_user' rather than running sudo
|
|
5
5
|
```
|
|
6
|
-
上記のように現在sudoコマンドを直接利用するのは、現在非推奨になっているよう
|
|
6
|
+
上記のように現在sudoコマンドを直接利用するのは、現在非推奨になっているようです。
|
|
7
|
+
ですがsudoモジュールを使用している箇所がなく唯一使用しているのがCheck if version is installed rubyのshellモジュールです。
|
|
7
|
-
|
|
8
|
+
shellモジュール内でsudoを書かない記述方法がありますでしょうか
|
|
9
|
+
```ここに言語を入力
|
|
10
|
+
shell: "sudo -iu {{ rbenv_user }} rbenv versions | grep {{ rbenv_ruby_version }}"
|
|
11
|
+
```
|
|
8
12
|
|
|
9
13
|
|
|
10
14
|
|
|
11
|
-
|
|
12
15
|
##エラー
|
|
13
16
|
```ここに言語を入力
|
|
14
17
|
TASK [Check if version is installed ruby] *************************************************************************************
|
|
15
18
|
[WARNING]: Consider using 'become', 'become_method', and 'become_user' rather than running sudo
|
|
16
|
-
fatal: [☓☓.☓☓.☓☓.☓☓]: FAILED! => {"changed": false, "cmd": "sudo -iu ec2-user rbenv versions | grep 2.7.2", "delta": "0:00:00.
|
|
19
|
+
fatal: [☓☓.☓☓.☓☓.☓☓]: FAILED! => {"changed": false, "cmd": "sudo -iu ec2-user rbenv versions | grep 2.7.2", "delta": "0:00:00.145138", "end": "2021-03-31 08:50:00.875045", "msg": "non-zero return code", "rc": 1, "start": "2021-03-31 08:50:00.729907", "stderr": "Warning: no Ruby detected on the system", "stderr_lines": ["Warning: no Ruby detected on the system"], "stdout": "", "stdout_lines": []}
|
|
17
20
|
...ignoring
|
|
18
|
-
|
|
19
|
-
TASK [Install ruby] ***********************************************************************************************************
|
|
20
|
-
fatal: [☓☓.☓☓.☓☓.☓☓]: FAILED! => {"msg": "The conditional check 'rbenv_check_install|failed' failed. The error was: template error while templating string: no filter named 'failed'. String: {% if rbenv_check_install|failed %} True {% else %} False {% endif %}\n\nThe error appears to be in '/var/lib/jenkins/workspace/execute_ansible/roles/ruby/tasks/main.yml': line 49, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Install ruby\n ^ here\n"}
|
|
21
|
-
|
|
22
|
-
PLAY RECAP ********************************************************************************************************************
|
|
23
|
-
☓☓.☓☓.☓☓.☓☓ : ok=9 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=1
|
|
24
21
|
```
|
|
25
22
|
|
|
26
23
|
##コード
|
|
27
24
|
```ここに言語を入力
|
|
28
|
-
---
|
|
29
|
-
- name: Install
|
|
25
|
+
- name: 'Install packages'
|
|
26
|
+
yum:
|
|
30
|
-
|
|
27
|
+
name: "{{ item }}"
|
|
31
28
|
with_items:
|
|
32
|
-
-
|
|
29
|
+
- gcc
|
|
30
|
+
- openssl-devel
|
|
31
|
+
- libyaml-devel
|
|
32
|
+
- readline-devel
|
|
33
|
+
- zlib-devel
|
|
34
|
+
- libffi-devel
|
|
35
|
+
- gdbm-devel
|
|
36
|
+
- ncurses-devel
|
|
33
37
|
|
|
34
38
|
- name: Install rbenv
|
|
35
39
|
become: yes
|
|
@@ -50,24 +54,16 @@
|
|
|
50
54
|
dest="~/.bash_profile"
|
|
51
55
|
line='eval "$(rbenv init -)"'
|
|
52
56
|
|
|
53
|
-
- name: Install dependencies for ruby-build (see. https://github.com/sstephenson/ruby-build/wiki)
|
|
54
|
-
yum: name={{ item }} state=latest
|
|
55
|
-
with_items:
|
|
56
|
-
- gcc
|
|
57
|
-
- openssl-devel
|
|
58
|
-
- libyaml-devel
|
|
59
|
-
- libffi-devel
|
|
60
|
-
- readline-devel
|
|
61
|
-
- zlib-devel
|
|
62
|
-
- gdbm-devel
|
|
63
|
-
- ncurses-devel
|
|
64
|
-
|
|
65
57
|
- name: Install ruby-build as rbenv plugin
|
|
66
58
|
become: yes
|
|
67
59
|
become_user: "{{ rbenv_user }}"
|
|
68
60
|
git: repo=https://github.com/sstephenson/ruby-build.git dest=~/.rbenv/plugins/ruby-build
|
|
69
61
|
|
|
62
|
+
-----------ここまでインストールされていることを確認-----------------------
|
|
63
|
+
|
|
70
64
|
- name: Check if version is installed ruby
|
|
71
65
|
shell: "sudo -iu {{ rbenv_user }} rbenv versions | grep {{ rbenv_ruby_version }}"
|
|
72
66
|
register: rbenv_check_install
|
|
67
|
+
changed_when: False
|
|
68
|
+
ignore_errors: yes
|
|
73
69
|
```
|