123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- ---
- -
- gather_facts: false
- hosts: tag_system_wordpress2
- vars:
- remote_deploy_user: ubuntu
- remote_deploy_group: ubuntu
- remote_deploy_home: /home/ubuntu
- remote_www_dir: /var/www
- remote_wordpress_dir: /var/www/html
- mysql_root_password: mypass
- wordpress_db_name: wordpress
- wordpress_db_user: dbuser
- wordpress_db_user_pass: dbpass
- wordpress_db_prefix: wp_
- wordpress_home_url: http://35.178.251.165
- wordpress_site_title: Test Site
- wordpress_admin_user: admin
- wordpress_admin_user_pass: adminpass
- wordpress_admin_email: email@example.com
- tasks:
- - name: Install PHP v5.6 for WP-CLI support
- become: yes
- apt:
- pkg: ['php5.6', 'php5.6-common', 'php5.6-mysqlnd', 'php5.6-mcrypt', 'php5.6-curl', 'php5.6-cli', 'php-pear']
- - name: Download WP-CLI
- shell: curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
-
- - name: Make WP-CLI executable
- become: yes
- file:
- path: /home/ubuntu/wp-cli.phar
- mode: u=rwx,g=rx,o=rx
-
- - name: Move WP-CLI to /usr/local/bin/wp
- become: yes
- command: mv /home/ubuntu/wp-cli.phar /usr/local/bin/wp
-
- - name: Create WordPress database
- mysql_db:
- name: "{{ wordpress_db_name }}"
- state: present
- login_user: root
- login_password: "{{ mysql_root_password }}"
-
- - name: Create MySQL conf file
- copy:
- dest: "/home/ubuntu/.my.cnf"
- content: |
- [client]
- user=root
- password={{ mysql_root_password }}
- - name: Create WordPress DB user and grant permissions to WordPress DB
- mysql_user:
- name: "{{ wordpress_db_user }}"
- password: "{{ wordpress_db_user_pass }}"
- priv: "{{ wordpress_db_name }}.*:ALL"
- state: present
- login_unix_socket: /var/run/mysqld/mysqld.sock
- - name: Download WordPress
- command: wp core download
- args:
- chdir: "{{ remote_deploy_home }}/"
- remote_user: "{{ remote_deploy_user }}"
- - name: Change owner
- become: yes
- command: chown ubuntu:ubuntu /var/www/html -R
-
- - name: Copy WordPress to /var/www/html
- command: cp -r /home/ubuntu/. "{{ remote_wordpress_dir }}"/
- - name: Change WordPress owner
- file: dest=/var/www/html owner=ubuntu group=ubuntu recurse=yes
- become: yes
- - name: Configure WordPress
- command: wp core config
- --path="{{ remote_wordpress_dir }}"
- --dbname="{{ wordpress_db_name }}"
- --dbuser="{{ wordpress_db_user }}"
- --dbpass="{{ wordpress_db_user_pass }}"
- --dbprefix="{{ wordpress_db_prefix }}"
- remote_user: "{{ remote_deploy_user }}"
-
- - name: Is WordPress installed?
- command: wp core is-installed --path='/var/www/html'
- register: wordpress_is_installed
- ignore_errors: True
- remote_user: "{{ remote_deploy_user }}"
-
- - name: Install WordPress tables
- command: wp core install
- --url="{{ wordpress_home_url }}"
- --title="{{ wordpress_site_title }}"
- --admin_user="{{ wordpress_admin_user }}"
- --admin_password="{{ wordpress_admin_user_pass }}"
- --admin_email="{{ wordpress_admin_email }}"
- args:
- chdir: "{{ remote_wordpress_dir }}/"
- remote_user: "{{ remote_deploy_user }}"
-
- - name: Download WordPress dummy data
- get_url:
- url: https://raw.githubusercontent.com/manovotny/wptest/master/wptest.xml
- dest: "{{ remote_wordpress_dir }}/wptest.xml"
-
- - name: Import WordPress dummy data
- command: "wp import {{ item }} --authors=create"
- args:
- chdir: "{{ remote_wordpress_dir }}"
- with_items:
- - wp-content/plugins/woocommerce/dummy-data/dummy-data.xml
- - wptest.xml
|