vagrant-box-factory
140 строк · 3.1 Кб
1---
2- name: Ubuntu Server Provisioning
3hosts: all
4become: True
5gather_facts: False
6vars:
7ruby_version: 2.6.1
8ruby_download_url: http://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.1.tar.gz
9bundler_version: 1.17.2
10rails_version: 5.1.7
11database_username: dbuser
12database_password: dbpassword
13redis_port: 6379
14
15tasks:
16- name: install python
17raw: sudo apt update && sudo apt install -y python3 python3-pip python3-setuptools
18
19- setup:
20
21- name: install pip modules
22pip:
23name:
24- simplejson
25
26- name: update apt cache
27apt: update_cache=yes
28
29- name: upgrade packages
30apt: upgrade=dist
31
32#
33# Install Postgres
34#
35
36# https://github.com/geerlingguy/ansible-role-postgresql
37- import_role:
38name: geerlingguy.postgresql
39vars:
40postgresql_service_state: started
41postgresql_service_enabled: true
42postgresql_python_library: python3-psycopg2
43postgresql_users:
44- name: "{{ database_username }}"
45password: "{{ database_password }}"
46role_attr_flags: SUPERUSER
47
48#
49# Install Redis
50#
51
52# https://github.com/geerlingguy/ansible-role-redis
53- import_role:
54name: geerlingguy.redis
55vars:
56redis_bind_interface: 127.0.0.1
57
58#
59# Install Ruby
60#
61
62# https://github.com/geerlingguy/ansible-role-ruby
63- import_role:
64name: geerlingguy.ruby
65vars:
66workspace: /home/vagrant
67ruby_install_from_source: true
68ruby_install_bundler: false
69
70- name: install bundler
71shell: "gem install bundler -v {{ bundler_version }}"
72
73- name: set dir attributes
74file:
75path: "{{ item }}"
76state: directory
77owner: vagrant
78group: vagrant
79mode: 'u+rw'
80recurse: yes
81with_items:
82- /var/lib/gems
83- /usr/local/bin
84
85#
86# Install Rails
87#
88
89- name: install curl
90apt:
91name: curl
92
93- name: install node
94shell: curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
95args:
96warn: no
97
98- name: add yarn pubkey
99shell: curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
100args:
101warn: no
102
103- name: update yarn apt respository
104apt_repository:
105repo: deb https://dl.yarnpkg.com/debian/ stable main
106state: present
107filename: yarn
108
109- name: install extra packages
110apt:
111name: "{{ packages }}"
112vars:
113packages:
114- vim
115- tmux
116- mc
117- git-core
118- net-tools
119- tree
120- zlib1g-dev
121- build-essential
122- libssl-dev
123- libreadline-dev
124- libyaml-dev
125- libsqlite3-dev
126- sqlite3
127- libxml2-dev
128- libxslt1-dev
129- libcurl4-openssl-dev
130- software-properties-common
131- libffi-dev
132- nodejs
133- yarn
134
135- name: install rails
136gem:
137name: rails
138version: "{{ rails_version }}"
139state: present
140become: False
141