Odoo devinst: differenze tra le versioni

Da PNLUG.
Riga 176: Riga 176:
  
  
 
+
=== AVVIO DI ODOO ===  
<!--
+
 
+
<pre>
+
</pre>
+
=== ============================================================================
+
 
+
 
+
 
+
===============================================================================
+
                                AVVIO DI ODOO
+
===============================================================================
+
  
 
Ho scelto di attivare i plugin della localizzazione italiana e di preparare
 
Ho scelto di attivare i plugin della localizzazione italiana e di preparare
Riga 194: Riga 183:
 
era odoo.py ma fa la stessa cosa.
 
era odoo.py ma fa la stessa cosa.
  
 +
<pre>
 
cd ~/odoo-dev
 
cd ~/odoo-dev
 
mkdir addons
 
mkdir addons
 
OCB/odoo-bin scaffold mymodule addons
 
OCB/odoo-bin scaffold mymodule addons
 +
</pre>
  
 
con il comando scaffold preparo un modulo vuoto che poi userò per fare
 
con il comando scaffold preparo un modulo vuoto che poi userò per fare
Riga 206: Riga 197:
  
 
~/odoo-dev/odoo.sh
 
~/odoo-dev/odoo.sh
-----------------------------------------------------------------------------
+
 
 +
<pre>
 
#!/bin/sh
 
#!/bin/sh
 
ODOOHOME=~/odoo-dev
 
ODOOHOME=~/odoo-dev
 
$ODOOHOME/OCB/odoo-bin --addons-path=$ODOOHOME/OCB/addons,$ODOOHOME/addons_ita,$ODOOHOME/addons
 
$ODOOHOME/OCB/odoo-bin --addons-path=$ODOOHOME/OCB/addons,$ODOOHOME/addons_ita,$ODOOHOME/addons
-----------------------------------------------------------------------------
+
</pre>
  
 
quindi rendo disponibili gli addons standard di odoo più gli addons localizzati
 
quindi rendo disponibili gli addons standard di odoo più gli addons localizzati
 
italiani e quelli che svilupperò io.
 
italiani e quelli che svilupperò io.
  
ho reso exeguibile lo script con:
+
ho reso eseguibile lo script con:
  
 +
<pre>
 
chmod +x odoo.sh
 
chmod +x odoo.sh
 +
</pre>
  
 
ora posso avviare odoo con:
 
ora posso avviare odoo con:
  
 +
<pre>
 
sh ~/odoo-dev/odoo.sh
 
sh ~/odoo-dev/odoo.sh
 +
</pre>
  
 
o semplicemente con
 
o semplicemente con
  
 +
<pre>
 
cd ~/odoo-dev
 
cd ~/odoo-dev
 
./odoo.sh
 
./odoo.sh
 +
</pre>
  
 
La prima volta che evvio odoo vengono chiesti il nome del database e le
 
La prima volta che evvio odoo vengono chiesti il nome del database e le
Riga 238: Riga 236:
 
database.
 
database.
  
===============================================================================
+
=== INSTALLAZIONE MODULI ODOO ===  
                            INSTALLAZIONE MODULI ODOO
+
===============================================================================
+
  
 
Se si desidera provare altri addons, si possono semplicemente scaricare da
 
Se si desidera provare altri addons, si possono semplicemente scaricare da
 
github e depositare nella cartella
 
github e depositare nella cartella
  
 +
<pre>
 
~/odoo-dev/addons
 
~/odoo-dev/addons
 +
</pre>
  
 
poi entrati in odoo si attiva la modalità sviluppatore e si ricaricano gli
 
poi entrati in odoo si attiva la modalità sviluppatore e si ricaricano gli
 
addons.
 
addons.
 
 
http://wiki.pnlug.it/index.php?title=Odoo
 
-->
 

Versione delle 20:58, 28 ott 2016

INSTALLAZIONE DI ODOO

Le note che seguono potrebbero non essere adeguate per tutte le versioni di linux e di odoo, in caso di problemi serve risolvere di volta in volta cercando le soluzioni in base agli errori riscontrati, però la sequenza è corretta e ci dovrebbero essere poche difficoltà.

Ora assicuriamoci che il nostro sistema sia aggiornato:

sudo apt update && sudo apt upgrade


INSTALLAZIONE DI WKHTMLTOX

wkhtmltopdf è richiesto per produrre documenti in pdf. Per installarlo ho preferito partire dai binari precompilati presenti nel sito: http://wkhtmltopdf.org/downloads.html

quindi ho fatto:

wget http://download.gna.org/wkhtmltopdf/0.12/0.12.3/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
tar xvf wkhtmltox-0.12.3_linux-generic-amd64.tar.xz 
sudo mv ./wkhtmltox /opt/wkhtmltox
sudo ln -s /opt/wkhtmltopdf /usr/local/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltoimage /usr/local/bin/wkhtmltoimage

Naturalmente la versione può essere diversa.

INSTALLAZIONE DI POSTGRESQL

