This project automates the installation of Apigee Kickstart developer portal for Drupal using Ansible.
By using this project, you can get Apigee Kickstart developer portal installed on a Linux system, including all dependencies. This Ansible playbook will install:
- MySQL
- Nginx
- PHP
- Composer
- Drupal
- Apigee Kickstart Drupal profile
This playbook is intended to be a starting point and not a "one size fits all" playbook. We recommend you fork this project and make changes to the playbook.xml
and other files to fit your specific needs.
The topology can be one host with everything, or two hosts where one is the database, and the other is the web server which contains the Drupal site.
This project may work with other operating systems, but has currently been tested with:
- CentOS 7
- RedHat 7
If you successfully install onto any other platforms, let us know and we can add it to the list. We are also accepting contributions to this project if you end up making modifications, see our contributing guide for more information.
The following section explains how to install and use this playbook.
- Clone or download this repo to the machine which will be your Ansible control node. This can be a local workstation or a server which has ssh access to the target host(s).
- Install Ansible following the official Installing Ansible documentation.
Copy the example.hosts.yml
file to hosts.yml
and edit the hostnames/IPs
listed. If you are installing everything on one host use the same hostname/IP
on both.
If you are not using SSH agent, you may need to configure Ansible to you the correct SSH key by setting
private_key_file
in the ansible.cfg file. Read more in the SSH key setup Ansible documentation.
From the root of this project, run:
ansible-galaxy install -r requirements.yml
Look through group_vars/dbservers.yml and modify any variables as needed. It is highly recommended to change the following variables:
mysql_root_password
mysql_users.password
Look through group_vars/webservers.yml and modify any variables as needed. It is highly recommended to change the following variables:
drupal_db_password
php_date_timezone
Run the following command to run the playbook:
ansible-playbook playbook.yml
You can add issues and ask for help by putting an issue into this repository's issue queue.
This is an open source project that encourages contributions from the community. Read the contributing guide to learn more about making contributions.
This project comes with a simple testing tool to validate the playbook installs correctly. The
test script will run the playbook on a Docker instance. To run tests:
cd test; ./run-tests.sh
Apache 2.0
This is not an officially supported Google product. The architectural choices of these scripts do not connote support implications. Please refer to the extensive documentation on drupal.org for guidance on installation.
If you find a bug, have questions or want to give feedback, add an issue to the project's issue queue. If you have issues running Ansible or with one of the open source Ansible roles included in this project, you can work with those projects to find solutions to your issue.