Instalación de Pictogram en una máquina local con el test de prueba CAJA
1) Una vez dentro de la máquina operaciones
sudo apt-get install git
git clone http://scm.ujaen.es/softuno/pictogram.git
sudo apt-get install nodejs
#para evitar problemas con ubuntu
sudo apt-get install nodejs-legacy
sudo apt-get install npm
sudo npm install -g npm
sudo npm update -g
sudo npm install -g sails
sudo npm install -g forever
cd pictogram/sails/src
npm install
mkdir logs
sudo apt-get install mysql-server
2) Subimos contenidos de directorios upload
y symbolstx
desde servidor dev a local y los ubicamos en $HOME/pictogram/sails/
3) Generamos certificados SSL (uno como autoridad certificadora y otros como certificados de servidor). Es importante generar los certificados con alguna información, como nombre de la empresa (por ejemplo "Yotta Code"). Si no, Chrome no da la opción de usar esos certificados autofirmados
cd
mkdir ssl
cd ssl
openssl genrsa -out ca.key 4096
openssl req -new -x509 -days 1826 -key ca.key -out ca.crt
openssl genrsa -out pre.key 4096
openssl req -new -key pre.key -out pre.csr
openssl x509 -req -days 730 -in pre.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out pre.crt
4) Instalamos certificados en sails
mkdir ~/pictogram/sails/src/config/ssl
cp ca.crt pre.key pre.crt ~/pictogram/sails/src/config/ssl
Modificamos config/local.js
indicando rutas a archivos ssl y activando puerto 1337 (por defecto de sails)
cd ~/pictogram/sails/src/config
vi local.js
ssl: {
ca: require('fs').readFileSync(__dirname + '/ssl/ca.crt'),
key: require('fs').readFileSync(__dirname + '/ssl/localhost.key'),
cert: require('fs').readFileSync(__dirname + '/ssl/localhost.crt')
},
port: process.env.PORT || 1337,
5) Creamos base de datos y usuario, las tablas y cargamos datos. Al script debes pasarle la pwd del root de mysql
sails/conf$ ./installdb_caja.sh pwd_root
En caso que la bbdd ya existiera previamente se puede utilizar el script installdb_caja_nosymbolstix.sh
que evita tener que volver a insertar los datos de symbolstix, por lo que la creación de la bbdd es inmediata:
sails/conf$ ./installdb_caja_nosymbolstix.sh pwd_root
6) Configuramos el backend usado por angular para que conecte con la máquina donde tenemos instalado sails
vi sails/src/assets/app/js/config.js
angular.module('dashboardConfig', [])
.constant('config', {
'backend': 'http://localhost:1337',
'version': 0.1
});
7) Lanzamos el servidor
sails/src$ sudo forever start app.js --dev
Probamos que es correcto accediendo a https://localhost:1337/app
.
8) En caso de que haya dependencias fallidas:
- cd $PICTOGRAM_HOME/sails/src
Si no va sails:
- Elimina directorio
node_modules
sudo npm cache clear
sudo npm install sails -g
sudo npm install
Si no carga el dashboard:
cd assets/app
mkdir bower_components
-
git config --global url."https://".insteadOf git://
-
bower install --save