install.sh, it collects information about your system and passes that to the
ansible-playbookcommand. The script is idempotent, meaning you can run it many times and get the same result.
install.shruns, it creates a simple Ansible inventory file in the same folder that
install.shresides. This file contains a single entry using just the hostname by default.
install.shscript will tell ansible-playbook to use that file.
inventoryfile is the key to customizing the configuration of your server.
install.shscript uses a separate
inventoryfile than the default Ansible inventory (at
/etc/ansible/hosts). This is to remain unobtrusive to the system. In the future, we will likely start using the default inventory system.
inventoryin the same directory as
install.sh. You can place custom variables in there in the form of an "Ansible Inventory".
server_hostname=devshop.mydomain.comis the variable that Ansible will use to try and set the system hostname of this machine.
ansible-galaxycommand and DevShop's
defaults/main.ymlfile. In this file are all the available variable names you can use, along with their default values.
templatesfolder. Most configuration files on the system come from these templates.
php_memory_limitis in the
defaults/main.ymlfile located at https://github.com/geerlingguy/ansible-role-php/blob/master/defaults/main.yml#L48 and is written to the
templates/php.ini.j2file at https://github.com/geerlingguy/ansible-role-php/blob/master/templates/php.ini.j2#L36
inventoryfile, then run
install.shagain to reconfigure your system. The Ansible playbooks are smart enough to restart services if a configuration file changes.