This is an automated procedure to:
- create a server with provided FQDN
- set DNS record for the specified domain
- set PTR record to the newly created servers IP
- install WordPress, base install with Ansible (http://docs.ansible.com)
- create a GleSYS API key with IP, DOMAIN and SERVER privilegies (
Permissions / Allow all on Domain, IP and Server
) - use a domain which is maintained on your GleSYS account (record should not pre-exist)
- Ansible 1.7
- Sshpass
- PWGen
- XMLStarlet
- Curl
- Python Passlib Library
- Nmap
- Git-core
Below are installation instructions for Debian/Ubuntu and MacOS X. However, it's possible to keep on using your preferred OS, just find the above packages and you'll be good to go.
apt-get install python-dev build-essential python-pip pwgen xmlstarlet curl sshpass nmap python-passlib
pip install ansible
brew install ansible
brew install xmlstarlet
brew install nmap
brew install pwgen
brew install https://raw.github.com/eugeneoden/homebrew/eca9de1/Library/Formula/sshpass.rb (Homebrew doesn't want to merge this https://github.com/Homebrew/homebrew/pull/9577 but it's what Ansible uses)
brew install python
pip install passlib
First download the script:
git clone https://github.com/GleSYS/wp-auto-deploy.git
Then add your API credentials to deploy.sh where it says:
#API Credentials
USER=PLACE_YOUR_ACCOUNT_HERE
KEY=PLACE_YOUR_KEY_HERE
Finally, run the script (be sure to meet the requirements above):
./deploy.sh FQDN (for example: ./deploy.sh blog.domain.com)
- Debian 7 as template (you can edit the Ansible Playbook to make it compatible with other distributions)
- Apache 2.2
- MySQL 5.5
- PHP 5.4.0
- Postfix (SMTP)
- ProFTPd (FTP Server)
- Latest WordPress (post-setup config is done with http://wp-cli.org)
- watch this instructional video: Server Provisioning with GleSYS API & Ansible
- if you need further help send an email to [email protected]