= Evergreen / OpenSRF Ansible Installer
-== settings.yml
-
-Review the values contained in setting.yml and modify as needed.
-
-== Running
+== Quick How-To
[source,sh]
---------------------------------------------------------------------------
sudo ansible-playbook playbook.yml -e "hosts=127.0.0.1"
---------------------------------------------------------------------------
+== File Structure
+
+=== playbook.yml
+
+Main playbook. Run this.
+
+=== settings.yml
+
+Installation settings. This should be the only file that needs changing.
+
+=== */main.yml
+
+Entry point for each collection of sub-tasks.
+
+=== extras
+
+Optional packages not strictly required for OpenSRF and Evergreen.
include: eg-web.yml
- name: Install Evergreen
include: eg-install.yml
-- name: Setup Rsyslog
- include: rsyslog.yml
- when: use_rsyslog
- name: Setup Apache
include: apache.yml
-- name: Install Nginx
- include: nginx.yml
- when: use_nginx
- name: Install Database
include: database.yml
when: install_database
+++ /dev/null
-# Apache must be reconfigured before NGINX is installed
-# or the NGINX install will fail on conflicting ports
-- replace:
- dest: /etc/apache2/ports.conf
- regexp: 'Listen 80'
- replace: 'Listen 7080'
-- replace:
- dest: /etc/apache2/ports.conf
- regexp: 'Listen 443'
- replace: 'Listen 7443'
-- replace:
- dest: /etc/apache2/sites-available/eg.conf
- regexp: ':80'
- replace: ':7080'
-- replace:
- dest: /etc/apache2/sites-available/eg.conf
- regexp: ':443'
- replace: ':7443'
-- name: Restart Apache With New Ports
- service: name=apache2 state=restarted
-- name: Install Nginx Prereqs
- apt: name=nginx state=present
-- name: Install NGINX Configs
- copy:
- src: "{{repo_base}}/OpenSRF/examples/nginx/osrf-ws-http-proxy"
- dest: /etc/nginx/sites-available/osrf-ws-http-proxy
-- name: Link NGINX Configs
- file:
- state: link
- src: /etc/nginx/sites-available/osrf-ws-http-proxy
- dest: /etc/nginx/sites-enabled/osrf-ws-http-proxy
-- name: Remove Default NGINX Site
- file:
- state: absent
- dest: /etc/nginx/sites-available/default
-- name: Restart NGINX With New Config
- service: name=nginx state=restarted
-- name: Update OpenSRF WS JS Port
- lineinfile:
- dest: /openils/lib/javascript/opensrf_ws.js
- regexp: '^var WEBSOCKET_PORT_SSL = 7682;'
- line: 'var WEBSOCKET_PORT_SSL = 443;'
-- name: Update OpenSRF WS JS Port (Shared)
- # This file is not currently used, but may be later.
- lineinfile:
- dest: /openils/lib/javascript/opensrf_ws_shared.js
- regexp: '^var WEBSOCKET_PORT_SSL = 7682;'
- line: 'var WEBSOCKET_PORT_SSL = 443;'
-
-
+++ /dev/null
-- name: Configure Rsyslog
- when: use_rsyslog
- copy:
- src: "{{repo_base}}/Evergreen/Open-ILS/examples/evergreen-rsyslog.conf"
- dest: /etc/rsyslog.d/evergreen.conf
-- name: Restart Rsyslog
- when: use_rsyslog
- service: name=rsyslog state=restarted
-- name: Update opensrf_core.xml for rsyslog
- replace:
- dest: "{{eg_install_path}}/conf/opensrf_core.xml"
- regexp: '<logfile>\/(.*)\n.*<!--'
- replace: '<!--<logfile>/\1-->'
-- replace:
- dest: "{{eg_install_path}}/conf/opensrf_core.xml"
- regexp: '-->.*\n(.*)<loglevel>'
- replace: '<loglevel>'
-- replace:
- dest: "{{eg_install_path}}/conf/opensrf_core.xml"
- regexp: '-->.*\n(.*)</gateway>'
- replace: '</gateway>'
--- /dev/null
+- name: Setup Rsyslog
+ include: rsyslog.yml
+ when: use_rsyslog
+- name: Install Nginx
+ include: nginx.yml
+ when: use_nginx
--- /dev/null
+# Apache must be reconfigured before NGINX is installed
+# or the NGINX install will fail on conflicting ports
+- replace:
+ dest: /etc/apache2/ports.conf
+ regexp: 'Listen 80'
+ replace: 'Listen 7080'
+- replace:
+ dest: /etc/apache2/ports.conf
+ regexp: 'Listen 443'
+ replace: 'Listen 7443'
+- replace:
+ dest: /etc/apache2/sites-available/eg.conf
+ regexp: ':80'
+ replace: ':7080'
+- replace:
+ dest: /etc/apache2/sites-available/eg.conf
+ regexp: ':443'
+ replace: ':7443'
+- name: Restart Apache With New Ports
+ service: name=apache2 state=restarted
+- name: Install Nginx Prereqs
+ apt: name=nginx state=present
+- name: Install NGINX Configs
+ copy:
+ src: "{{repo_base}}/OpenSRF/examples/nginx/osrf-ws-http-proxy"
+ dest: /etc/nginx/sites-available/osrf-ws-http-proxy
+- name: Link NGINX Configs
+ file:
+ state: link
+ src: /etc/nginx/sites-available/osrf-ws-http-proxy
+ dest: /etc/nginx/sites-enabled/osrf-ws-http-proxy
+- name: Remove Default NGINX Site
+ file:
+ state: absent
+ dest: /etc/nginx/sites-available/default
+- name: Restart NGINX With New Config
+ service: name=nginx state=restarted
+- name: Update OpenSRF WS JS Port
+ lineinfile:
+ dest: /openils/lib/javascript/opensrf_ws.js
+ regexp: '^var WEBSOCKET_PORT_SSL = 7682;'
+ line: 'var WEBSOCKET_PORT_SSL = 443;'
+- name: Update OpenSRF WS JS Port (Shared)
+ # This file is not currently used, but may be later.
+ lineinfile:
+ dest: /openils/lib/javascript/opensrf_ws_shared.js
+ regexp: '^var WEBSOCKET_PORT_SSL = 7682;'
+ line: 'var WEBSOCKET_PORT_SSL = 443;'
+
+
--- /dev/null
+- name: Configure Rsyslog
+ when: use_rsyslog
+ copy:
+ src: "{{repo_base}}/Evergreen/Open-ILS/examples/evergreen-rsyslog.conf"
+ dest: /etc/rsyslog.d/evergreen.conf
+- name: Restart Rsyslog
+ when: use_rsyslog
+ service: name=rsyslog state=restarted
+- name: Update opensrf_core.xml for rsyslog
+ replace:
+ dest: "{{eg_install_path}}/conf/opensrf_core.xml"
+ regexp: '<logfile>\/(.*)\n.*<!--'
+ replace: '<!--<logfile>/\1-->'
+- replace:
+ dest: "{{eg_install_path}}/conf/opensrf_core.xml"
+ regexp: '-->.*\n(.*)<loglevel>'
+ replace: '<loglevel>'
+- replace:
+ dest: "{{eg_install_path}}/conf/opensrf_core.xml"
+ regexp: '-->.*\n(.*)</gateway>'
+ replace: '</gateway>'
-##
+# OpenSRF / Evergreen Ansible Installer Playbook
+# Author: Bill Erickson <berickxx@gmail.com>
- hosts: '{{hosts}}'
connection: local
include: opensrf/main.yml
- name: Process Evergreen Tasks
include: evergreen/main.yml
+ - name: Process Optional Packages
+ include: extras/main.yml