laxathom.libertempo
libertempo
This Ansible role helps you to install, update, and configure Libertempo on RHEL/CentOS based systems.
Role Variables
These are the variables you can set for this role, and they have default values in defaults/main.yml
. You may need to change them to fit your requirements. Generally, these settings are not intended for production use.
Base Variables
libertempo_version: # Specifies the version of the app
libertempo_archive: # Specifies the full name of the app archive
libertempo_dl_url: # Specifies the URL to download and install the app
Variables for PHP-fpm Configuration
libertempo_php_fpm_includedir: # Directory for php-fpm pool configurations
libertempo_php_fpm_pool: # Absolute path for the app pool configuration
libertempo_php_fpm_user: # User under which php-fpm runs the app
libertempo_php_fpm_group: # Group under which php-fpm runs the app
libertempo_php_fpm_owner: # Owner of the php-fpm socket
libertempo_php_fpm_mode: # Permissions for the php-fpm socket (mainly for file-based socket)
libertempo_php_fpm_whitelist: # List of allowed IPs/hostnames to access php-fpm
libertempo_php_fpm_listen: # Method for the php-fpm socket (file-based, host:port, etc.)
Variables for Database Setup
libertempo_dbhost: # Hostname of the database server to connect to
libertempo_dbuser: # Database user
libertempo_dbpass: # Database password
libertempo_dbname: # Database name to connect to
Variables for SMTP Setup
libertempo_smtp_host: # Hostname of the SMTP server to connect to
libertempo_smtp_port: # Port of the SMTP server
libertempo_smtp_auth: # Authentication method for SMTP (TLS, SSL). Leave empty if not used.
libertempo_smtp_user: # SMTP user (if authentication is used)
libertempo_smtp_pass: # SMTP password (if authentication is used)
libertempo_error_report: # Specifies if the app should send notifications for SQL errors
libertempo_error_report_email: # Recipient email for error notifications
Dependencies
geerlingguy.repo-remi
- Required iflibertempo_install_php
is true.jdauphant.nginx
- Required iflibertempo_install_webserver
is true.geerlingguy.php
- Required iflibertempo_install_php
is true.geerlingguy.mysql
- Required iflibertempo_install_dbserver
is true.
If you are using different roles, set the relevant variables to False
and deploy the modules first.
You can switch from NGINX to Apache if that is what your setup uses. This role does not come with preset web configurations; those are set through NGINX variables (see tests/test.yml
for details).
Example Playbook
Here's an example of how to use this role, including passing variables as parameters:
- hosts: servers
roles:
- {
role: laxathom.libertempo,
libertempo_version: "1.10.0"
}
Testing
- Host Requirements
- Docker engine must be installed and running.
Set up the Ansible environment
printf '[defaults]\nroles_path=../\nhost_key_checking = False' > ansible.cfg
Install test requirements
% ansible-galaxy install -r tests/requirements.yml -p tests/roles
Run the Playbook to test the deployment
% sudo ansible-playbook -vv -i tests/inventory tests/test.yml
After completing this, you should be able to access the deployed application at http://localhost:8080/
Ansible role to install/update and configure libertempo on RHEL/CentOS
ansible-galaxy install laxathom.libertempo