Files
computer-playbook/roles/web-app-suitecrm/README.md

53 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SuiteCRM
## Description
Manage your customer relationships with SuiteCRM, a powerful open-source CRM platform extending SugarCRM with advanced modules, workflows, and integrations. This role integrates SuiteCRM into the Infinito.Nexus ecosystem with centralized database, mail and LDAP-ready single sign-on integration. 🚀💼
## Overview
This Ansible role deploys SuiteCRM using Docker and the Infinito.Nexus shared stack. It handles:
- MariaDB database provisioning via the `sys-svc-rdbms` role
- Nginx domain and reverse-proxy configuration
- Environment variable management through Jinja2 templates
- Docker Compose orchestration for the **SuiteCRM** application container
- Native **LDAP** authentication via Symfonys LDAP configuration
- SSO integration via SAML / OAuth2 configured inside SuiteCRMs Administration Panel
With this role, you get a production-ready CRM environment that plugs into your existing IAM stack.
## Features
- **Sales & Service CRM:** Accounts, Contacts, Leads, Opportunities, Cases, Campaigns and more 📊
- **Workflow Engine:** Automate business processes and notifications 🛠️
- **LDAP Authentication:** Centralize user authentication against OpenLDAP 🔐
- **SSO-Ready:** Integrates with SAML / OAuth2 providers (e.g. Keycloak as IdP) via SuiteCRMs admin UI 🌐
- **Config via Templates:** Fully customizable `.env` and `docker-compose.yml` rendered via Jinja2 ⚙️
- **Health Checks & Logging:** Integrates with Infinito.Nexus health checking and journald logging 📈
- **Modular Role Composition:** Uses shared roles for DB, proxy and monitoring to keep your stack consistent 🔄
## Further Resources
- [SuiteCRM Official Website](https://suitecrm.com/) 🌍
- [SuiteCRM Documentation](https://docs.suitecrm.com/) 📖
- [Infinito.Nexus Project Repository](https://s.infinito.nexus/code) 🔗
## LDAP & SSO Notes
- **LDAP** is configured via environment variables (`AUTH_TYPE=ldap`, `LDAP_*`).
The role writes a `config_override.php` so SuiteCRMs legacy backend
uses LDAP for authentication against your OpenLDAP service.
- **SSO** in SuiteCRM 8 is handled via **SAML** (e.g. with Keycloak as IdP) and
**OAuth providers** configured in the Administration panel (for outbound email and API access).
This role does not implement full OIDC login flows; instead, you configure SAML/OAuth inside SuiteCRMs admin UI.
## Credits
Developed and maintained by **Kevin Veen-Birkenbach**.
Consulting & Coaching Solutions: [veen.world](https://www.veen.world) 🌟
Part of the [Infinito.Nexus Project](https://s.infinito.nexus/code) 📂
License: [Infinito.Nexus NonCommercial License](https://s.infinito.nexus/license) ⚖️