28
|
1 |
--- |
|
2 |
- hosts: all |
|
3 |
|
|
4 |
vars: |
|
5 |
|
|
6 |
tasks: |
|
7 |
|
|
8 |
# - name: ensure correct locale LC_ALL |
|
9 |
# lineinfile: dest=/etc/sysconfig/i18n regexp=^LC_ALL= line=LC_ALL="en_US.UTF-8" |
|
10 |
# - name: ensure correct locale LANG |
|
11 |
# lineinfile: dest=/etc/sysconfig/i18n regexp=^LANG= line=LANG="en_US.UTF-8" |
|
12 |
|
|
13 |
# - name: set .bashrc |
|
14 |
# copy: src=files/.bashrc dest=/home/vagrant/.bashrc force=yes |
|
15 |
# - name: set .profile |
|
16 |
# copy: src=files/.profile dest=/home/vagrant/.profile force=yes |
|
17 |
- name: set hostname |
|
18 |
hostname: name=corpus-build |
|
19 |
|
|
20 |
- name: check yum base last update |
|
21 |
stat: path=/var/cache/yum/x86_64/6/base/cachecookie |
|
22 |
register: yum_cache_stat_base |
|
23 |
|
|
24 |
- name: additional repos install |
|
25 |
yum: name={{item}} state=latest enablerepo=extras |
|
26 |
with_items: |
|
27 |
- epel-release |
|
28 |
|
|
29 |
# Remi yum repository. |
|
30 |
- stat: path=/etc/yum.repos.d/remi.repo |
|
31 |
register: remi_repo |
|
32 |
|
|
33 |
- name: Download Remi repo. |
|
34 |
get_url: url=http://rpms.famillecollet.com/enterprise/remi-release-6.rpm dest=/tmp/ |
|
35 |
when: remi_repo.stat.exists == False |
|
36 |
|
|
37 |
- name: Install Remi repo. |
|
38 |
command: rpm -Uvh --force /tmp/remi-release-6.rpm creates=/etc/yum.repos.d/remi.repo |
|
39 |
when: remi_repo.stat.exists == False |
|
40 |
|
|
41 |
- name : delete remi rpm |
|
42 |
file: path=/tmp/remi-release-6.rpm state=absent |
|
43 |
|
|
44 |
- name: additional repos install epel |
|
45 |
ini_file: |
|
46 |
dest: /etc/yum.repos.d/epel.repo |
|
47 |
section: epel |
|
48 |
option: enabled |
|
49 |
value: 1 |
|
50 |
|
|
51 |
- name: yum update |
|
52 |
yum: name=* update_cache=yes state=latest |
|
53 |
# when: ansible_date_time.epoch|float - yum_cache_stat_base.stat.mtime > 60*60*12*24 |
|
54 |
|
|
55 |
- name: install packages |
|
56 |
yum: name={{item}} state=latest enablerepo=remi |
|
57 |
with_items: |
|
58 |
- git-core |
|
59 |
- zlib |
|
60 |
- zlib-devel |
|
61 |
- gcc-c++ |
|
62 |
- patch |
|
63 |
- readline |
|
64 |
- readline-devel |
|
65 |
- libyaml-devel |
|
66 |
- libffi-devel |
|
67 |
- openssl-devel |
|
68 |
- make |
|
69 |
- bzip2 |
|
70 |
- autoconf |
|
71 |
- automake |
|
72 |
- libtool |
|
73 |
- bison |
|
74 |
- curl |
|
75 |
- sqlite-devel |
|
76 |
- rpm-build |
|
77 |
- redhat-rpm-config |
|
78 |
- php56 |
|
79 |
- php56-php-pdo |
|
80 |
- php56-php-mbstring |
|
81 |
- php56-php-mcrypt |
|
82 |
|
|
83 |
- name: activate remi php scl |
|
84 |
lineinfile: dest=/home/vagrant/.bash_profile regexp="^source \/opt\/remi\/php56\/enable$" line="source /opt/remi/php56/enable" |
|
85 |
|
|
86 |
- stat: path=/home/vagrant/.rbenv |
|
87 |
register: rbenv_stat |
|
88 |
|
|
89 |
- name: clone rbenv github repo |
|
90 |
git: repo=https://github.com/rbenv/rbenv.git dest=/home/vagrant/.rbenv |
|
91 |
become: yes |
|
92 |
become_user: vagrant |
|
93 |
when: rbenv_stat.stat.exists == False |
|
94 |
|
|
95 |
- name: configure rbenv |
|
96 |
command: chdir=/home/vagrant/.rbenv {{ item }} |
|
97 |
with_items: |
|
98 |
- src/configure |
|
99 |
- /usr/bin/make -C src |
|
100 |
become: yes |
|
101 |
become_user: vagrant |
|
102 |
when: rbenv_stat.stat.exists == False |
|
103 |
|
|
104 |
- name: add rbenv to path |
|
105 |
lineinfile: dest=/home/vagrant/.bash_profile regexp="^PATH=" line="PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.rbenv/bin" |
|
106 |
|
|
107 |
- name: add rbenv init to profile |
|
108 |
lineinfile: dest=/home/vagrant/.bash_profile regexp="^eval \"\$\(rbenv init \-\)\"$" line="eval \"$(rbenv init -)\"" |
|
109 |
|
|
110 |
- name: clone ruby-build github repo |
|
111 |
git: repo=https://github.com/rbenv/ruby-build.git dest=/home/vagrant/.rbenv/plugins/ruby-build |
|
112 |
become: yes |
|
113 |
become_user: vagrant |
|
114 |
when: rbenv_stat.stat.exists == False |
|
115 |
|
|
116 |
- name: install ruby 2.3.0 |
|
117 |
command: chdir=/home/vagrant/.rbenv creates=/home/vagrant/.rbenv/versions/2.3.0 /home/vagrant/.rbenv/bin/rbenv install 2.3.0 |
|
118 |
become: yes |
|
119 |
become_user: vagrant |
|
120 |
|
|
121 |
- name: make ruby 2.3.0 global |
|
122 |
command: chdir=/home/vagrant/.rbenv /home/vagrant/.rbenv/bin/rbenv global 2.3.0 |
|
123 |
become: yes |
|
124 |
become_user: vagrant |
|
125 |
|
|
126 |
- name: install fpm |
|
127 |
shell: source ~/.bash_profile && gem install fpm |
|
128 |
args: |
|
129 |
chdir: /home/vagrant |
|
130 |
executable: /usr/bin/bash |
|
131 |
creates: /home/vagrant/.rbenv/shims/fpm |
|
132 |
become: yes |
|
133 |
become_user: vagrant |