Skip to content

Commit

Permalink
Merge branch 'master' of github.com:gnutn/eventoL into talk-bugs-#193
Browse files Browse the repository at this point in the history
  • Loading branch information
FedeG committed Apr 11, 2016
2 parents ff775af + d7fd519 commit 2e90a93
Show file tree
Hide file tree
Showing 3 changed files with 210 additions and 7 deletions.
19 changes: 12 additions & 7 deletions README.md
@@ -1,25 +1,30 @@
EventoL
=======

EventoL es un software de administración de eventos, desarrollador inicialmente para administrar la conferecia [FLISoL](http://flisol.info/).
Esta en estado de desarrollo.

EventoL is a event management software initially developed to manage [FLISoL](http://flisol.info/) conference.
It is in developement state.

Status
-------
Estado/Status
-------------
[![Build Status](https://travis-ci.org/GNUtn/eventoL.svg?branch=master)](https://travis-ci.org/GNUtn/eventoL)
[![Code Health](https://landscape.io/github/GNUtn/eventoL/master/landscape.svg?style=flat)](https://landscape.io/github/GNUtn/eventoL/master)
[![Coverage Status](https://coveralls.io/repos/github/GNUtn/eventoL/badge.svg?branch=master)](https://coveralls.io/github/GNUtn/eventoL?branch=master)
[![Requirements Status](https://requires.io/github/GNUtn/eventoL/requirements.svg?branch=master)](https://requires.io/github/GNUtn/eventoL/requirements/?branch=master)
[![Stories in Ready](https://badge.waffle.io/GNUtn/eventoL.svg?label=ready&title=Ready)](http://waffle.io/GNUtn/eventoL)

Documentation:
--------------
Documentación/Documentation:
----------------------------
See [Documentation](http://eventol-docs.readthedocs.org/en/master/)
Ver [Documentación](http://eventol-docs.readthedocs.org/en/master/)

Configure Own server:
---------------------
Configuración de server propio/Configure Own server:
----------------------------------------------------

- See [Installation Instructions](https://github.com/GNUtn/eventoL/blob/master/docs/installation.md)
- See [Deploy Instructions](https://github.com/GNUtn/eventoL/blob/master/docs/deploy.md)

- Ver [Instrucciones de Instalación](https://github.com/GNUtn/eventoL/blob/master/docs/instalacion.md)
- Ver [Instrucciones de puesta en marcha](https://github.com/GNUtn/eventoL/blob/master/docs/puestaEnMarcha.md)

139 changes: 139 additions & 0 deletions docs/instalacion.md
@@ -0,0 +1,139 @@
# Base de datos

Nosotros estamos usando postgres. Para desarrollar existen 2 opciones:

## Usar la base de datos desde un container de docker

Correr el container:

```sh
docker run --name eventol-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=eventol -e POSTGRES_DB=eventol -p 5432:5432 -d postgres
```
Y la base de datos ahora esta mágicamente habilitada en localhost:5432!

Dependencias necesarios para la maquina servidor (probado para Debian jessie y sid):

```sh
$ sudo apt-get install python build-essential python-setuptools python-dev python-pip
$ sudo apt-get install binutils libproj-dev gdal-bin libgeoip1 python-gdal
$ sudo apt-get install libjpeg-dev libpng3 libpng12-dev libfreetype6-dev zlib1g-dev
$ sudo apt-get install jpegoptim optipng
$ sudo apt-get install libffi-dev libxml2-dev libxslt1-dev
$ sudo apt-get install postgresql-server-dev-9.4
```

## Instalación en sistemas basados en Debian (jessie+):

Instalamos postgres, python y mas dependencias
```sh
$ sudo apt-get install python build-essential python-setuptools python-dev python-pip
$ sudo apt-get install postgresql postgresql-client-9.4 postgresql-server-dev-9.4
$ sudo apt-get install binutils libproj-dev gdal-bin libgeoip1 python-gdal
$ sudo apt-get install postgresql-9.4-postgis-2.2
$ sudo apt-get install libjpeg-dev libpng3 libpng12-dev libfreetype6-dev zlib1g-dev
$ sudo apt-get install jpegoptim optipng
```

Configuración de postgres
```sh
$ sudo passwd postgres
$ sudo su - postgres

$ pg_dropcluster --stop 9.4 main
$ pg_createcluster --start -e UTF-8 9.4 main

$ psql postgres

postgres=# ALTER ROLE postgres PASSWORD '<password>';
(ctrl-d)
$ createuser --createdb eventol
postgres=# ALTER ROLE eventol PASSWORD '<password>';

$ psql

postgres# CREATE USER eventol PASSWORD 'my_passwd';
postgres# CREATE DATABASE eventol OWNER eventol ENCODING 'utf8';
```

## Si estas buscando alguna herramienta de administración para la base de datos

```sh
$ sudo apt-get install pgadmin3
```

# Dependencias de Python/Django

### Instalar las dependencias de python

```sh
$ pip install -U -r requirements.txt
```

### Bower
Nosotros estamos usando bower para dependencias en el frontend. Instalación:

* [Instalar npm y nodejs](https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager)
* [Instalar bower](http://bower.io/#install-bower)
* Instalar dependencias de bower:

```sh
@/project-root$ bower install
```

### Compilar less de desarrollo

```sh
$ sudo npm install -g less

```

### Compilando

Todo el tiempo que generamos cambios a los archivos less, es necesario que se compilen de nuevo.
También, la primera vez que clonas del repo, es necesario que compiles los less.

```sh
@/project-root$ lessc manager/static/manager/less/flisol.less > manager/static/manager/css/flisol.css
@/project-root$ lessc manager/static/manager/less/flisol-bootstrap.less > manager/static/manager/css/flisol-bootstrap.css
```

### Conficuración de Django

Primero que todo, hay que cambiar configuraciones en el settings.py URLS, PATHS, DATABASE y EMAIL con tu configuración determinada.

Entonces, cargamos la base de datos y preparamos los estáticos:

```sh
$ python manage.py migrate
$ python manage.py makemigrations manager
$ python manage.py migrate
$ python manage.py syncdb
$ python manage.py collectstatic
```

### Si estas buscando cargar datos de ejemplo para probar la aplicación

```sh
$ python manage.py loaddata manager/initial_data/initial_data.json
$ python manage.py loaddata manager/initial_data/security.json
$ python manage.py loaddata manager/initial_data/software.json
$ python manage.py loaddata manager/initial_data/attendee_data.json
$ python manage.py loaddata manager/initial_data/email_addresses.json
```

### Actualizar traducciones

```sh
$ django-admin makemessages --locale=es
$ django-admin compilemessages
```

# Configuración para inicio de sesión desde redes sociales

Una vez iniciado el server, visitamos la pagina de administración (Ejemplo: `http://localhost:8000/admin/`) y seguir los siguientes pasos:

* Añadir un sitio para su dominio, que se corresponda con `settings.SITE_ID` (` django.contrib.sites app`).
* Para cada proveedor basado en OAuth, añadir un Social App (socialaccount app).
* Complete los datos con el sitio y las credenciales de aplicaciones OAuth obtenidos del proveedor.

Para cualquier problema con las cuentas sociales, por favor verifique en la [documentación de django-allauth](http://django-allauth.readthedocs.org).
59 changes: 59 additions & 0 deletions docs/puestaEnMarcha.md
@@ -0,0 +1,59 @@
## Deploy de EventoL

Para un mejor y mas rápido deploy a producción, **EventoL** es configurable mediante variables de entorno para que durante el deploy el codigo no se tenga que modificar.

### Variables de entorno de **EventoL**

#### Django:

- DJANGO_DEBUG (Default: **False**)
- DJANGO_TEMPLATE_DEBUG (Default: **False**)
- DJANGO_EMAIL_HOST (Default: **smtp.unset**)
- DJANGO_EMAIL_PORT (Default: **587**)
- DJANGO_EMAIL_HOST_USER (Default: **change_unset@mail.com**)
- DJANGO_EMAIL_HOST_PASSWORD (Default: **secret**)
- DJANGO_EMAIL_USE_TLS (Default: **True**)
- DJANGO_EMAIL_FROM (Default: **change_unset@mail.com**)
- DJANGO_ADMIN_TITLE (Default: **EventoL**)
- DJANGO_SECRET_KEY (Default: **!a44%)(r2!1wp89@ds(tqzpo#f0qgfxomik)a$16v5v@b%)ecu**)

#### Postgres:
- PSQL_NAME (Default: **eventol**)
- PSQL_USER (Default: **eventol**)
- PSQL_PASSWORD (Default: **secret**)
- PSQL_HOST (Default: **localhost**)
- PSQL_PORT (Default: **5432**)

#### Openshift:
- OPENSHIFT_REPO_DIR configura las variables STATIC_ROOT y MEDIA_ROOT
- OPENSHIFT_SECRET_TOKEN configura la varible DJANGO_SECRET_KEY
- OPENSHIFT_APP_NAME configura la varible PSQL_NAME
- OPENSHIFT_POSTGRESQL_DB_USERNAME configura la varible PSQL_USER
- OPENSHIFT_POSTGRESQL_DB_PASSWORD configura la varible PSQL_PASSWORD
- OPENSHIFT_POSTGRESQL_DB_HOST configura la varible PSQL_HOST
- OPENSHIFT_POSTGRESQL_DB_PORT configura la varible PSQL_PORT
- OPENSHIFT_APP_DNS configura la varible ALLOWED_HOSTS
- OPENSHIFT_DATA_DIR

#### Otras configuraciones para mail:
- EVENTOL_EMAIL_BACKEND
- EVENTOL_MAILGUN_ACCESS_KEY
- EVENTOL_MAILGUN_SERVER_NAME

### Deploy con Docker
```bash
cd deploy/docker
docker build -t eventol .
docker run --name eventol-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=eventol -e POSTGRES_DB=eventol -p 5432:5432 -d postgres
docker run -d -i --name="eventol" --hostname="eventol" -p 8000:8000 --link=eventol-postgres -e PSQL_HOST=eventol-postgres -t eventol:latest
```

### Deploy con Docker-Compose
```bash
cd deploy/docker
docker-compose build
docker-compose run -d
```

### Deploy en servidor
**TODO**

0 comments on commit 2e90a93

Please sign in to comment.