templates/ansible/roles/base/tasks/main.yml.erb
---
- name: Update apt cache
apt:
update_cache: yes
cache_valid_time: 3600
- name: Install apt dependencies
apt: name={{ item }}
with_items:
- autoconf
- bison
- build-essential
- libssl-dev
- libyaml-dev
- libreadline6-dev
- zlib1g-dev
- libncurses5-dev
- nodejs
- python-pip
- python-dev
- htop
- git
- libgmp-dev
<% if params[:databases].include?('postgresql') -%>
- libpq-dev
<% end %>
- name: Install additional packages
apt: name={{ item }}
with_items: packages
when: packages
- name: Create application group
group: name={{ group_name }}
- name: Create application user
user: name={{ user_name }} group={{ group_name }} shell=/bin/bash home={{ user_home_path }}
- name: Setup script to read application environment
template: src=read_environment.sh.j2 dest=/etc/profile.d/read_environment.sh
notify:
- restart application
<% params[:background_jobs].each do |job| -%>
- restart <%= job %>
<% end %>
- name: Create temp directory
file: path={{ app_temp_path }} state=directory
sudo: no
- name: Create profile.d directory
file: path={{ profile_d_path }} state=directory owner={{ user_name }} group={{ group_name }}
- name: Create ~/.bash_profile which loads all from ~/profile.d
template: src=bash_profile.j2 dest={{ user_home_path }}/.bash_profile owner={{ user_name }} group={{ group_name }}