deSymfony 2012

Integración continua con Symfony2

César Suárez  · 

Presentación

Vídeo

Transcripción

Extracto de la transcripción automática del vídeo realizada por YouTube.

buenas ah bueno primero daros las gracias por estar aquí es una hora complicada aquí después de comer el alioli y demás así que gracias y bueno mi nombre es cesar y he venido a hablar aquí de integración continua primero agradecer a los patrocinadores la oportunidad

de que estemos todos aquí de que yo estoy aquí dando una charla y qué bueno que podamos disfrutar de estos días aquí en castellón como he dicho bajo vamos a hablar de integración continua mi idea es explicar un poco los conceptos de la práctica de esta práctica

de desarrollo ver un poco cuáles son las prácticas recomendadas para seguirla para llevarla a cabo lo veremos algunas herramientas para orientadas al mundillo php y symphony 2 y poquito más tampoco quiero aburrir mucho bueno lo primero yo de sal trabajo en

para presentar un poquito trabajo en trujillo un pueblo de cáceres y trabajo en ceta ciemat ese galimatías de siglas somos centro extremeño de tecnologías avanzadas y dependemos del ciemat que es una institución parecida al csic el centro de investigación

energéticas medioambientales medioambientales y tecnológicas así lo dice todo junto no nos vamos de ahora así que yo entré allí a trabajar hace unos tres años y bueno allí trabajamos mucho computación gris computación con gps imagen médica todo un poco alejado

del mundo symphony de lo que se maneja aquí pero sí que desarrollamos aplicaciones internas de gestión gran parte de ellas están desarrolladas en el lincoln y que para eso entré yo a trabajar y de hecho en el de symphony de 2010 o jornadas de symphony que

se llamaba estuve comentando un poco en nuestra experiencia así que si alguien tiene el interés por ahí andará por vimeo actualmente trabajo con más o menos mitad y mitad con él con java que por aquí ya he visto que no es muy querido y sí y con symphony 2

ya nos hemos metido ahí de lleno y bueno ya parte me gusta me gusta ser una enredada tengo varios proyectos personales algunos todavía tienen que ver la luz bueno tenemos una página web de música siempre la meto en mis presentaciones está bien no he conseguido

encontrar la forma de meterla así un poco más más eso así que os hago ya el spam directo los que no sigáis por twitter ya sabéis que soy un pesado con la música así que bueno vamos vamos a empezar primero os voy a presentar un poco un escenario a lo mejor

quizás algo exagerado del típico la típica problemática que intenta solucionar la integración continua y luego ya partir de ahí vemos que es nosotros generalmente cuando cuando empieza un proyecto nuestros programadores empiezan confiados están alegres van

haciendo sus cómics miran el facebook el twitter no hay prisa todo el relax pero claro siempre siempre hay alguna fecha de demo de entrega o de algo que hace que que se empiecen a dar prisa dejen de probar las cosas ellos lo pegan en su ordenador funciona

en su ordenador pero tampoco están muy seguros de que todo esté bien y digamos que entonces ese código empieza a oler claro va llegando la fecha de entrega y alguien tiene que revisar eso porque todo el mundo sabe que no no no nadie se puede fiar nosotros

como programadores eso de mi ordenador funciona no no es válido entonces llegará quien sea y mirar a ver cuál es el estado de nuestro main line en el control de versiones por ejemplo el tranque en el svn o el master en el git personalmente lo que se encontrará

será esto sea errores errores y muchos más errores una avalancha de errores que habrá que solucionarlos con prisas malamente presión nada bueno nada bueno sale nunca de esto entonces intentando solucionar esto aparece la integración continua la integración

continua la define martín fowler aquí en pequeñito se ve el link digamos que es un poco la base de la integración continua donde se explica quién lo quiera que se lo lea pero bueno la integración continua se define muy bien en cómo en el astral con la introducción

qué es esto vamos a ir viendo poco a poco la integración continua es una práctica de desarrollo software no es no es una herramienta no no sea algunos seguramente si vengáis pensando que hablar hablar de cómo configurar un jenkins ya veremos que algo de eso

hablaremos de jenkins pero no no la integración continua no es una herramienta que tú enchufe si ya está ahí trato el trabajo es una práctica de desarrollo luego veremos que donde esta práctica tiene que ser adoptada por todos los miembros del equipo no vale

que unos sí y otros no y también iremos viendo las razones tiene tiene su aquel esto integran su trabajo frecuentemente es decir ellos hacen como de su trabajo lo añade nada a esta línea principal al mail and el control de versiones frecuentemente aquí lo

ideal es al menos una vez al día y ya veremos que contar más mejor cada una de estas integraciones cada uno de estos comités va a ser verificado automáticamente incluidos los tés no sólo no sólo se va a verificar que compila y ya está lo suyo es probar y verificar

que todo que todo está en orden ya ha habido bastantes charlas de cd y dvd y las que quedan así que tampoco y el objetivo de todo esto es detectar los errores que se introducen en la línea principal del sistema de control de versiones lo antes posible es el

principal objetivo de todo esto que necesitamos con la integración continua ahora iremos viendo qué necesitamos básicamente cinco cosas un equipo motivado es muy importante que quiera seguir la práctica un sistema de control de versiones que eso no creo que

sea problema si no lo tenéis vosotros tenéis un problema un servidor de integración continua que ya veremos qué es cuanto muchos procesos automatizados y un sistema de feedback esto de una manera un poco más seria se organiza así vamos a ir viendo un poco

parte por parte nosotros generalmente tendremos a nuestros desarrolladores haciendo cómic ellos estarán concienciados de que están haciendo integración continua y harán cómics frecuentemente se supone que ellos intentarán no introducir errores en el cómic

esto tampoco es aquí un viva la pepa y da igual que me avisara que haya un error lo suyo es que utilicen un poco la cabeza y luego tenemos la parte del servidor de integración continua que en realidad a pesar de su nombre es una chorrada lo único que hace

es ver si ha habido cambios en el sistema de control de versiones lanzan un proceso de verificación y generan algún tipo de informe procesable o algún tipo de informe de un xml o lo que sea para que bueno ahora lo queremos y todo esto generalmente este proceso

esta verificación automática lo hace lo que se llama un vil script vale un script que ejecutará x 3 compilación y demás y luego tendremos un sistema de feedback él el servidor de integración continua lo que hará será generar estos informes por ejemplo un xml

y habrá un sistema de feedback que procesará a esos xml y verá qué problemas hay en nuestro en nuestro código los suyos que el desarrollador se entere de qué está pasando en la gracia de este asunto hay dos formas uno que sea con un dashboard o sea algún tipo

de pantalla donde se vean botones rojos y verdes y tal un sistema de alertas con rss un email una bocina lo que sea entonces hemos hablado antes que el servidor de integración continua ejecuta algo algo unos procesos automáticos que verifican pero tampoco

hemos hablado que exactamente ejecuta pues vamos a verlo son estos siete puntos lo primero que pasa a ver es si tu código con pilares base en una en un lenguaje dinámico o no no no existe ese concepto pero bueno puedes comprobar que la sintaxis es correcta

digamos es un poco la comprobación base que por lo menos eso va a arrancar más o menos luego lo que se suele hacer en gestión de entornos esto es dependiente un poco de la ejecución de tests nosotros en los tests no sólo vamos a ejecutar tests unitarios lo

[ ... ]

Nota: se han omitido las otras 3.870 palabras de la transcripción completa para cumplir con las normas de «uso razonable» de YouTube.