Il server postgres quando viene installato ha un utente amministratore di nome postgres e non utilizza password. Se si utilizza postgres solo in locale questo va bene, ma se si accede da remoto è meglio inserire una password. Si deve anche creare un utente postgres con il nome del proprio utente, in questo modo odoo accede al db con l'utente che lancia lo script.

sudo apt install postgresql-server-dev-all
sudo su - postgres -c "createuser -s $USER"

E' utile installare phppgadmin che fornisce una interfaccia web per fare la manutenzione del database. https://kishorer.in/2015/12/21/installing-postgresql-and-phppgadmin-in-ubuntu-14-04/

sudo apt install lamp-server^
sudo apt install phpgyadmin

nel file:

/etc/phppgadmin/config.inc.php

ho modificato la linea:

$conf['extra_login_security'] = false;

da true a false, in modo da permettere a phppgadmin di eseguire il login senza password, se invece si precede di accedere anche esternamente alla macchina, non si modifica niente.

poi:

/etc/postgresql/9.5/main/pg_hba.conf

local   all             all                                     trust
host    all             all             127.0.0.1/32            trust

diavviamo i daemon

sudo service apache2 restart
sudo service postgresql start

se non ci sono stati errori, ora con http://localhost/phppgadmin si dovrebbe essere in grado di amministrare il database.

ACCESSO A PHPPGADMIN DA REMOTO

Se si installa postgres su una macchina remota e serve accedere al di fuori di localhost si deve attivare l'accesso con password. Per fare questo nel file

/etc/apache2/conf.d/phppgadmin

si modificano le direttive:

#deny from all
#allow from 127.0.0.0/255.0.0.0 ::1/128
allow from all

e nel file

/etc/postgresql/9.5/main/postgresql.conf

listen_addresses = '*'

si riavviano i server con:

sudo service apache2 restart
sudo service postgresql start


DOWNLOAD

ho fatto una cartella

mkdir ~/odoo-dev
cd ~/odoo-dev

ho scaricato la versione OCB di odoo e la localizzazione italiana con:

sudo apt install git
git clone --depth=1 --branch=10.0 https://github.com/OCA/OCB OCB
git clone --depth=1 --branch=10.0 https://github.com/OCA/l10n-italy addons_ita

Naturalmente si possono scaricare altre versioni ed in altri modi.


INSTALLAZIONE DELLE DIPENDENZE

se si installano direttamente le dipendenze come spiegato nei vari manuali, si va incontro ad errori perché le dipendenze necessitano della installazione preventiva si alcune librerie. La prima volta ho risolto le dipendenze a tentativi ed errori, poi ho raccolto tutto quello che serve:

sudo apt install pip
sudo apt install python-dev
sudo apt install python-pip
sudo apt install libjpeg-dev
sudo apt install libxml2-dev libxslt1-dev
sudo apt install python-ldap
sudo apt install libldap2-dev
sudo apt install libsasl2-dev
sudo pip install --upgrade pip
sudo pip install img2pdf

sudo apt install -y npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
node --version
sudo  npm install -g less
less
less --version

a questo punto si possono installare tutte le dipendenze di odoo con

cd ~/odoo-dev/OCB
sudo pip install -r requirements.txt

Se non ci sono errori siamo pronti a far partire odoo


AVVIO DI ODOO

Ho scelto di attivare i plugin della localizzazione italiana e di preparare un ambiente per sviluppare. La versione OCB 10 di odoo come script di avvio usa il file odoo-bin prima era odoo.py ma fa la stessa cosa.

cd ~/odoo-dev
mkdir addons
OCB/odoo-bin scaffold mymodule addons

con il comando scaffold preparo un modulo vuoto che poi userò per fare esperimenti.

a questo punto ho fatto un piccolo script per lanciare odoo con i parametri che mi servono, ho aggiunto i percorsi degli addons, ma si possono inserire anche altri parametri, il file si chiama:

~/odoo-dev/odoo.sh

#!/bin/sh
ODOOHOME=~/odoo-dev
$ODOOHOME/OCB/odoo-bin --addons-path=$ODOOHOME/OCB/addons,$ODOOHOME/addons_ita,$ODOOHOME/addons

quindi rendo disponibili gli addons standard di odoo più gli addons localizzati italiani e quelli che svilupperò io.

ho reso eseguibile lo script con:

chmod +x odoo.sh

ora posso avviare odoo con:

sh ~/odoo-dev/odoo.sh

o semplicemente con

cd ~/odoo-dev
./odoo.sh

La prima volta che evvio odoo vengono chiesti il nome del database e le credenziali di accesso ed eventualmote si possono caricare i dati di esempio.

A questo punto viene creato il database e popolate le tabelle, questo potrebbe richiedere un po' di tempo.

Odoo mantiene dei cookies per ricordare l'ultimo database in uso, se si cancellano i cookies di localhost all'avvio viene chiesto di scegliere il database.

INSTALLAZIONE MODULI ODOO

Se si desidera provare altri addons, si possono semplicemente scaricare da github e depositare nella cartella

~/odoo-dev/addons

poi entrati in odoo si attiva la modalità sviluppatore e si ricaricano gli addons.