diff -r a2342f26c9de -r b0b56e0f8c7f dev/provisioning/playbook.yml --- a/dev/provisioning/playbook.yml Fri Jan 15 15:27:56 2016 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,387 +0,0 @@ ---- -- hosts: all - - vars: - - # These are the Wordpress database settings - db_name: corpus - db_user: corpus - db_password: md5bf687edf8c06f3f1aa3759c82c1217a0 - - tasks: -# - name: install language pack -# command: localedef -v -c -i en_US -f UTF-8 en_US.UTF-8 - - - name: set hostname - hostname: name={{site_name}} - - name: set hosts IPv4 - lineinfile: - dest: /etc/hosts - line: 127.0.0.1 corpus-parole corpus-parole.local - - name: set hosts IPv6 - lineinfile: - dest: /etc/hosts - line: ::1 corpus-parole corpus-parole.local - - - name: ensure correct locale LC_ALL - lineinfile: dest=/etc/sysconfig/i18n regexp=^LC_ALL= line=LC_ALL="en_US.UTF-8" - - name: ensure correct locale LANG - lineinfile: dest=/etc/sysconfig/i18n regexp=^LANG= line=LANG="en_US.UTF-8" - - # - name: set .bashrc - # copy: src=files/.bashrc dest=/home/vagrant/.bashrc force=yes - # - name: set .profile - # copy: src=files/.profile dest=/home/vagrant/.profile force=yes - - - name: check yum base last update - stat: path=/var/cache/yum/x86_64/6/base/cachecookie - register: yum_cache_stat_base - - - name: yum update - yum: name=* update_cache=yes state=latest -# when: ansible_date_time.epoch|float - yum_cache_stat_base.stat.mtime > 60*60*12*24 - - - name: repo ignore outdated postgres base - ini_file: - dest: /etc/yum.repos.d/CentOS-Base.repo - section: base - option: exclude=postgresql* - - - name: repo ignore outdated postgres update - ini_file: - dest: /etc/yum.repos.d/CentOS-Base.repo - section: updates - option: exclude=postgresql* - - - name: additional repos install - yum: name={{item}} state=latest - with_items: - - epel-release - - centos-release-SCL - - # Remi yum repository. - - stat: path=/etc/yum.repos.d/remi.repo - register: remi_repo - - - name: Download Remi repo. - get_url: url=http://rpms.famillecollet.com/enterprise/remi-release-6.rpm dest=/tmp/ - when: remi_repo.stat.exists == False - - - name: Install Remi repo. - command: rpm -Uvh --force /tmp/remi-release-6.rpm creates=/etc/yum.repos.d/remi.repo - when: remi_repo.stat.exists == False - - - name : delete remi rpm - file: path=/tmp/remi-release-6.rpm state=absent - - # postgres yum repository. - - stat: path=/etc/yum.repos.d/pgdg-94-centos.repo - register: postgres_repo - - - name: Download Postgres repo. - get_url: url=http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm dest=/tmp/ - when: postgres_repo.stat.exists == False - - - name: Install postgres repo. - command: rpm -Uvh --force /tmp/pgdg-centos94-9.4-1.noarch.rpm creates=/etc/yum.repos.d/pgdg-94-centos.repo - when: postgres_repo.stat.exists == False - - - name : delete postgres rpm - file: path=/tmp/pgdg-centos94-9.4-1.noarch.rpm state=absent - - - name: additional repos install epel - ini_file: - dest: /etc/yum.repos.d/epel.repo - section: epel - option: enabled - value: 1 - - - name: check yum epel last update - stat: path=/var/cache/yum/x86_64/6/epel/cachecookie - register: yum_cache_stat_epel - - - name: yum update after repos - yum: name=* update_cache=yes state=latest -# when: ansible_date_time.epoch|float - yum_cache_stat_epel.stat.mtime > 60*60*12*24 - - #TODO install alternative packages - - name: install libs - yum: name={{item}} state=latest enablerepo=remi - with_items: - - nginx - - postgresql94-server - - python-psycopg2 - - htop - - openssl - - php56 - - php56-php-fpm - - php56-php-mbstring - - php56-php-mcrypt - - php56-php-gd - - php56-php-pgsql - - java-1.8.0-openjdk - - tomcat - - -## php-fpm config - -# set fpm user to nginx -# authorize /var/log/php-fpm - - name: copy sysconfig for php-fpm - copy: src=files/sysconfig_php-fpm dest=/opt/remi/php56/root/etc/sysconfig/php-fpm - - name: set /opt/remi/php56/root/var/log/php-fpm permission - file: path=/opt/remi/php56/root/var/log/php-fpm/ state=directory owner=nginx group=nginx - - - name: set php-fpm listen to socket - lineinfile: - dest: /opt/remi/php56/root/etc/php-fpm.d/www.conf - regexp: '^listen\s*=' - line: 'listen = /opt/remi/php56/root/var/run/php-fpm/php-fpm.sock' - state: present - - - name: set php-fpm user - lineinfile: - dest: /opt/remi/php56/root/etc/php-fpm.d/www.conf - regexp: '^user\s*=' - line: 'user = nginx' - state: present - - - name: set php-fpm group - lineinfile: - dest: /opt/remi/php56/root/etc/php-fpm.d/www.conf - regexp: '^group\s*=' - line: 'group = nginx' - state: present - - - name: set php-fpm user - lineinfile: - dest: /opt/remi/php56/root/etc/php-fpm.d/www.conf - regexp: '^;listen.owner\s*=' - line: 'listen.owner = nginx' - state: present - - - name: set php-fpm group - lineinfile: - dest: /opt/remi/php56/root/etc/php-fpm.d/www.conf - regexp: '^;listen.group\s*=' - line: 'listen.group = nginx' - state: present - - - name: set php-fpm permission - lineinfile: - dest: /opt/remi/php56/root/etc/php-fpm.d/www.conf - regexp: '^;listen.mode\s*=' - line: 'listen.mode = 0660' - state: present - - - name: add link to php56 fpm log - file: path=/var/log/php56-php-fpm src=/opt/remi/php56/root/var/log/php-fpm state=link - - - name: restart php-fpm - service: name=php56-php-fpm state=restarted enabled=yes - - -## nginx config - - - name: create ssl folder - file: path=/etc/nginx/ssl state=directory mode=0700 - - name: generate ssl key - command: openssl genrsa -out "/etc/nginx/ssl/{{ site_name }}.key" 1024 - args: - creates: /etc/nginx/ssl/{{ site_name }}.key - - name: generate ssl csr - command: openssl req -new -key /etc/nginx/ssl/{{ site_name }}.key -out /etc/nginx/ssl/{{ site_name }}.csr -subj "/CN={{ site_name }}/O=MCC/C=FR" - args: - creates: /etc/nginx/ssl/{{ site_name }}.csr - - name: generate ssl certificate - command: openssl x509 -req -days 365 -in /etc/nginx/ssl/{{ site_name }}.csr -signkey /etc/nginx/ssl/{{ site_name }}.key -out /etc/nginx/ssl/{{ site_name }}.crt - args: - creates: /etc/nginx/ssl/{{ site_name }}.crt - - - name: change nginx default - template: src=files/site.j2 dest=/etc/nginx/nginx.conf mode=0644 force=yes - - - name: restart nginx - service: name=nginx state=restarted enabled=yes - - -## postgres - - name: set postgresql to start - service: name=postgresql-9.4 enabled=yes - - - name: postgresql initdb - command: service postgresql-9.4 initdb - args: - creates: /var/lib/pgsql/9.4/data/postgresql.conf - -## configure tomcat - - - name: set JAVA_HOME - lineinfile: - dest: /etc/tomcat/tomcat.conf - regexp: '^\#?JAVA_HOME=' - line: JAVA_HOME="/etc/alternatives/jre_1.8.0" - state: present - - - name: set parseBodyMethods to add POST - lineinfile: - dest: /etc/tomcat/server.xml - regexp: '^\s+\