Diferencia entre revisiones de «Apuntes»
Línea 1: | Línea 1: | ||
− | '''Esta guía no es definitiva. Estos comandos me han funcionado a mi (Iván López Hernández) pero puede que a otros les de problemas. Si sabéis exactamente como se hace una práctica explicada por el profesor (en mi caso Galindo) modificad el archivo para que todos podamos hacerlo bien. | + | '''Esta guía no es definitiva. Estos comandos me han funcionado a mi (Iván López Hernández) pero puede que a otros les de problemas. Si sabéis exactamente como se hace una práctica explicada por el profesor (en mi caso Galindo) modificad el archivo para que todos podamos hacerlo bien.''' |
− | PRACTICA 2 EGC''' | + | |
+ | '''PRACTICA 2 EGC''' | ||
'''Comandos para desplegar en local:''' | '''Comandos para desplegar en local:''' |
Revisión actual del 11:21 3 dic 2019
Esta guía no es definitiva. Estos comandos me han funcionado a mi (Iván López Hernández) pero puede que a otros les de problemas. Si sabéis exactamente como se hace una práctica explicada por el profesor (en mi caso Galindo) modificad el archivo para que todos podamos hacerlo bien.
PRACTICA 2 EGC
Comandos para desplegar en local:
Primero arrancar Ubuntu
- Poner el archivo local_settings.py como dice en las transparencias
- cd .. (Solo si queremos volver a la carpeta de atras)
- cd /mnt/c/ (Para salir al disco C)
- cd Users, cd Ivan, cd Desktop, cd decide, cd decide (El ultimo son dos veces porque hay dos carpetas que se llaman igual)
- pip3 install Django --user
- pip3 install -r requirements.txt (Este commando ponerlo desde la primera carpeta de decide)
- sudo apt-get install postgresql (Para instalar postgresql)
- sudo service postgresql start (Por si se necesita arrancar postgresql)
- sudo su – postgres (Este y los dos siguientes para crear la base de datos y el usuario)
- psql -c "create user decide with password 'decide'" (La primera vez no me ha funcionado, he cerrado los comandos y al ponerlos otra vez me ha funcionado)
- psql -c "create database decide owner decide"
- Ahora salimos de postgres escribiendo exit y nos metemos en la segunda carpeta decide
- sudo service postgresql start
- pip3 install psycopg2 después poner pip3 freeze para ver si está instalado
- python3 ./manage.py migrate
- python3 ./manage.py createsuperuser
- python3 ./manage.py runserver (Si lo quitamos todo y queremos volver a arrancarlo, poner este comando desde la segunda carpeta de decide)
- Probar en el navegador poniendo en la url: localhost:8000/admin
Comandos para desplegar con Docker:
- Abrir PowerShell
- Ir a la carpeta de cd docker (Todos los comandos siguientes son desde esa carpeta)
- docker-compose up –d
- docker exec -ti decide_web ./manage.py createsuperuser
- docker exec -ti decide_web ./manage.py runserver
- Probar con la url “localhost:8000/admin”
Práctica 4
- Loguearse en Travis continuous integration con la cuenta de github. Meterse en el .org, no en el .com
- Modificar el local_settings.py para poner USER: test_decide, NAME: decide, PASSWORD: decide. Esto se hace para que coincida con el archivos .travis.yml
PRACTICA 5
Buscar en stackoverflow las preguntas más frecuentes de git (Las primeras CAEN EN EL EXAMEN) https://stackoverflow.com/questions/tagged/git?tab=Frequent
PRACTICA 6
- cd /mnt/c/ (Para salir al disco C)
- cd Users, cd Ivan, cd Desktop, cd decide, cd decide (El ultimo son dos veces porque hay dos carpetas que se llaman igual)
- cd authentication
- ls para ver el nombre de los archivos en la carpeta
- Copiar un test con el comando: cp test.py test_ejemplo.py El primer parámetro es el nombre de un archivo existente y el segundo parámetro es el nombre que va a tener el nuevo archivo
- nano test_ejemplo.py para editar el archivo
- Borrar todos los def y poner el def que viene de ejemplo en la página de egc wiki
- Volver a la carpeta de decide con cd ..
- sudo service postgresql start (si da problemas matar el proceso que tenga el puerto en la cmd con permisos de administrador)
- python3 ./manage.py test ./authentication/nombredeltest.py (con esto ejecutamos el test que pongamos en nombredeltest.py)
- Ha dado un error, ejecutar sudo su – postgres, poner el comando: psql –c “ALTER USER username CREATEDB”, en nuestro caso, el username es decide.
- Volver a poner el comando python3 ./manage.py test ./authentication/nombredeltest.py
Pruebas de carga
- pip3 install locust
- pip3 install psutil
- desde la primera carpeta de decide poner cd loadtest/
- locust Visualizer
- Meternos en internet en localhost:80809 y trastear con eso
PRACTICA 8
En la consola de Ubuntu:
- curl https://cli-assets.heroku.com/install.sh | sh
- sudo apt install ruby-dev (Si da algunos fallos, hacer luego: sudo apt update)
- sudo gem install travis -v 1.8.10 --no-rdoc --no-ri
- heroku login
- travis login
- Hacer un fork del repositorio al final de la práctica y luego clonarlo
- Heroku créate “nombre de aplicacion” (en el nombre yo he puesto “decidearticuno”)
- Modificar el archivo .travis.yml con el notepad++ mismo para quitar la clave del profesor, desde api-key para abajo y sustituirlo por el nombre de la aplicación anterior (app: decide articuno)
- Modificar el archivo settings dentro de la decide y decide otra vez para poner en BASEURL la url de nuestra app (entrar en heroku buscamos nuestro repositorio decidearticuno, le damos a open app y copiamos esa url)
- travis encrypt $(heroku auth:token) --add deploy.api_key
- Si algo falla, puede ser que tengamos que entrar en travis-ci.org, darle al + de la izquierda y habilitar el nuevo repositorio (Practica anterior)
- Despues de todo eso modificado, hacer git add –a, git commit –m “configuraciones” y git push
- En travis-ci.org le damos a dashboard, vemos el ultimo commit y vemos que pasa las pruebas
- Ahora nos vamos a nuestra url de heroku y si ponemos esa misma url /admin nos mostrará la interfaz (Para tener usuario y todo lo demás mirar la práctica anterior)
- Para hacer una prueba, meterse en la carpeta de authentication, modificar el archivo basic test para que falle (poner 1+1, 3), hacer git add –A, git commit –m “prueba de fallo en test basico”, git push y comprobar en travis-ci.org, en dashboard que se está haciendo y que falla
- Después de hacer que falle, volver a cambiar el archivo y commitearlo para que no de fallo en un futuro
Pregunta de examen: Cuando reportamos una incidencia, lo importante es que el que vea el error, sepa replicarlo