IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Xarxes socials

Seguiu-nos a:

https://www.facebook.com/ebreescool
https://twitter.com/ebre_escool
https://plus.google.com/b/113949469354046983710/

TODO:

fer com http://hybridauth.sourceforge.net/

mostrar a la web la llista de contribuidors de github!

Afegir a la web botons de github:

https://ghbtns.com/

Instal·lació

Requeriments

  • libcrypt-smbhash-perl: per poder xifrar paraules de pas de Windows.
  • fpdf: Llibreria per a la creació de document PDF de forma dinàmica
  • Crypt/CHAP: llibreria per crear paraules de pass Windows NT
$ sudo apt-get install libcrypt-smbhash-perl php-fpdf php-pear
$ sudo pear install  Crypt_CHAP

Instal·lar fpdf

Cal instal·lar a la carpeta third_party (unc op fet el git clone de ebre-escool):

$ sudo git clone https://github.com/acacha/fpdf-codeigniter

Recursos

Ebre-escool

Instal·leu Code Igniter seguint els passos de:

CodeIgniter#M.C3.BAltiples_aplicacions_i_una_sola_instal.C2.B7laci.C3.B3_de_code_igniter

I instal·leu les traduccions al català:

CodeIgniter#Traduccions_en_catal.C3.A0

Instal·leu algunes dependències com:

$ sudo apt-get install libcrypt-smbhash-perl php-fpdf php-pear php5-ldap
$ sudo pear install  Crypt_CHAP

per tal de poder xifrar paraules de pas Windows. També apg per a generar paraules de pas:

$ sudo apt-get install apg

Obtenir el codi:

$ cd /usr/share
$ sudo apt-get install git
$ sudo git clone https://github.com/acacha/ebre-escool

Ara cal instal·lar les aplicacions de tercers:

$ cd /usr/share/ebre-escool/application/third_party
$ sudo git clone https://github.com/acacha/grocery-crud
$ sudo git clone https://github.com/scoumbourdis/image-crud
$ sudo git clone https://github.com/acacha/skeleton
$ sudo git clone https://github.com/acacha/fpdf-codeigniter
$ sudo git clone https://github.com/google/google-api-php-client
$ sudo git clone https://github.com/hybridauth/hybridauth

Configurem apache:

$ sudo ln -s /usr/share/ebre-escool/apache/ebre-escool.conf /etc/apache2/conf.d
$ sudo /etc/init.d/apache2 reload

IMPORTANT: Per a les noves versions d'Apache 2.4 o superior

 $ sudo ln -s /usr/share/ebre-escool/apache/ebre-escool.conf /etc/apache2/conf-available
 $ sudo a2enconf ebre-escool 
 $ sudo service apache2 reload

Genereu una paraula de pas aleatòria:

$ sudo apt-get install whois
$ mkpasswd
6RqN5CCc1zuVE

Per a més seguretat generant la paraula de pas podeu utilitzar:

$ mkpasswd -5

Creeu la base de dades, l'usuari que hi ha de tenir accés i els privilegis d'accés:

$ sudo mysql -p
mysql> CREATE DATABASE ebre_escool;
mysql> CREATE USER 'ebre_escool'@'localhost' IDENTIFIED BY '6RqN5CCc1zuVE';
mysql> GRANT ALL PRIVILEGES ON ebre_escool.* TO 'ebre_escool'@'%' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> exit;

IMPORTANT: A l'exemple utilitzem tota la estona la paraula de pas creada per mkpasswd. Important que poseu la vostra i no la de la web per raons de seguretat

NOTA: Si pel que sigui necessiteu canviar la paraula de pas de l'usuari:

SET PASSWORD FOR 'ebre_escool'@'%' = PASSWORD('6RqN5CCc1zuVE');

Creem l'estructura de la base de dades:

$ cd /usr/share/ebre-escool
$ sudo mysql -p ebre_escool < ebreescool_only_structure.sql

NOTA: Podeu instal·lar una base de dades demo que trobareu a http://acacha.org/~sergi/ebre_escool_anonymous_04_12_2014.sql

Ara configureu l'accés a la base de dades:

$ sudo cp application/config/database.php.example application/config/database.php
$ sudo joe application/config/database.php

I poseu correctament les línies:

 $db['default']['hostname'] = 'localhost';
 $db['default']['username'] = 'ebre_escool';
 $db['default']['password'] = '6RqN5CCc1zuVE';
 $db['default']['database'] = 'ebre_escool';
 $db['default']['dbdriver'] = 'mysql';

Per instal·lar el servidor Ldap seguiu les passes de:

 Apartat Instal·lació servidor Ldap 

Ara cal configurar l'accés per Ldap. Teniu un fitxer d'exemple:

$ sudo cp application/config/auth_ldap.php.example application/config/auth_ldap.php

IMPORTANT: Els següents passos de configuració de Ldap "només" són necessaris per tal que funcioni l'autenticació d'usuaris per Ldap. És clar, és imprescindible que al servidor Ldap que us connecteu existeixin els usuaris adequats i que configureu els grups/rols d'accés per determinar quins permisos d'accés tindran els usuaris. Vegeu l'apartat Rols

Si voleu utilitzar el reialme d'autenticació Ldap editeu el fitxer i poseu les vostres dades de connexió al servidor Ldap:

$ sudo joe application/config/auth_ldap.php

Poseu els valors del vostre server Ldap. Un exemple:

$config['hosts'] =array('localhost');
$config['ports'] = array(389);
$config['basedn'] = 'dc=iesebre,dc=com';
$config['login_attribute'] = 'uid';
$config['proxy_user'] = 'cn=admin,dc=iesebre,dc=com';
$config['proxy_pass'] = 'PASSWORD';

canvieu les dades de l'exemple pel que us pertoqui.

IMPORTANT: Si utilitzeu git com a desenvolupadors, afegiu al fitxer .git/info/exclude els fitxers application/config/auth_ldap.php i application/config/database.php per tal d'ignorar-los per part de git. Consulteu Excloure els fitxers amb dades sensibles. És necessari fer això si feu commits al repositori git del projecte o a repositoris/forks propis sobretot si els repositoris són públics per tal d'evitar publicar dades sensibles com les paraules d'accés a les bases de dades

$ sudo joe .git/info/exclude

I afegiu les línies:

application/config/auth_ldap.php
application/config/database.php
application/logs/audit.log

NOTA: audit.log és un fitxer que guarda un registre dels accessos al sistema. No cal pujar-lo al repositori és informació diferent a cada instal·lació i a més no cal fer-la pública

Ara cal definir la URL:

$ sudo joe /usr/share/ebre-escool/application/config/config.php

I canvieu la línia:

$config['base_url']     = 'http://localhost/ebre-escool';

per el vostre domini, al exemple www.iesebre.com:

$config['base_url']     = 'http://www.iesebre.com/ebre-escool';

També podeu posar:

 $config['base_url'] = 'http://'.$_SERVER['SERVER_NAME'].'/ebre-escool';  

Eviteu pujar els canvis a git:

$ sudo git update-index --assume-unchanged application/config/config.php

Ara per accedir a l'aplicació:

http://localhost/ebre-escool

Ara canvieu els permisos de les carpetes:

$ sudo chown www-data:www-data application/logs/

Creació de la carpeta uploads:

$ sudo mkdir -p /usr/share/ebre-escool/uploads/inventory_files
$ sudo chown www-data:www-data -R /usr/share/ebre-escool/uploads/inventory_files
$ sudo mkdir -p /usr/share/ebre-escool/uploads/person_photos
$ sudo cp /usr/share/ebre-escool/assets/avatars/* /usr/share/ebre-escool/uploads/person_photos/
$ sudo chown www-data:www-data -R /usr/share/ebre-escool/uploads/person_photos
$ sudo mkdir -p /usr/share/ebre-escool/uploads/qrcodes
$ sudo chown www-data:www-data -R /usr/share/ebre-escool/uploads/qrcodes

Ara cal configurar skeleton:

$ sudo cp -r /usr/share/ebre-escool/application/third_party/skeleton/application/config/skeleton_auth.php.example /usr/share/ebre-escool/application/third_party/skeleton/application/config/skeleton_auth.php

Editeu el fitxer:

$ sudo joe /usr/share/ebre-escool/application/third_party/skeleton/application/config/skeleton_auth.php

I poseu les dades que us corresponguin. Assegureu-vos de tenir els rols ben configurats:

assegureu-vos de tenir els rols d'skeleton ben configurats:

$config['roles'] = array(
   1 => 'intranet_readonly',
   3 => 'intranet_admin',
   5 => 'intranet_dataentry',
   7 => 'intranet_organizationalunit',
   9 => 'intranet_teacher',
   11 => 'intranet_student'
   );

Finalment configureu els master password, primer Ldap:

$ sudo joe /usr/share/ebre-escool/application/config/auth_ldap.php

Afegiu la línia:

$config['masterpassword'] ="POSEULAVOSTRAMASTERPASSWORD";

I després SQL

$ sudo joe /usr/share/ebre-escool/application/config/database.php

I afegiu/configureu la línia:

$config['mysql_masterpassword'] ="PUT_YOUR_PASSWORD_HERE";


Si utilitzeu Google Apps també cal configurar les dades d'accés a Google Apps:

$ sudo cp googleapps.php.example googleapps.php

I configureu les dades d'accés:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
 * @author      Sergi Tur Badenas  <sergiturbadenas@gmail.com>
 * @copyright   Copyright © 2014 by Sergi Tur <sergiturbadenas@gmail.com>
 * @package     GoogleApps
 * @subpackage  configuration
 */

/**
 * Array Index      - Usage
 * client_id:               Client ID provided by Google Console API
 *        Example: 10456720172255-42i2r39sadwgbl58eof1rku5apau2kq7.apps.googleusercontent.com
 * service_account_email:   service account email provided by Google Console API
 *        Example: 10456720172255-42i2r39sadwgbl58eof1rku5apau2kq7@developer.gserviceaccount.com
 * key_file:                p12 key file path provided by Google Console API
 *        Example: /usr/share/google-apps/Ebre-escool-d823asd8fc5b3.p12
 * domain_admin_email:      Email of an user with admin rigths in Google Apps Domain
 *        Example: sergitur@iesebre.com
 * domain:      Google Apps Domain
 *        Example: iesebre.com
 */

$config['client_id'] ="10660201723425-42i2r394st4qbl58eof1rku5apau2kq7.apps.googleusercontent.com";
$config['service_account_email'] = "104420172255-42i2r394st4qbl58eof1rku5apau2kq7@developer.gserviceaccount.com";
$config['key_file'] = "/usr/share/gplus-domains-directory-sample-php/Ebre-escool-d847da8fc5b3.p12";
$config['domain_admin_email'] = 'admin@iesebre.com';
$config['domain'] = 'iesebre.com'; 

NOTA: Cal prèviament haver configurat l'accés per API a Google Apps

Finalment si voleu utilitzar el client rest de prova per prova l'API REST d'ebre-escool només cal configurar el client rest amb:

$ sudo cp rest_client.php.example rest_client.php

i editeu el fitxer per posar la API key que correspongui:

$ sudo joe rest_client.php
...
$config['api_key'] = "f8314435as1f3d35058584b37361dbde919";
...

ebre-escool RestServer api key

$ sudo cp application/config/rest_client.php.example application/config/rest_client.php
$ sudo nano application/config/rest_client.php

Add your own API key:

$config['api_key'] = "YOUR_OWN_API_KEY_GENERATED_WITH_key_generator.php";

Composer

Idea:

$ composer install

