buluma.redmine

Ansible role redmine

Install Redmine on CentOS

GitHub Version Issues Pull Requests Downloads
github Version Issues PullRequests Ansible Role

Example Playbook

This example is taken from molecule/default/converge.yml and is tested on each push, pull request and release.

---
- name: Converge
  hosts: all
  vars:
    - centos_base_enable_epel: true
    - centos_base_fail2ban_configuration: false
    - centos_base_install_selinux_packages: true
    - centos_base_basic_packages: true
    - centos_base_security_packages: true
    - centos_base_firewalld: true
    - ruby_version: 2.3
    - ruby_install_globally: true
  roles:
    - bngsudheer.centos_base
    - bngsudheer.ruby

- name: Converge
  hosts: all
  vars:
    - redmine_sql_database_name: "redmine"
    - redmine_sql_database_host: "localhost"
    - redmine_sql_username: "redmine"
    - redmine_sql_password: "password"
    - redmine_unicorn_port: 5777
    - redmine_configure_selinux: false
    - redmine_plugins:
        - name: scrum
          base_name: scrum
          url: https://redmine.ociotec.com/attachments/download/481/scrum-v0.18.1.tar.gz
          create_base_directory: false
        - name: timesheet
          base_name: timesheet
          url: https://github.com/Contargo/redmine-timesheet-plugin/archive/master.zip
          create_base_directory: false
    - mysql_databases:
        - name: redmine
    - mysql_users:
        - name: redmine
          password: password
          priv: "redmine.*:ALL"
    - redmine_additional_configuration: true
    - redmine_enable_smtp_email: true
    - redmine_smtp_settings_address: localhost
    - redmine_smtp_settings_port: 25
    - redmine_smtp_settings_authentication: plain
    - redmine_smtp_settings_domain: redmine.example.com
    - redmine_smtp_settings_user_name: [email protected]
    - redmine_smtp_settings_password: password
    - redmine_smtp_settings_enable_starttls_auto: true
  roles:
    - geerlingguy.mysql
    - buluma.redmine

The machine needs to be prepared. In CI this is done using molecule/default/prepare.yml:

---
- name: Prepare
  hosts: all
  gather_facts: false
  tasks: []

Also see a full explanation and example on how to use these roles.

Role Variables

The default values for the variables are set in defaults/main.yml:

---
# defaults file for ansible-role-redmine
redmine_version: "3.4.11"
# redmine_runtime_directory: "/home/redmine/redmine-{{ redmine_version }}"
redmine_runtime_directory: "/srv/redmine/redmine"

redmine_sql_driver: mysql2
redmine_sql_database_name: "redmine"
redmine_sql_database_host: "localhost"
redmine_sql_username: "redmine"
redmine_sql_password: "password"

redmine_unicorn_worker_processes: 2

redmine_domain_name: redmine.example.com

redmine_configure_nginx: true
redmine_nginx_config_template: plain
redmine_nginx_custom_config_path:
redmine_configure_unicorn: true
redmine_configure_firewalld: true

redmine_unicorn_port: 5000
redmine_nginx_bind_ip:
redmine_plugins: []

redmine_configure_selinux: false
redmine_bundler_version: 1.16.1

redmine_additional_configuration: false
redmine_enable_smtp_email: false
redmine_smtp_settings_address: localhost
redmine_smtp_settings_port: 25
redmine_smtp_settings_authentication: plain
redmine_smtp_settings_domain: redmine.example.com
redmine_smtp_settings_user_name:
redmine_smtp_settings_password:
redmine_smtp_settings_enable_starttls_auto: false

redmine_default_data: false
redmine_language: en
redmine_ssl_certificate_path: "/etc/letsencrypt/live/{{ redmine_domain_name }}/fullchain.pem"
redmine_ssl_certificate_key_path: "/etc/letsencrypt/live/{{ redmine_domain_name }}/privkey.pem"
redmine_nginx_allowlist: false
redmine_nginx_allowlist_path: ''

Requirements

State of used roles

The following roles are used to prepare a system. You can prepare your system in another way.

Requirement GitHub Version
buluma.bootstrap Ansible Molecule Version
bngsudheer.centos_base Ansible Molecule Version
bngsudheer.ruby Ansible Molecule Version
geerlingguy.mysql Ansible Molecule Version
geerlingguy.postgresql Ansible Molecule Version

Context

This role is a part of many compatible roles. Have a look at the documentation of these roles for further information.

Here is an overview of related roles:

dependencies

Compatibility

This role has been tested on these container images:

container tags
EL 7

The minimum version of Ansible required is 2.4, tests have been done to:

  • The previous version.
  • The current version.
  • The development version.

If you find issues, please register them in GitHub

Changelog

Role History

License

license (Apache-2.0)

Author Information

Shadow Walker

About

Install Redmine on CentOS

Install
ansible-galaxy install buluma.redmine
GitHub repository
License
apache-2.0
Downloads
446
Owner
DevOps Engineer