Skip to content

AWS2/portal-integrat-fp

Repository files navigation

Portal Integrat IETI: Borsa de Treball i seguiment SCRUM

Projecte per a borsa de treball online per a centres on s'imparteixen cicles formatius. El projecte s'ha iniciat a l'Institut Esteve Terradas i Illa de Cornellà de Llobregat i està sent dut a terme pel professorat i alumnes de DAW (desenvolupament web).

Instal·lació

Per instal·lar-te aquest software has de tenir instal·lat GIT, Python 3.x i Virtualenv.

$ sudo apt install git python3-virtualenv

Per la base de dades es pot optar per MySQL, MariaDB o PostgreSQL. En aquesta sentència per a Ubuntu/Debian (provat en Ubuntu 20.04) carreguem les dependències pel projecte:

$ sudo apt-get install libmysqlclient-dev python3-dev gdal-bin python3-mysql.connector python3-mysqldb libssl-dev postgresql-server-dev-all postgresql-common libjpeg-dev

I ja podem clonar el projecte i instal·lar els connectors per Python:

$ git clone https://github.com/aws2/BorsaDeTreball.git
$ cd BorsaDeTreball
$ virtualenv env
$ source env/bin/activate
(env)$ pip install -r requirements.txt

Si en aquest punt obtens errors del pip install, probablement és perquè tens un virtualenv que només treballa en Python 2.x, i ens cal un virtualenv instal·lat per a Python 3.x (amb pip3). Consulta la documentació de pip.

Com a BD no ens servirà utilitzar SQLite, haurem d'utilitzar MySQL o bé PostGis (PostgreSQL amb ampliacions de geolocalització com s'explica aquí). Per arrencar una instància dockeritzada ho farem mitjançant:

$ docker run --name=postgis -d -e POSTGRES_USER=user001 -e POSTGRES_PASS=123456789 -e POSTGRES_DBNAME=gis -p 5432:5432 kartoza/postgis:9.6-2.4

Cal crear un arxiu settings2.py amb les dades en producció:

$ cp BorsaDeTreball/settings2example.py BorsaDeTreball/settings2.py
$ vi BorsaDeTreball/settings2.py

Seguim creant la BD, carregant permisos i posant en marxa l'aplicació:

(env)$ python manage.py migrate
(env)$ python manage.py createsuperuser
(env)$ python manage.py permisos
(env)$ python manage.py runserver

Si volem importar dades d'inici:

(env)$ python manage.py loaddata categories
(env)$ python manage.py loaddata cicles
(env)$ python manage.py loaddata centres
(env)$ python manage.py loaddata mps
(env)$ python manage.py loaddata ufs

Alternativament disposem de la comanda per importar centres des d'un full de càlcul:

(env)$ ./manage.py importa_centres

CRON

Per que funcioni l'enviament d'emails amb el resum (digest) de les ofertes acumulades, caldrà afegir una línia al CRON a la hora convenient i executar la comanda //digest//

$ python manage.py digest

Seguiment del projecte

Pots trobar més informació del desenvolupament del projecte a la wiki de l'Esteve Terradas:

https://wiket.esteveterradas.cat/index.php/Projecte_Borsa_de_Treball

Tests

Els tests es fan amb Selenium per simular la interacció amb l'usuari. Ens caldrà un driver per a Firefox, descomprimir-lo i posar-lo en algun lloc del PATH (com ~/bin).

Els tests es passen amb: $ python manage.py tests

About

Software de Borsa de Treball per als instituts de FP del Baix Llobregat

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages