mirror of
https://github.com/iiab/iiab.git
synced 2025-03-09 15:40:17 +00:00
refactor roles/pathagar/tasks/main.yml per new Ansible syntax/style
This commit is contained in:
parent
824858e498
commit
8e76fe2f02
1 changed files with 138 additions and 112 deletions
|
@ -1,27 +1,31 @@
|
||||||
- name: Remove if exist pathagar rpm version
|
- name: Remove package Pathagar (in case rpm?)
|
||||||
package: name=pathagar
|
package:
|
||||||
state=absent
|
name: pathagar
|
||||||
|
state: absent
|
||||||
|
|
||||||
- name: Install pathagar pre requisites (both fedora and debian)
|
- name: Install Pathagar prerequisites (both fedora and debian)
|
||||||
package: name={{ item }}
|
package:
|
||||||
state=present
|
name: "{{ item }}"
|
||||||
|
state: present
|
||||||
with_items:
|
with_items:
|
||||||
- python-virtualenv
|
- python-virtualenv
|
||||||
- python-pip
|
- python-pip
|
||||||
- python-psycopg2
|
- python-psycopg2
|
||||||
|
|
||||||
- name: Install pathagar pre requisites for debian
|
- name: Install Pathagar prerequisites (debuntu)
|
||||||
package: name={{ item }}
|
package:
|
||||||
state=present
|
name: "{{ item }}"
|
||||||
|
state: present
|
||||||
with_items:
|
with_items:
|
||||||
- libapache2-mod-wsgi
|
- libapache2-mod-wsgi
|
||||||
- libxml2-dev
|
- libxml2-dev
|
||||||
- libxslt-dev
|
- libxslt-dev
|
||||||
when: is_debuntu
|
when: is_debuntu
|
||||||
|
|
||||||
- name: Install pathagar pre requisites not debian
|
- name: Install Pathagar prerequisites (not debuntu)
|
||||||
package: name={{ item }}
|
package:
|
||||||
state=present
|
name: "{{ item }}"
|
||||||
|
state: present
|
||||||
with_items:
|
with_items:
|
||||||
- mod_wsgi
|
- mod_wsgi
|
||||||
- libxml2-devel
|
- libxml2-devel
|
||||||
|
@ -29,32 +33,37 @@
|
||||||
when: not is_debuntu
|
when: not is_debuntu
|
||||||
|
|
||||||
- name: Create destination folder
|
- name: Create destination folder
|
||||||
file: path={{ pathagar_src }}
|
file:
|
||||||
state=directory
|
path: "{{ pathagar_src }}"
|
||||||
owner=root
|
state: directory
|
||||||
group=root
|
owner: root
|
||||||
mode=0755
|
group: root
|
||||||
|
mode: 0755
|
||||||
|
|
||||||
- name: Create books destination folder
|
- name: Create books destination folder
|
||||||
file: path={{ pathagar_media }}
|
file:
|
||||||
state=directory
|
path: "{{ pathagar_media }}"
|
||||||
owner={{ apache_user }}
|
state: directory
|
||||||
group={{ apache_user }}
|
owner: "{{ apache_user }}"
|
||||||
mode=0755
|
group: "{{ apache_user }}"
|
||||||
|
mode: 0755
|
||||||
|
|
||||||
- name: Determine if pathagar has already been downloaded from git
|
- name: Determine if Pathagar has already been downloaded from git
|
||||||
stat: path="{{ pathagar_src }}/settings.py"
|
stat:
|
||||||
|
path: "{{ pathagar_src }}/settings.py"
|
||||||
register: pathagar
|
register: pathagar
|
||||||
|
|
||||||
- name: Clone pathagar repo
|
- name: Clone Pathagar repo
|
||||||
git: repo=https://github.com/PathagarBooks/pathagar.git
|
git:
|
||||||
dest={{ pathagar_src }}
|
repo: https://github.com/PathagarBooks/pathagar.git
|
||||||
update=yes
|
dest: "{{ pathagar_src }}"
|
||||||
version=master
|
update: yes
|
||||||
when: internet_available and pathagar.stat.exists is defined and not pathagar.stat.exists
|
version: master
|
||||||
|
when: internet_available and pathagar.stat.exists is defined and not pathagar.stat.exists
|
||||||
|
|
||||||
- name: Install pathagar requirements in a virtualenv
|
- name: Install Pathagar requirements in a virtualenv
|
||||||
pip: name={{ item }}
|
pip:
|
||||||
|
name: "{{ item }}"
|
||||||
with_items:
|
with_items:
|
||||||
- Django==1.4.5
|
- Django==1.4.5
|
||||||
- django-tagging==0.3.1
|
- django-tagging==0.3.1
|
||||||
|
@ -62,117 +71,134 @@
|
||||||
- lxml==3.4.4
|
- lxml==3.4.4
|
||||||
when: internet_available
|
when: internet_available
|
||||||
|
|
||||||
- name: Install pathagar requirements in a virtualenv
|
- name: Install Pathagar requirements in a virtualenv
|
||||||
pip: name={{ item }}
|
pip:
|
||||||
extra_args="--use-wheel"
|
name: "{{ item }}"
|
||||||
virtualenv={{ pathagar_venv }}
|
extra_args: "--use-wheel"
|
||||||
virtualenv_site_packages=yes
|
virtualenv: "{{ pathagar_venv }}"
|
||||||
|
virtualenv_site_packages: yes
|
||||||
with_items:
|
with_items:
|
||||||
- django-taggit==0.14
|
- django-taggit==0.14
|
||||||
|
|
||||||
- name: Create pathagar postgresql user
|
- name: Create Pathagar postgresql user
|
||||||
postgresql_user: name={{ pathagar_db_user }}
|
postgresql_user:
|
||||||
password={{ pathagar_db_password }}
|
name: "{{ pathagar_db_user }}"
|
||||||
role_attr_flags=NOSUPERUSER,NOCREATEROLE,NOCREATEDB
|
password: "{{ pathagar_db_password }}"
|
||||||
state=present
|
role_attr_flags: NOSUPERUSER,NOCREATEROLE,NOCREATEDB
|
||||||
|
state: present
|
||||||
become: yes
|
become: yes
|
||||||
become_user: postgres
|
become_user: postgres
|
||||||
|
|
||||||
- name: Start postgresql-iiab
|
- name: Start postgresql-iiab
|
||||||
service: name=postgresql-iiab
|
service:
|
||||||
state=started
|
name: postgresql-iiab
|
||||||
|
state: started
|
||||||
|
|
||||||
- name: Enable pathagar postgresql user access by md5 method
|
- name: Enable Pathagar postgresql user access by md5 method
|
||||||
lineinfile: backup=yes
|
lineinfile:
|
||||||
dest=/library/pgsql-iiab/pg_hba.conf
|
backup: yes
|
||||||
regexp="^host\s+pathagar"
|
dest: /library/pgsql-iiab/pg_hba.conf
|
||||||
line="host pathagar pathagar samehost md5"
|
regexp: "^host\s+pathagar"
|
||||||
state=present
|
line: "host pathagar pathagar samehost md5"
|
||||||
insertafter="^# IPv4 local connections"
|
state: present
|
||||||
owner=postgres
|
insertafter: "^# IPv4 local connections"
|
||||||
group=postgres
|
owner: postgres
|
||||||
|
group: postgres
|
||||||
register: enable_pathagar_md5_access
|
register: enable_pathagar_md5_access
|
||||||
|
|
||||||
- name: Reload postgresql service
|
- name: Reload postgresql service
|
||||||
service: name=postgresql-iiab
|
service:
|
||||||
state=reloaded
|
name: postgresql-iiab
|
||||||
|
state: reloaded
|
||||||
when: enable_pathagar_md5_access.changed
|
when: enable_pathagar_md5_access.changed
|
||||||
|
|
||||||
- name: Create pathagar postgresql database
|
- name: Create pathagar postgresql database
|
||||||
postgresql_db: name={{ pathagar_db_name }}
|
postgresql_db:
|
||||||
encoding=utf8
|
name: "{{ pathagar_db_name }}"
|
||||||
owner={{ pathagar_db_user }}
|
encoding: utf8
|
||||||
state=present
|
owner: "{{ pathagar_db_user }}"
|
||||||
template=template0
|
state: present
|
||||||
|
template: template0
|
||||||
become: yes
|
become: yes
|
||||||
become_user: postgres
|
become_user: postgres
|
||||||
|
|
||||||
- name: Install XS custom settings for patahgar
|
- name: Install IIAB custom settings for Pathagar
|
||||||
template: src=prod_settings.py
|
template:
|
||||||
dest={{ pathagar_src }}/prod_settings.py
|
src: prod_settings.py
|
||||||
owner=root
|
dest: "{{ pathagar_src }}/prod_settings.py"
|
||||||
group=root
|
owner: root
|
||||||
mode=0644
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
|
||||||
- name: Create pathagar initial db
|
- name: Create Pathagar initial db
|
||||||
django_manage: app_path={{ pathagar_src }}
|
django_manage:
|
||||||
command=syncdb
|
app_path: "{{ pathagar_src }}"
|
||||||
virtualenv={{ pathagar_venv }}
|
command: syncdb
|
||||||
settings=pathagar.prod_settings
|
virtualenv: "{{ pathagar_venv }}"
|
||||||
|
settings: pathagar.prod_settings
|
||||||
|
|
||||||
- name: Upload pathagar admin user
|
- name: Upload Pathagar admin user
|
||||||
template: src=auth.User.json
|
template:
|
||||||
dest={{ pathagar_dir }}/auth.User.json
|
src: auth.User.json
|
||||||
owner=root
|
dest: "{{ pathagar_dir }}/auth.User.json"
|
||||||
group=root
|
owner: root
|
||||||
mode=0600
|
group: root
|
||||||
|
mode: 0600
|
||||||
|
|
||||||
- name: Load pathagar admin user
|
- name: Load Pathagar admin user
|
||||||
django_manage: app_path={{ pathagar_src }}
|
django_manage:
|
||||||
command=loaddata
|
app_path: "{{ pathagar_src }}"
|
||||||
virtualenv={{ pathagar_venv }}
|
command: loaddata
|
||||||
settings=pathagar.prod_settings
|
virtualenv: "{{ pathagar_venv }}"
|
||||||
fixtures={{ pathagar_dir }}/auth.User.json
|
settings: pathagar.prod_settings
|
||||||
|
fixtures: "{{ pathagar_dir }}/auth.User.json"
|
||||||
|
|
||||||
- name: Collect pathagar static files
|
- name: Collect Pathagar static files
|
||||||
django_manage: app_path={{ pathagar_src }}
|
django_manage:
|
||||||
command=collectstatic
|
app_path: "{{ pathagar_src }}"
|
||||||
virtualenv={{ pathagar_venv }}
|
command: collectstatic
|
||||||
settings=pathagar.prod_settings
|
virtualenv: "{{ pathagar_venv }}"
|
||||||
|
settings: pathagar.prod_settings
|
||||||
|
|
||||||
- name: Install wsgi.py for patahgar
|
- name: Install wsgi.py for Pathagar
|
||||||
template: src=wsgi.py
|
template:
|
||||||
dest={{ pathagar_dir }}/wsgi.py
|
src: wsgi.py
|
||||||
owner=root
|
dest: "{{ pathagar_dir }}/wsgi.py"
|
||||||
group=root
|
owner: root
|
||||||
mode=0644
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
|
||||||
- name: Install httpd conf for pathagar
|
- name: Install httpd conf for Pathagar
|
||||||
template: src=pathagar.conf
|
template:
|
||||||
backup=yes
|
src: pathagar.conf
|
||||||
dest=/etc/{{ apache_config_dir }}/pathagar.conf
|
backup: yes
|
||||||
mode=0644
|
dest: "/etc/{{ apache_config_dir }}/pathagar.conf"
|
||||||
|
mode: 0644
|
||||||
|
|
||||||
- name: Enable pathagar
|
- name: Enable Pathagar (debuntu)
|
||||||
file: path=/etc/apache2/sites-enabled/pathagar.conf
|
file:
|
||||||
src=/etc/apache2/sites-available/pathagar.conf
|
path: /etc/apache2/sites-enabled/pathagar.conf
|
||||||
state=link
|
src: /etc/apache2/sites-available/pathagar.conf
|
||||||
|
state: link
|
||||||
when: pathagar_enabled and is_debuntu
|
when: pathagar_enabled and is_debuntu
|
||||||
|
|
||||||
- name: Disable pathagar
|
- name: Disable Pathagar (debuntu)
|
||||||
file: path=/etc/apache2/sites-enabled/pathagar.conf
|
file:
|
||||||
state=absent
|
path: /etc/apache2/sites-enabled/pathagar.conf
|
||||||
|
state: absent
|
||||||
when: not pathagar_enabled and is_debuntu
|
when: not pathagar_enabled and is_debuntu
|
||||||
|
|
||||||
- name: Restart http
|
- name: Restart http
|
||||||
service: name={{ apache_service }}
|
service:
|
||||||
state=reloaded
|
name: "{{ apache_service }}"
|
||||||
|
state: reloaded
|
||||||
|
|
||||||
- name: add pathagar to service list
|
- name: add pathagar to service list
|
||||||
ini_file: dest='{{ service_filelist }}'
|
ini_file:
|
||||||
section=pathagar
|
dest: "{{ service_filelist }}"
|
||||||
option='{{ item.option }}'
|
section: pathagar
|
||||||
value='{{ item.value }}'
|
option: "{{ item.option }}"
|
||||||
|
value: "{{ item.value }}"
|
||||||
with_items:
|
with_items:
|
||||||
- option: name
|
- option: name
|
||||||
value: pathagar
|
value: pathagar
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue