Instruction for manual installation
Use saas.py script for automatic installation
Configure Odoo installation * set dbfilter in config file or run odoo with –db-filter parameter, e.g. ^%h$
be sure, that you don’t use db_name in config file and don’t run odoo with -d (–database) parameter
check [odoo documentation](https://www.odoo.com/documentation/8.0/reference/cmdline.html) for understanding db filter and database parameters.
execute commands below to allow create databases with dots in name:
> cd path/to/odoo
> sed -i ‘s/matches=”[^”]*”//g’ addons/web/static/src/xml/base.xml
If you run odoo locally, add domains you are going to use to /etc/hosts. E.g.
> 127.0.0.1 odoo.local # portal
> 127.0.0.1 s1.odoo.local # server
> 127.0.0.1 t1.odoo.local # template
> 127.0.0.1 t2.odoo.local # template
> 127.0.0.1 client-x.odoo.local
> 127.0.0.1 client-y.odoo.local
> 127.0.0.1 client-z.odoo.local
Redirect requests to domains above to localhost:8069 (e.g. via nginx) * be sure, that odoo gets host header, e.g. for nginx:
> proxy_set_header Host $host;
> proxy_set_header X-Real-IP $remote_addr;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> proxy_set_header X-Forwarded-Proto $scheme;
install dependencies: * oauthlib:
pip install oauthlib
requests * pip install requests –upgrade
Create two databases (via /web/database/manager):
Main Database, e.g. odoo.local: * install saas_portal and saas_portal_* (optional) modules
Server Database, e.g. s1.odoo.local * install saas_server
Configure Server Database * Tick “Technical Features” for admin at Settings/Users/Users – Administrator
Refresh page
Open Settings/Users/OAuth Providers – SaaS * click [Edit] * update domain name at “Authentication URL” and “Validation URL”, change http to https if needed. E.g.
http://odoo.local/oauth2/auth
http://odoo.local/oauth2/tokeninfo * Edit Body according to your brand * click [Save]
remember value of Client ID field. It’s a database.uuid of SaaS Server.
Configure Main Database: * open Settings/Configuration/SaaS Portal Settings
set Base SaaS domain, e.g. odoo.local
click Apply (do it even if you didn’t make changes)
Register Server Database in Main Database * open SaaS/SaaS/Servers
click [Create]
set Database Name, e.g. s1.odoo.local
fix autogenerated Database UUID to actual one (see previous section)
click [Save]
Create Plan * open Saas/SaaS/Plans
click [Create]
set Plan’s name, e.g. “POS + ECommerce”
set SaaS Server
set Template DB: type name, e.g. t1.odoo.local, and click Create “__t1.odoo.local__”
click [Save]
click [Create Template DB].
wait couple minutes while Database is being created.
click [Sync server]
Prepare Template Database for Plan * click [Log in to template DB] at Plan’s form
be sure that you allow pop-ups in your browser
install modules that will be used for Plan, e.g. point_of_sale, website_sale
make any other changes in database if needed. E.g. configure chart of accounts.
open Settings/Users/Users – onwer_template. Configure Access Rights for Owner.
Try to create database from template * open SaaS/Saas/Plans – select plan
click [Create Client]
set DB Name, e.g. client-x.odoo.local
click [Create]
wait couple minutes while Database is being created.
click [Sync server]
open SaaS/SaaS/Client – choose client * click [Configure]
open Parameters tab
add parameter “Max Users”, set Value 2
click [Execute]
click [Close]
click [Log in] * you see created database * try to create new user to test “Max Users” setting
Get more * check description of other saas_* modules to get more features
https://github.com/yelizariev/odoo-saas-tools/blob/8.0/docs/install.rst