¿Queres colaborar en el proyecto? Al momento tenemos tareas en las que podes colaborar, sube a bordo!
Es la implementación del sitio para PyAr / Python Argentina hecha con Django por su comunidad, wooohooo!
Mas de 20 personas sprinteando en PyconAr!!!
-
Instalar Docker
-
Clona / Forkea el repositorio. Dentro del directorio scripts se encuentra el archivo webcli.py, Ejecutalo pasando --help para ver las opciones disponibles:
edvm@debian:~/Repos/edvm/pyarweb (develop)*$ ./scripts/webcli.py --help usage: webcmd [-h] [--build-image] [--run-container] [--del-container] [--run-shell] Helper to start a Pyarweb development instance. optional arguments: -h, --help show this help message and exit --build-image Build PyAr web docker image --run-container Creates the docker container --del-container Removes PyAr web container --run-shell Exec a bash interpreter on a running containe
2.1. Crea la imagen (build) localmente, para ello ejecuta:
scripts/webcli.py --build-image
2.2. Crea el container a partir de la imagen generada anteriormente, para ello ejecuta:
scripts/webcli.py --run-container
. -
Una vez ejecutado
scripts/webcli.py --run-container
, debes:3.1 Instala los requirements con:
pip install -r /opt/code/requirements.txt
3.2 Corre los migrations con:
cd /opt/code && ./manage.py migrate
-
Corre el proyecto con:
./manage.py runserver 0.0.0.0:8000
-
Abre tu navegador apuntando a:
http://127.0.0.1:8000
-
Instalar VirtualBox y Vagrant.
-
Levantar maquina virtual (esto ya instala todas las dependencias):
$ cd path/to/pyarweb $ vagrant up
-
Entrar a la maquina virtual y levantar servicios:
$ cd path/to/pyarweb $ vagrant ssh vagrant@vagrant $ cd /vagrant/
Debes tener Python 3.3 o 3.4, no hay compatibilidad con Python 2.
-
Debes crear un nuevo virtualenv.
-
Usando pyvenv
$ pyvenv3-3 pyarweb
-
Usando virtualenvwrapper
$ export VIRTUALENV_PYTHON=/usr/bin/python3 $ mkvirtualenv pyarweb
-
Usando virtualenv
$ virtualenv -p /usr/bin/python3.4 pyarweb
-
-
Activas tu virtualenv.
-
Mediante source
$ source pyarweb/bin/activate
-
Mediante virtualenvwrapper
$ workon pyarweb
-
Mediante virtualenv
$ source pyarweb/bin/activate
-
Si no tenés pip instalado, descarga el .tar.gz desde https://pypi.python.org/pypi/setuptools e instalalo con el
python3
de tu virtualenv. Luego de instalar setuptools hacer:$ easy_install-3.3 pip
-
Instalar librerías de desarrollo.
$ sudo apt-get install python3-dev libxml2-dev libxslt1-dev zlib1g-dev libffi-dev
-
Instalar las dependencias.
$ pip3 install -r ./requirements.txt
-
Instalar Redis
$ sudo apt-get install redis-server
-
Sincronizar BD con los modelos:
$ python manage.py migrate
-
Correr Celery para Planeta PyAr:
-
Correr Celery (usando el comando dentro de tu virtualenv)
```
$ python manage.py celery -A pyarweb worker --beat --autoreload --loglevel=INFO
```
-
Correr el servidor de desarrollo:
En Vagrant:
$ python3 manage.py runserver 0.0.0.0:8000
En local:
$ python3 manage.py runserver
Visita con tu browser la dirección http://localhost:8000
para ver el sitio.
Para más información, si queres contribuír con el proyecto, no dejes de visitar el Manual básico de supervivencia para colaborar con el sitio de PyAr.
Además de la wiki en sí, algunas paginas especiales son gestionadas con waliki, por lo que podrías querer los datos.
Para eso, podés clonar el repo https://github.com/PyAr/wiki.git en el directorio
waliki_data
del root de tu proyecto (o el que indique la constante WALIKI_DATA_DIR
de tu local_settings.py
)
Luego de clonar el repo, tenés que sincronizar la base de datos ejecutando:
python manage.py sync_waliki
El archivo fixtures/planeta_pyar.json
contiene los feeds del planeta actual, asociados al usuario con id 1.
Para cargarlos, ejecuta:
$ python manage.py loaddata fixtures/planeta_pyar.json
Más adelante habrá que asociar cada blog al usuario correspondiente.
Existen varias maneras de contribuir con la web de PyAr, reportando bugs, revisando que esos bugs se encuentren vigentes, etc, los pasos que se encuentran a continuación describen como realizar contribuciones a nivel de la aplicación.
Todas las contribuciones son mas que bienvenidas, pero para empezar a contribuir (con código) estos serían los siguientes pasos:
-
Lee el archivo
CONTRIBUTING.md
para entender cómo funciona git, git-flow y tener una calidad mínima del código -
Recuerda hacer tests! (en lo posible) de los cambios que hagas, si bien la base de tests en este momento no es muy grande es algo que estaremos intentando cambiar
-
Una vez tengas todo revisado haz un pull request a este proyecto https://github.com/PyAr/pyarweb/ y haz referencia al issue.
Una vez tu pull request sea aprobado tu código pasará a la inmortalidad de PyAr :)