Script post-execution (https://getcomposer.org/doc/articles/scripts.md):

post-install-cmd

es defineixen al composer.json (exemple):

{
   "scripts": {
       "post-update-cmd": "MyVendor\\MyClass::postUpdate",
       "post-package-install": [
           "MyVendor\\MyClass::postPackageInstall"
       ],
       "post-install-cmd": [
           "MyVendor\\MyClass::warmCache",
           "phpunit -c app/"
       ],
       "post-create-project-cmd" : [
           "php -r \"copy('config/local-example.php', 'config/local.php');\""
       ]
   }

NOTA: només executar el primer cop? també cal fitxer lock com composer? i només tornar executar en cas de compsoer update?

Notes que ha de fer l'script: Vendors:

  • codeigniter? però no vull a carpeta vendors?
  • codeignitercatalà
  • Llibreries PHP: php-fpdf php-pear php5-ldap
  • Paquets Debian: libcrypt-smbhash-perl, apg
  • Pear: sudo pear install Crypt_CHAP

Codi:

https://github.com/acacha/ebre-escool

Aplicacions de tercer codeigniter com a vendors?:

Script post-instal·lació fitxers:

  • Script instal·lació amb cli. support per a quiet (tot per defecte). Composer style (utilitzat application de Symfony)
  • Configuració Apache:
  • Preguntar si es vol configurar Apache
  • Preguntar si es vol una configuració bàsica o a mida
  • Bàsica: utilitzar el nom de composer.json (per exemple myapp) per crear un fitxer per defecte /etc/apache/sites-available/myapp amb un Alias /myapp /usr/share/myapp
  • A mida: Preguntar per fitxer de configuració, oferir un per defecte. Instal·lar el fitxr proporcionat
  • Reload apache al final de l'script (preguntar)
  • Base de dades
  • Voleu crear una base de dades
  • Quin tipus? per defecte i de moment SQL
  • Creació d'una paraula de pas per defecte o preguntar?
  • Paraula de pas?
  • Preguntar si es vol una configuració bàsica o a mida de SQL
  • Bàsica: script típic directament. base de dades amb nom de composer.json i usuari el mateix. Paraula de pas aleatoria
  • Avanzada: preguntar les dades (usuari, base de dades, etc)
  • altres:
  • Configuració de permisos de fitxers i carpetes (exemple www-data:www-data application/logs/, uploads)
  • ROLS?
  • master password
  • Google apps
  • API

Extra: Framework CodeIgniter:

  • Configurar el fitxer de base de dades config/database.php segons les dades anteriors SQL
  • Dos opcions preguntar o tirar milles
  • Configuració Ldap similar (config/auth_ldap.php)
  • Seguretat dels fitxers anteriors: git/info/exclude

Afegir l'usuari al grup

Un cop accedim a l'aplicació de GOsa

http://localhost/gosa

amb el nostre usuari i password


Crearem un grup anomenat intranet-admin on afegirem l'usuari o usuaris que vulguem


Anem al menú lateral esquerre a l'apartat Groups i des de la part central de la pantalla seleccionem Actions -> Create -> Group


Oscaradan grup gosa 1.png


Després com a Group name posem intranet_admin i cliquem el botó Add per a afegir a un usuari al grup


Oscaradan grup gosa 2.png


Selecionem el nom d'usuari que volem afegir i cliquem el botó Add per a afegir-lo.


Oscaradan grup gosa 3.png

Instal·lació server ldap

NOTA: Abans recomanavem la instal·lació de Gosa per tal de fer la gestió d'usuaris. Ebre-escool ja suporta la gestió d'usuaris Ldap i no cal instal·lar gosa simplement amb el servidor LDAP és suficient

$ sudo apt-get install slapd

Poseu la paraula de pas que vulgueu ja que la canviarem amb:

$ sudo dpkg-reconfigure slapd

Als passos de l'assistent poseu:

  • Omit OpenLDAP server configuration? No
  • Domini. el que us pertoqui. Per exemple iesebre.com. És important que podeu el mateix al fitxer /usr/share/ebre-escool/application/config/auth_ldap.php
  • Organization name: iesebre (o el que us pertoqui)
  • Administrator password: us recomanem un password aleatori i potent (p.ex utilitzeu mkpasswd). És important que podeu el mateix al fitxer /usr/share/ebre-escool/application/config/auth_ldap.php
  • Confirm password: igual que l'anterior
  • Database backend to use: HDB
  • Do you want the database to be removed when slapd is purged?: Yes
  • Move old database?: No
  • Allow LDAPv2 protocol? no


Demo

Podeu consultar la següent adreça

http://185.13.76.85
  • Usuari: admin
  • Password: ebreescool

Per veure una demo d'ebre-escool. La demo es restaura un cop al dia al seu estat actual o només en cas es detecti un error que obligui a restaurar però hi podeu fer les proves que trobeu convenients

IMPORTANT: Totes les paraules de pas són ebreescool i hi ha múltiples usuaris amb múltiples rols. Utilitzeu l'usuari admin per entrar

Base de dades anònima

La base de dades demo la trobareu a:

http://acacha.org/~sergi/ebre_escool_anonymous_04_12_2014.sql

Troubleshooting. Resol·lució de problemes

The configuration file database.php does not exist.

Seguiu els passos de la instal·lació, especialment la creació de la base de dades MySQL i la configuració del fitxer d'accés

The configuration file auth_ldap.php does not exist.

Seguiu els passos de la instal·lació, especialment la configuració de l'accés a Ldap.

Database Error

Error 1048 'secondary_email' cannot be null

A Database Error Occurred

Error Number: 1048

Column 'secondary_email' cannot be null

INSERT INTO `users` (`secondary_email`, `first_name`, `last_name`, `company`, `phone`, `username`, `password`, `email`, `ip_address`, 
`created_on`, `last_login`, `active`) VALUES (NULL, 'System', 'Administrator', NULL, NULL, 'admin', 
'94abdb58f5e02a94981dd69aea3c325f93c0f238', 0, '\0\0�', '2013-10-14 12:06:28', '2013-10-14 12:06:28', 1)

Filename: /usr/share/ebre-escool/third_party/skeleton/models/skeleton_auth_model.php

Line Number: 1107

Imatges. Idees per imatge corporativa

Alumnes/students:

http://photodune.net/search?utf8=%E2%9C%93&term=student&sort=&date=&size=&sales=

Teacher:

http://photodune.net/search?utf8=%E2%9C%93&term=teacher&sort=&date=&size=&sales=

School: http://photodune.net/search?utf8=%E2%9C%93&term=school&sort=&date=&size=&sales=

Usuaris, persones i rols

Definicions:

Usuari

  • Usuari: un usuari és una entitat que té una identitat per identificar-se a l'aplicació.Propietats
  • La identitat sol ser un nom d'usuari però també es pot "delegar" a tercers el nom d'usuari o simplement no tenir un nom usuari propi de l'aplicació. És l'exemple de fer un login amb Facebook, Google, etc. L'usuari pot tornar a entrar utilitzant aquest comptes sense necessitat de tenir un usuari propi del sistema
  • Els noms d'usuari han de ser únics per a cada entitat/usuari diferent. Es pot utilitzar un username però també un correu electrònic com a nom d'usuari. Com tractem els usuaris que realment no tenen nom d'usuari (usuaris delegats)? generar un username unic tipus hash sense col·lisions?
  • TODO: deixar escollir els noms d'usuari o calcular-los?


Reialme

  • És on s'emmagatzema la base de dades d'autenticació (usuaris mínim). Exemples: SQL, LDAP, etc...

Rols

  • Cal distingir el fet d'identificar els usuaris del fet d'assignar-lis permisos. El rol indica el tipus d'usuari:
  • Administrador: té permisos de tot i pot fer el que fant tota la resta de tipus d'usuaris
  • Alumne: un alumne és un usuari que a més és persona (taula person) i que té una matricula actual (taula enrollment)
  • Alumnes actuals de baixa: matrícula marcada com markedForDeletion: TODO? Deixar entrar, consultar informació. Limitar alguna funcionalitat?
  • Exalumnes: tenen usuari i persona però no matricula actual: poden tenir matrícula antiga (taula enrollment) o no (simplement per falta de dades històriques a la base de dades, però això no els treu el fet de ser exalumnes)
  • Professors: són usuaris amb usuari per any actual i no són substituts
  • Exprofessors: antics professors
  • Substituts: profes actuals temporals que han de poder assumir temporalment el rol d'un professor actual
  • Personal laboral: taula employees
  • Pares/Mares/Tutors: TODO
  • Visitants: rol calaix desastre: Només amb accés a dades públiques
  • Altres rols extres:
  • Tutors
  • Caps de departament
  • Accés al inventari


NOTA: Casos especials:

  • Persones amb múltiples rols:
  • Un alumne pot ser també becari i per tan employee -> Dos usuaris diferents amb un rol diferent
  • Un profe o profes pots ser profe i administrador-> Dos usuaris diferents
  • IMPORTANT: en tots los casos s'aprofita però les dades de persona!

App

Idees

Flow de la aplicació:

  • S'instal·la de Google Play:
  • Wizard primera execució
  • Splash screen segur el primer cop! (la resta execucions caldrà?). Durant la splash screen la app es baixa llista de Instituts dels servidors
  • Es mostra una llista dels Instituts disponibles. L'usuari selecciona un Institut i es guarda la informació (no es trona a preguntar excepte en settings o com account info? a AccountManager d'Android). Opció: No apareix el teu centre? Demana al teu centre apareixer. Quin centre és?
  • Login/Sign in: Login directe si es coneix usuari i paraula de passsword. Boto recordar marcat per defecte. Guarda autenticació
  • Proposta de compte de mail: Aplicacions com Shazam o similar mostren un signin amb una llista de correus electrònics del mòbil. Segons Institut afegit podem saber el domini i proposar un per defecte o encara millor si ja té configurat el compte entrar directament amb Google Plus.
  • Un cop autenticat opció de vincular amb facebook/android o twitter igualment! És interessant per possibles funcionalitats futures.
  • Sign in: 4 opcions:
  • Formulari directe
  • Altres 3: Facebook/Google/Twitter usuari i password i formulari indirecte resta de dades
  • Oferir contingut inclòs no logat: Notícies centre, enllaç web, etc i sempre opció de fer login


Disseny:

Android App

Desenvolupament

Vegeu Ebre-escool desenvolupament

Migrant a Laravel

Notes de les passes a dur a terme

  • Instal·lar un entorn de desenvolupament.
  • Preparar futur entorn d'explotació
  • Instal·lar un Laravel nou amb Scaffolding bàsic
  • Instal·lar https://github.com/acacha/adminlte-laravel per utilitzar adminLTE template (substituir Acetemplate)
  • Configuració de l'autenticació:
  • Desactivar registre inicialment. Preparar registre a mida:
  • Login: permetre el login per nom d'usuari o correu electrònic indistintament
  • El autoregistre no dona cap rol (o rol per defecte altres.). Rols: Pares i expares, alumnes i exalumnes, professors i exprofessors. Els alumnes només agafen aquest rol si estan matriculats, com validar els pares (menors de 18 anys alumnes)?. No té gaire sentit autoregistre més enllà de demanar un usuari que caldria confirmar per part d'un administrador. Confirmació per email
  • Recuperació de paraula de pas: permetre la recuperació per email però també per username
  • Xarxes socials/Socialite: permetre utilitzar al registre per agafar les dades. Aconseguir les dades de xarxes socials dels alumnes
Hooks:
Google Apps i Ldap durant el registre i/o matrícula del alumne

Backend

  • Gestió d'usuaris amb CRUD i funcionalitats extres completes:
  • Enviar recuperació paraula de pas
  • Enviar confirmació email

Mòdul de matrícula

  • TODO


Instal·lació de l'entorn de desenvolupament

Obteniu una còpia del repositori o de un fork del repositori:

$ mkdir github || cd github
$ git clone git@github.com:acacha/ebre-escool.git
$ cd ebre-escool

Comproveu les branques remotes (cal posar el -a) i que teniu la branca develop

$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/gh-pages
remotes/origin/master

I ara canvieu a la branca develop:

$ git checkout -b remotes/origin/develop

Prepareu tot l'entorn de treball:

$ composer install

Seguiu els passos de l'article Homestead per instal·lar Homestead si encara no el teniu instal·lat. Editeu la configuració:

$ homestead edit

Afegiu un site:

    - map: ebre-escool.iesebre.app
     to: /home/vagrant/Code/ebre-escool/public

I una base de dades:

ebreescooldev

Assegureu-vos de no "maxacar" les bases de dades al fer un provision:

Homestead#Don.27t_remove_databases_when_provisioning

i apliqueu els canvis:

$ vagrant global-status
id       name    provider   state   directory                                      
-----------------------------------------------------------------------------------
3187fb6  default virtualbox running /home/sergi/.composer/vendor/laravel/homestead 
....
$ vagrant provision 3187fb6

Configureu entorn per tal de configurar l'accés a la base de dades:

$ cp .env.example .env

Editeu el fitxer .env per adaptar-lo a la vostra base de dades local. Amb canviar el nom de la base de dades a ebreescooldev hi ha suficient.

I prepareu la base de dades

$ homestead ssh
$ cd /home/vagrant/Code/ebre-escool
$ php artisan migrate
$ php artisan db:seed

Domini i configuració entorns

El domini en explotació:

ebre-escool.iesebre.com

El entorn d'explotació serà un servidor Ubuntu Server amb LAMP

El domini de desenvolupament:

ebre-escool.iesebre.app

El entorn de desenvolupament serà homestead utilitzant vagrant

Branques i etiquetes

Actualment (--acacha (discussió) 11:27, 13 maig 2015 (CEST)) el tag 0.1 de la branca master correspon a la versió en explotació a l'Institut de l'Ebre. Els canvis i millores s'aniran fent només a la branca master i afegint tags tipus 0.1.1, 0.1.2, 0.1.3 etc.

Al mateix temps es crea la branca develop on es comença a preparar la versió 1.0 de l'aplicació que estarà basada principalment en Laravel.

Resources:

Changelog

  • Afegit fitxer .env.example
  • Initial develop branch --acacha (discussió) 11:09, 18 maig 2015 (CEST)

Vegeu també

Enllaços externs