Public | Automated Build

Last pushed: 2 years ago
Short Description
Aplicación para la gestión de pedidos
Full Description

Gestion de pedidos: Proyecto para Infraestructura Virtual

####Aplicación para llevar la gestión de clientes y pedidos

####Realizado por: Jose Ignacio Recuerda Cambil

##Introducción

Con este proyecto se consigue la creación y aprovisionamiento de las máquinas de prueba y de producción. Se utilizará como PaaS (Heroku) y como IaaS (Azure).

La aplicación lleva un seguimiento de los clientes y de los pedidos de cada cliente. En la página inicial muestra una gráfica con el número de pedidos de todos los clientes que se encuentran en la base de datos. Se pueden dar de alta nuevos clientes rellenando un formulario con sus datos, y por otro lado, añadir pedidos individuales para cada uno de las clientes, introduciendo la fecha de compra, enlace del producto y el precio.

La aplicacion esta despegada en:

##Herramientas usadas

  • Travis (Integración continua)

  • Docker (Entorno de pruebas)

  • Fabric (Despliegue automático)

  • Vagrant (Crear máquinas)

  • Ansible (Aprovisionar máquinas)

  • Heroku (PaaS)

  • Azure(IaaS)

  • Sqlite (Base de Datos)

  • Django (Aplicación)

##Integración continua

Para la integración continua de mi proyecto he usado Travis. Cada actualización que haga en el repositorio automáticamente travis se encargará de pasar los test para asegurarse que la aplicación funciona correctamente.

Más detalle

##Creando entorno de pruebas con Docker

Como entorno de pruebas voy a usar Docker.

Docker es una plataforma que se encarga de automatizar el despliegue de aplicaciones en contenedores de software similares a donde se ejecutará, dando así la opción de probar la aplicación antes de que pase a producción.

La imagen de mi aplicación en Docker está en este enlace

Más detalle

##Despliegue en el PaaS Heroku

He escogido el PaaS Heroku. Lo he escogido porque es muy sencillo de usar, ya que se puede enlazar directamente con un repositorio de gitHub y gestionar de una manera muy fácil con unos comandos de terminal.

Más detalle

##Despliegue automático con Fabric

Para automatizar el despliegue he hecho uso de la herramienta Fabric .
Con ayuda de Fabric puedo desplegar mi entorno de pruebas creado anteriormente con Docker, o el que comentaré a continuación con Ansible y Vagrant en Azure.
Para todo esto he creado un archivo llamado fabfile.py en el que defino ordenes paara automatizar.

Más detalle

##Despliegue en el IaaS Azure

Para desplegar mi infraestructura he usado el IaaS de Azure, haciendo uso de una suscripción gratuita.

Para tener la aplicación funcionando en Azure con la ayuda de Vagrant y Ansible hay que ejecutar:

make azure

Más detalle

#Comandos para usar este repositorio

##Para ejecutar los test

  • fab -H vagrant@gestion-pedidos-service-ruwzh.cloudapp.net ejecutar_tests

o bien:

  • make test

##Descargar repositorio

fab -H vagrant@gestion-pedidos-service-ruwzh.cloudapp.net descargar_repositorio

##Para aprovisionar la máquina de azure y lanzar la aplicacion

make azure

Este comando hace uso de Fabric

####La aplicación ejecutandose en la máquina de azure esta Aquí

Docker Pull Command
Owner
ignaciorecuerda2

Comments (0)