mejores practicas de despliegue continuo para aplicaciones ... · fernando arconada orostegui...

47
Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata Sotés Facultad de Ciencias, Estudios Agroalimentarios e Informática Grado en Ingeniería Informática 2012-2013 Título Autor/es Director/es Facultad Titulación Departamento TRABAJO FIN DE GRADO Curso Académico

Upload: hanhu

Post on 17-Feb-2019

240 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

Fernando Arconada Orostegui

Mejores practicas de despliegue continuo paraaplicaciones Symfony2

Eloy Javier Mata Sotés

Facultad de Ciencias, Estudios Agroalimentarios e Informática

Grado en Ingeniería Informática

2012-2013

Título

Autor/es

Director/es

Facultad

Titulación

Departamento

TRABAJO FIN DE GRADO

Curso Académico

Page 2: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

© El autor© Universidad de La Rioja, Servicio de Publicaciones, 2013

publicaciones.unirioja.esE-mail: [email protected]

Mejores practicas de despliegue continuo para aplicaciones Symfony2, trabajofin de grado

de Fernando Arconada Orostegui, dirigido por Eloy Javier Mata Sotés (publicado por la Universidad de La Rioja), se difunde bajo una Licencia

Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported. Permisos que vayan más allá de lo cubierto por esta licencia pueden solicitarse a los

titulares del copyright.

Page 3: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

������� ������ � ��������� ������ ���� ����������

��������

�������� ������� ����� ��

� �� ����� �� ����

������ �����

������ ����� �

������ �� ���� ���

� �� ���� �

� �� ���� �

� ������������ ����� ���������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

���� � ������ ��� � ���� � �������� � � � � � � � � � � � � � � � � � � � � �

���� �������� � ������� � � � � � � � � � � � � � � � � � � � � � � � � � � �

���� ����� � � ����� ��������� � � � � � � � � � � � � � � � � � � � � � � � �

� ����� ����� ������� ��� ����� � � ���� � � � � � � � � � � � � � � � � � � � � � !

���� ����� � ���� �� ������ � � �� ����� ��� "#��� ��� ����� � �

���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � $

���� %&�� � �� ��� ����� � � ���� � � � � � � � � � � � � � � � � � � � '

� �� �� ������� ���� ������ ��(��� )������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

(��� *� ������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

(��� %��+�� ���&� ��� �� �� � � � � � � � � � � � � � � � � � � � � � � � � ��

(��� �����,� �� � �����&� � � � � � � � � � � � � � � � � � � � � � � � � ��

� !������ �� ����������" ����� # �� ���� ������� �$!��� ��,� ���� ���� �� �� -����� � � � � � � � � � � � � � � � � � � � � � �$

!��� ���� �� � �����&� � � � � � � � � � � � � � � � � � � � � � � � � � � �$

!��� .���&� � �/����� �� ����� ��� )�� ��� � � � � � � � � � � � � � � � ��

!��� ���� �� � ���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

Page 4: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� ������� � ��� �� � �� ������ ��

���� ������ �� �� � ��� � � � � � � � � � � � � � � � � � � � � � � � ��

���� ����� �������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

���� ����� �� ������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

� ���������� ��� � ���� ��������� ��

���� ���������� �� ��� ������ � � � � � � � � � � � � � � � � � � � � � � � ��

���� ���������� �� ���� � � � � � � � � � � � � � � � � � � � � � � � � � � ��

���� � � ��! � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �"

� ������� �� ���� �� ������ � ��

"��� #�$ �� � ��������%� ������� � � � � � � � � � � � � � � � � � � � � � � ��

"��� �$����� ! ����� �� ��������%� ����&�� � � � � � � � � � � � � � � � � ��

"��� '(��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�� ������ ���� � �!

�� "��� # �$

����� )�� ���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

����� ���*�+ ��� � � ��! � � � � � � � � � � � � � � � � � � � � � � � � � � ��

����� ',��� �� ������������ ��� � � ��! � � � � � � � � � � � � � � � � � ��

�� %���������� ��

#�&���� ��'� ��

��

Page 5: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

������ �� ����

�� ����� � �� ��� ��� ������ ������� � � � � � � � � � � � � � � � � � � � � � � ��� ����� � �� ��� ��� ������ ���������� � � � � � � � � � � � � � � � � � � � ��� ����� ������ �� ��� ��� ���� � � � � � � � � � � � � � � � � � � � � � � � �� ����� ��� �� ��� ��� ���� � � � � � � � � � � � � � � � � � � � � � � � � !� "��� � #�������� $ %����� � � � � � � � � � � � � � � � � � � � � � � � � � &�� "��� � ��������'� � #()�� � � � � � � � � � � � � � � � � � � � � � � � � � �� � �*+� � , ��� -���� � ���.�� �/% � � � � � � � � � � � � � � � � � � � �!0� 1���� ���� �� �����'� �� ����� � ��������'� � � � � � � � � � � � � � � � ��&� 1���� ���� �� �����'� �� ����� � ��� �� $ ��������� � � � � � � � � � � ����� *���� � ����� ���� 2� ������� ��� 34+5 � � � � � � � � � � � � � � � � �!��� #��� � ����� � �(��� $ ���� � � � � � � � � � � � � � � � � � � � � � ����� 5����� � ���6�� ������ ��� 171 #��� � � � � � � � � � � � � � � � � ����� 5����� � ���6�� � �8����� � ������� ������ ��� 171 #��� � � � ��

���

Page 6: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� �������

����� �� ������ �� �� ���� �� ����� �������� ��� ���� ��� ����������� �������� �� ���� �� ���� ����� ���������� ��� ��� ��� �� ���� ������ � �� ������ �� ������� ����� ������������� � ��������� ������ ���������� �� �� ����� ���� �� ��� ��������� ������� �� �������� �� ��� ����� ������� �� �� ������ ���� ��� ��� ��������������� ������� ����� �� ��� �������� �� ! ��� ��� ������ ������� ��� ���� ���� ��"�#���� �������� ���������� $���% � ������� $���%� &������ �� ��������� �� ���� ���������������� ���� ��� ����� �������� � �������� ������� �� ������ � ����� ����� ��� ����������� ���� ��� �� ������ �� �������� ����� � ��� ������ $���������� ������%��� �� ������ ������� ������� � �������

� ��� ��

'�� � �� ���� ���"� �� ���� ��� ������� ���� '� ���� �� ������ (�� ���� ������ ����������� � �� ��� � ������ �� )�� ��� �� ������� � � �� ������� *�� ���� ������� ���� ��������� �+� � ����� ����� ���� � �������� ��������� ! )��� ��� ����� �� ,��� � ����� ���������� $����% ��� �������� $���%� -�� ���, �� ��� �������� ��.���� �� ��� �� �� ���� &����� ���� ������ ������ ����� ��, ��� �������� ����� ������ ����� ��� ��,����� �� �������� ���� � ������� �� ����� �������� ����� ������� $�� �� ���� �������� �����%� '� ��� ���� ����� � ������ ��,� ������� ���������

/

Page 7: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� ���������

�� � �����������

����� �� �������� ��� ����� ��� � ������ ��� �� ��� ����� � ����� �������� ���

��� �������� ����� ����� �� � ����� � ������� ��� �������� �� ���������� �� ��������

���� ���� � �� ��������� ��������� �� ���� ���� ������ ���� ������� �� ���� � �����

�� � ��������! ���� ������ �� ����� ���"� ����������� � ������� �� ���� ��� ��������

�� ��� ����� � ��������� � �������� �� �� �� ������ � ������"#�� �� ��� ��� ��

������� �� ������� � ��� ������������� �� �������� �� ������ � ������"#�� �"�����

�� ��������� �"�� � �������� ��� ����� � ��"�����#� �� �������� ������ �� �� ���

������ ��������� � ����� ����� ��� ��� ������� ������ � ���������� ����������� ������

�� ������������ � "����� ���� ��"���$��� � ������������������ ������� ����� �����

� ��������� �"��% �� ����#� ��� �$� ����"�� ����������� �������� �� ������ ������� ��

�������� ���������� �� ��� ���� � ��� �� �� ��� �� ��� ��������� �� ���� ����� ����

� & � ' �� ����� �� ����� ���� ����� �������� � �� � ���������� �������� ���� ����

�������� ���� �� ���� ��������� �� � ��� �� ����� �� �������� �� ���� � ��� ��������

����� �� �� ��� ��� ������ �� ��������� �� � �� ��� ��� � ��� ����������� � �������

��������� (� �� ��� �������� ��� ��� ��$ �� ���"����� � �� "������� � ��� �� �����

������� ���� ��� ������ �� � ������������ �� ��)����� � ���� ��� ���� �� ������� ��

�)� ��� � ���� � ������"�� � ������������ �� �� ��� �� ��������� ����� ��� ��� �����

��� ��� �)���� ��������� ���� ����� �� ��������� � ��� � �"�� ��� ������ ��������� �

��� ������������� *� � �� ���� � ������"�� ���� �� ��"�� � �� �������"#� ��� �����$�

���� ���������� �� �� �������� �����)� +� � "��� ��� �� �� � ������� �� ������������

����������� ��� �� ��� ����, � ��������� -�- .� ����/�

���� �������� ��� �� ����� ��������

�� ��)����� �� ��������� ��� ��� � � �����)� �� �� ��������� ����"��� � �������� ���

�� ��� �� ���� �#���� � �� � ����� ��"��! �� ��� ����� �� � �� � ����� ������������ ���

��� ��������� �� ��)� ����"��� ��� �� � ������ ���$�� ��� ��� ��� ��$ ��� �� ����

�� ������"�� �� ��� ���"� ��� ����� ��� �� ��� ���� ��� ��� �������� ����� ���� ���

������ �������������� .���� �� ���� � ��������� ��� � ������ ��� "�����#� � ������

0� ��������������� ��� ����� �� �������� �� �������� ��� ��� ����� ���� ����������� �

"����������� �� �� ����� � ��� �� �������� ��� 1 ������ ������2 ��������� ������� �

���������� 3��������� � ��������� ��� ������������ �� ������ � ������� �� ���� ����

���� ������� �� ��)����� � ����� �������� ��2

����������� ������� ��� �� ������ � ��������� ���� �� �������� ��� �� ���� ��

�� ������ -* ��� ����� ������ ��� ���� ������!� .� ������ �����$�� ����� �� ����

�� #� �� ���� � ������ � ������� �������� 4� ���� �� �� 5� ��� �������� �

��������� �� ������� ����� �� ���� �� ������ � ����������

����� ��� �� �� ������� ��� �� �)������ ��� ������������ � ����� ������� ���

�������� +������ 6�� �� ���� ���� ������� ����� ��� �� ���� �� ������� �����

�� �� �� ������� � �� ��� �� �� ��� ���"� �� ����� � ��������� �������� �� ������� �

��������� � ������� ��� ������������ ��������� 3��� ��� ������ �������� .���� �����

"�������� ��� �� ������ � .���� ���

/

Page 8: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�������� �� ������ ��� ����� � ���� � �� ��������� � ���� � ���� ���

���� � �� �� ������� ��� ���� �� ����������

���� ������� � ��� ���

� ��� �� ���� ��� �� �� ����� �� ���� �� ���������� ��� ���� ��� �� ��� �

�� ������ ��� ��� �� ��� ��������� �������� ��� ������� �� ������ ���

������ �� ��� � �� ��� ��! ����� �� � �� �� ����� ��� ��� � ���������� ��

��� �� � ��! �� � ��! �� ��� ��� � �� ������� � �� ��� ��� � �� ��� ����

������� �� ��"�� �� � ��� ������ ���� ������

#��� �� ���� �� ���������! ����� � ������� �������� � ��� � "��

$"������ �� �� ����%

& ���' �� ��� �� �� ��� �� �� �������� ��� ��� � ��� ��� �� ��"��� �� ���

������ ��� ��" (� � � ����� �� ��� � �� ��� �� ������� ���� �� � ��"�� � �

)�� ��� �� ���������� �� �� ����� �� �� ������ � ��� ���

*���� ��� �� �� ������ �� �� ��� �� ����� �+��� �� ��� ��� �����

,� ����� �� ��� - �� ��. �� ��� �� ���� ����� �� ��� � �� �'�

� � ����� ����� � ��������� ��

���� ���� �� ������ ���������

������� ��� �� ������ �� ������� �� ��" (� �� ��� ����� ���/� �� "�� ��

���! ��� ������� 0���� �� ��� 1�2 � 0���� �� ��� 3�2 ,� 0���� 1�2 �� �� �����

�� ������ ��� ��� �� ����' � �� �4� �������! ������� � ��� ��"���������

�� "��������� ,� � ���� �� �� ��' �� � ������ � � �������'���� "���� ,� 0����

3�2 �� � "�� ��� .� �� �� ������� ������ ���/� .� ��� �������� � �� �����

�� ��� ��� �� ���� �� �� ��' �� � ������� �� "�������� � � ���� �'���� �� ���

�������� ,� �� ����� � ��� �� �� ���� ��� �� ���� "�� �� ��� ���

�� � �� �� ��� ��� ��� ��� �� �� ���� �� �� � �������'���� �� � ���� �������

����� �� ���� � � ������ �������

,� �� ���� �� ��� ��� ����! � ���5� �� ����� ������� �� ���� �� ���! �� ������

� �� �������� �� ���������� ����� �� �� .�� �� �� ������ �����4� � ������ ,�

��� ������ �� ��� ���/� ��' �� ����� �� ��� �� ���� �� � �����! �����

������ �� �� � ��� ����4��� �� ��"��� �� ��� ��� �� � �����'� ����! ��

��' ��� ��� "������� ����� 6���� �� ��� ���! �� ���� � ������' "�� ��

"���������� ��� ���� .�+ ���� .�� ������ 7 ��"�� �� � �� �������� ��

� $�������'�% ��� ��� ������ ���'� /���� �� ���+ ��"��� ��� ,� ������

�� � ���� � �� � ��� � � ���� �� ��� ��� �� ��"+��� ��� ������ ��� �� �� �� � �

���� �� �����! ���������� ��� �� .� ���� ���.� ����� ����� ��� �� ��������

6� �+� ��� +���� �� �� � ���� �� ��� ����

8� .� �� �� ���� �

9

Page 9: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 10: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

��������� �� ������ � � �� � ������ � �� �������� � �� ����� � ��� ���� ����� ���

������� � ��� ��������� ��� �� ��������� �������� � � ��� �� ������ � �������

������� ���� ������ ������� �� ��������� ��������������� � ������� �

� �������� ������ ��� ������ ��������� � ��� �������� � �� �� ����� ��

� ������ � ������� �������� �� ��������� ��������� � � �������� ����

��� ����� ���������� � � ��� � �� �� ��� �������� �� ���� ����� � �� �� ����� ��

������� � �� ����� ��� ��������� �� ���������� � � ������ �� ��� �� �����

��������� � ����� ���� �� ����� ����� ���� ���� ������� �� ������� ���

����������� �� � ���������� ��� ������� � ��� �� �� ���� � �� ���� �� !�

���� �� ����� � ��"

�� � ������ �������� � ����� �� � ���� � � ������� ��� �� ��� ������� �

����� ����������

�� � ������ ����� � ����� ��� �� �� #� � � ��� ���� ������

���� ��� � �� ��� � ������� ����� � � �� ������ �� ���������� � � ������� �

���

�� � ����� �� ���� � � ����� ��� �� � �� ������ ���� � ����� #� �

� �� ����� ����� ���� � ��� � ����� �� ��� ����� �������� � � � $��

�� � ����%�� ���� ��� � �� ��� ������� �������� � ������ &�� �� ������

��� ������� ��� �� � ����� �� ������� ���� ���� ��� ������ �� ��������� ��

������� � �� '����� ( � '���� (�) ��� �� ������� ��� �� '���� *�) ���� ��

����� ��� ������� �������� �� ��� �� �� ���� � � �� ����� ��� ����

� � ����� �� � �������� �� � � ���� �� ������� �����

+

Page 11: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 12: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 13: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� ����� ����� �� ���� �� ������� �� ����� ��

����� �� �����

��������� � ����� ��� ����� ������������ � ������������� � ��������� �� � ����������� �� ����� �������� �� �� �������� �� ���� � � ���� � ��� �� � � ��� ��������� ������ ������ � ��� �� � ������� � �� �� ��� �� ������� !!"��"####������ ��� ��$����� �� ���%�� ��� �� �������� � �� &' (���)� * �� ����+���"!!"####

, ��� �������� � ���� � ���� ��� �-� ��� ��������� ������� .� �� �� ���������� �� ���� ��� �-� ����� ��������� ��������/��� .� �� ��������� � ����������� ���%� ���� �� ����� ��� �� ���� �� �� ����� � ��� �������� �� � ������ � � � � ������ ��0� ������

, ���� �� �-� ����� -���� ,� �� �� ������ ������-� ��� � ����)��� �� ����� ������ ���� ��� ��� �� ������� ��� �� ������������ ������ �% �� �� � �������� ����������� � ������� ������������ ���� ��������� � ��� ������� �� ���� ������ ����� �� ������ �������� ���� ��� ������ � ���� � ��� ����� �� ������� � ������� ���������� �� ��� �� ����� 0����� �� ������� ��� �� ��/ � ����)��� �� � � ��$�-������� ����� �� ���� ���� �������� � ��-���

.�� ��� ����/�� ��� � ���� �� ������ ���-�� '����� � ���� � '11 ��� ������������ � ������ ��� �� �� ���� ����� � ������ � ���� � � �����+� �� ��� ���� ����� �� �� ������-� �������� ���� ��� ��� ������ &�� � ����� � ����)��� �-���� �� �-��� ��� �����+�� ����� ����� ��� ������ � ���������� � ���� � �� ��������������� �� �� ��� ��-����

, ���+� �-� ����� ����$ �� ���� ���� �� �� �� �����+�� ���/��� �� � ��������� ��� �� �-� �� �� �� �����+�� ���/�� � ���+� �-� ��� ������ � ����� ��-� �����2� ������� ��������� ���� ����� ���� �-������ �� ��� �� � � ��������� ������� ���������� ���/�� ����� ��� � ������ ��-������-�� ��� ��� ��� � ����� ������� ���������

, ������� �-� ��� ��� � ������ �����-� � �����-�� ��� ��� �� ��� � ���� �� ��-��� ������������� ��� ��� ���� ���/�� � ��� ��� �� ����� �� �� ���������,� ���� ����� � ����)��� �-�� ����� �� ���� ��� �����������

, ������� �-� ����� ������� ��� , ������� �-� ���� ��� ����� ������ �� �������� ��� ����� � ��������

��-� ������� ��� ����� � � ����� ��� � �+��� 3���� � ����� ��� � ���� ������ ��� �������� ��������� ��% �� � ���� ��� ����� ����� � �������� ����� �� ���4 ��� �� �� ���� � � ��������

5� ������/� ��� �-� � ����� ��� � ����)��� �� ��� ����� '��� ��� �� � � ���� �����'�� �� ����� �� ������ ��� ��������� �� ��� ������ ����� ��� ���� ������� � ���� � ��� ����� ������������� �� ���� ����� �� ��/�� �� ������ ��� ���/������ ����)��� �� �� �������� ���� ���� �� ��� ���� �� ���� ������ �� ��� �� � ��-�� � � ��� ��� ��� ����� ����� ��� ��� �����-�� �� ��� ��� � ��������

��-� ������� �� ������� � � ������ ��� �������� �� � ����)��� �� � �+��� ����� ���� �� ���� ��� �� ������� �� � ��� ���� ���� ����� �� ����� �� � ��

6

Page 14: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 15: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 16: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�������� ����� ������� � ���� �� ����� �� ������� �� ����������� �������� ���� �����

��� �� ������� � � ������ ���� ������� � �� ����� �� �� ���� ������� �� �������

���� �� ��� ������ �� ���� ������� � � ���� ����� �������� �� ������ ��� ���������

�� ��� ���� �������� � �������

���� �

��������� �� ����� ��� �� ������������� ��� ����� �� ������ ��� ����� � �

���������! "� ���� �� ���� #��� �� �������� �� ����� �� �������� ����� ��� ����� ��

��������� $ �� ����� � � �� ������ �� ������ ��� ������� �� ����� � � ��� ���� ������

�� �������� ����� ��� #��� �� ��������� �������� ���� ����� �� ������ � ��������

����� � ��������� ��� ��� ������ ��� ��������� ��� ����� � �� �� ����������� � ��

��������� �� ����� ��� ���� ���������

��������� %��� �� ����������� � �� ��������� �� ����� � �� ���������

���� ���

������� ����� �

&������� ������� �

���� �

�'������� �� ���������� �� ��(��� �� ������� � �� ������� �� �� �������� ��� �� �

��� ���������� ��� �� �#������ ���� ���� �������� �� ��(���!� )�� ��� ������ �� �������� ��

����� �� �������� ����� ��� ����������� �� ��������� ���� ������ ����� ��������

����� ���� �������� �� ���� ����� � ������� *� ����� �� �������� ���# ���������

�������� �� �� �������� ��������� � ������� ����� � �� ����� � � ����������+ �

���������� �������� ����� �� ����������� �� ���# ����������

��������� �������� ����� ������, ���� �� ����- �� �� �������� � �� �������� ��

������ �������� � ���������

���� ���

�������� ���� ������, ���� �� �� ����������� � ���������� �� ��������

&������� ����������

..

Page 17: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� ����������� �� � ������

�������� � ����� � ����� �������� �� ����� �� ����� ���������� � ���� �� ��������� ������� � ����� ���������� �� �� �������� ������� ����� �� ����������� ���� �� ����� ������ ���

����� �� ��������� ��� ��� ���! " ��� ����� ��� ���� ���� �� ��� ������� � ������� �� ��������# ������ � ������� �� ����� �� ����� $ �������� ���� ����� �����%� �������! &� ������������� ����$� ���� �� ����� �� �� �����# '�� � ������������ ���� �� ��� ��� �� �� ��������# � ( � ����� �������� �� �������������� ����� ���������� ���! "� ������� �� ������������� ���� �#���� � ��)���� ������ ������� �� ������������� ���� � �� � ��������� ��� ��� � ������! "��� ���� ������ �� ����� ������ ������ � �� ������������# $ ���������� ���� *����� ���� � ������!

���� �������

&� ��������� ����%� �+

,� ���� � ������ �� ������ �� �� ��)�������� �� ����� '�� � ����� ��������'��� ���� �� ������ '�- ������ � �� ����� $ ���� �� ���������� �� ������ ����� � ������ ����!

&� ����� ��%� �� ���� ������� ��������� ���� ������� ������� � ���������������� �� ����� '�� � ����� ������ $ �� ����� � ��������� �������������� ����� )����!

,� ��%��� �������������� �� ����������# $ �� �������(� ����� '�� � �� ��� ����� ����# �� ��)�������� $ �� ������ �� ������ '���� ��.�%��� �� ������ ������� � ������ $ �%�����# �� �� ��������!

,� ������ �� ������ �������� � �� ����������# �� ����� ����� '�� �� �������� ���������� � ���� �� ����� ������������ $ �����������!

���� ����� �����

/������ �� ������������� ���� �#���� � ����� ����� �� ������ ����������! 0����� �� ������ �� ������ � ��������� ���� �� �� � ��������� �����! 1�'����� ����# �� ����� � ����� ����� �� ����� � ����������� ������� ��������� ����*����� ���� ������ $ ����!������

*����� ������ ����� &��230�2 $ �, 4��� �� ����� �����������! "� ������������� �� ������ ��� ����� $ � ����� ��������� � �,& 5����� ,����)� &�������6 �� 7��$ � )����� �� ��2�� ������� ������! *����� ������� �� ��������#��� ����� �� �� �������� ������� 8����� $ %��� �� �� ������ ���� � �������� '�������� � �� ����� �� �����! "� �������� �� ������� ��� �������� � ��������� � � ���������!����

" �� ���������� �� ����# �� ��)�������� ������ � 7��$ $ "����! ���� ��������� ������ $ ����� �� �� ����� � )����� ������� ������! &� �������� �� ��

9:

Page 18: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�������� ��������� ���� ��� �� ������� �� ������� ������ ��� ��� ���� ������ ����� ���� ��� ������� ����� �� ���������� � ����������������

����� �� �� ���������� ��� ����� � ������ � ������������� �� ���� � �������� ������� � !��" #������� $��� ���������� �������� �� ��������%���� � ��������� �� ���������� � �������� � ����������� � ��� ������� ������� �� ������ ����������� ��������� � �������� ����������� � �� � ����������� ��������

�������� �� ������ �

&���� � ������ ����� ��� ��� ��������� ��%����'���������� ����� ������ ������������� ����� � ���� &����� ���� �� ����� �

��������� � ���� ���� ������� ��� � ������ ���(� �� ������� � ����� �� ���������� ������ ������� ������ ��� �������� )������� � �����*�$� ������� '�+ � ����� ������� ����� ���� ��� ������������ � �������� � �� �

��� ���� ��� ������������ � ,���� -���� ���� �� ���� ����������� ����� ����� ���� �(� ������ ���������+� ������ ������� � ����� � ��� �� ���� � ����� ��� �� �� ��� �� ������

��� �� ��� ����� � ������� �(� ����� ���� �(� ������ � .��� �� ��� �������/��� ������� ����� � �� ���� � ������ ����� �� ��� �� ������� � 01 ������� �

������ � �� ���������� ��� ����� � &!2��� ��� �� �� ���� � ��������� � ��������%����� ������� ��� ���� ���� ������ �� �������� ���� ����� ��� ����� ������ �� ����%�� ��� ��������� �� ���� ���� �� ����� ������� � ��� �� ���� �(� ��������� � �������� ��� ��

����� � ������'� ���� ������ ������� ��������� ������� � ��� �� �(��� ��� ��� �� ������� ���

������� ��%��� ���� ����� ��� �� ����� ����� �� � ���� ���������� �� ��� ���� ���������� ��������� � ��� ����������� � �� ���� � �������� �� �������������� ���� ������

���� ������� �� ��� �����

��� ����� ������� ������������ �� ���������� � �� �������������� �� ��3��� �� �����%� ������ � �������� ��� ������� ��� �������� �� ������� � ��� �������- ��������� ������ �������� � ������� � � �������� � ����� ���� �� ���3

������� � � ������� +-! )+��� -����� !��4+ 5 *

���������������

��������������� ����������

���� ��������

����� ����������� ������� ��������

����� ��������� �

����� ��������� �

����� � ��������������

������ ���� �� � ���� ���!��� �� ����� �

��������� � "�����

��� �� "������#

���!�� �� ��$�����%&�#

60

Page 19: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� �� ����������

� �� �� �������

��� � ��������������

������� �� �������� ��

��������� � �� ��������������

������ �� � ��� �������

����������� � � �� ��� ����� �� ����� ������� ��

����!� �� "����������!������ ������

# $�� ���� ��!�������

�����!�������� � �������

����� ������� �� �� ������� �������� �� ������� �� ��������� ��������� ���

������� ������ ���� ������� ������� �� ��� ���� �� ������� ������� ������� � !" �������� #$ ��� ���� �������� ��� ����� �� %��&�� ���� �� ����� ��� #$� ������� '(' ���������� ����������

���� �������� � ��������

)� ������� ��������� � �� ���� �� ������ ������� �*������������ ���� ����� �� ��������� �� � ��� �� ������� �� ��������� ����� �� ��� � �������� ��� ����������� �+���� �*�,������ �������� ����� ������� ��������� *����� ����� ���� � �� ��%� ��� ���-� ����������� .�� /.�*������������ ���� �����0� ������� ��� ������ ������� ��%� �������"� ������� �� ���� ���� �� � ��� ������� �� ��%� �� ���1�� �2 ������ �� �� ���������

�� .�� ���������� ��� ������ ������� ����� �����3�� �������� � ������� �������� ������� ������ ��������� ����� 4�+%���� ���� �� �*������������� 5��� ����� �� *������ ���1�� �2 �� ��� ������ �� �� �'. �� ������� ���� �������� ����� ���������� �� �*������������ ���� ���� ���������� ������� ��� �� �������� �� �*���������������� ����� �� *���� ��� ������� ��������� ����� ������� ������ ���1�� �2 ������� �������� ������ �� ��� %��� �� ���������� ��������%�� ���������� ��� ���������� �*������� ������������ ��� �� ������ ������ ���� ���� ���������� �������� ���%��� ���� �������� � ���������� �*�� 6 ��� �� ����� �� ������� ��� ��

����� ������� �� �������� ���� ��������� �� �� ������ "��'� $� ��� ������� ���������"��+ �����%��� ������� ����� ��� ��� ������� *����� )%���� 7��(��89���5 � '�����%�� *����� �+��� ������� �������� �� �������� ���*��������� �� �� .�� ������ ����� ���1�� �2 ��� ������ �� ������ ��������� 7��(�� �� ����������� ������ �� �������� ����� ��

������� ����� )%���� 9���5 ��� ���������� ��� )%���� ������ ������ �� ����������� �� ��*�:��� ��� �������� ������1����� �+��� ��� ������ �� �5� ��� ��������+������ ��%�� ����� ������ � �*������ �� 9���5 � ������ �� ��.� /��� ��.� ������ �������� �� ������� �� ���1�� �2 0 ������ ��� �� �5� ��������� ����� ��.� ��)%���� ����� ��� 9����,.�� ���������� 9����,.�� ���� ��������� ��� ���1�� �2 �9����,.�� ���� ���� ��������1�� �� ������� �� �� ������� ��� �������� �� *���� ��� ����� �������� ����� ��� ���� ����� ��������1��� � ����� ��� ����� ��� ��������1���������� ���� �� ���������

;<

Page 20: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�� ������ ����� �� ���� ����� � �� ����� ����� ��� ��� �� ������ � ������� ����� � � ����� �����!�� �� ��"�������� � #���� ���� �$����� �� ������ � �� ����� ��!%� ��"��&� � '!�(� ����� �� �!�� ������ )%��!��� � ����� ���� !%� ��� ��� �������� � ����� �� !%� ��"��&� � ��� ���� �� �� *���!��� ������ "�� ��� !����������� ���% !%� ������ �� � ��������� � ��� �$���� �� �!� ��� � � �%)���� �������� ������

��������� ���� �

����� � ��� ���

� ������ ����������� ��� �� ����� ������� ��� � ������ ����������� ���

�!" �� � ������������ � ���������

#��������� � $� � � !% &��

'�������� � �()* �������

��������� ������+��� ���� ��) �������&�* ,�

,��&� � -#�* ��.�����

���� ��������� � ������� �� ����������

+� ����� �� � ��� ��� �� ���� � �� �!��� ����� ����� #� ��� � ��!���!����,�����������-� +����!�� ���� ���� � ��!���!���� ���"�� �� !%� ������ ������ ����������

.����� /0 '*1� � ����� 2��� � '!�(� '3�

��� �!����� � ����� 2��� ���� '!�(� '3� �� ��� � ������ � 4���055��� ��!������������!5������5��5� +���� �!%���� � ����� ���� �� �������� !6��!� � ��)�7��� � ��� � ��� ����� '!�(� '3�8 �� � �� �����8 ���!��� �����9���9�������� � ��� ���� ���� ������(�� �� ����� ��� 2� ��� ���� ��������(�!�� �������� �� ����� �� � �� !�!��� �� ����"�� �� ���� "�� !� �9�� �� '*1 � �6�!����!�� �� �������� �9������0

/�����0�����1

���2�13�����* ���

���2�13��1���* ���

���2�13�&���3��3�����* ���

���3�����3������3����* ���

���2�1�*

0 1��

0 �����

�:

Page 21: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���������� ����

�������� ����������

� ������� ������������������������������� ! "#���$�

%&��!'()��*+�*��,&��#-�.��(/�$0"1!�2

3'",$4�5.3�6!��, &�2.��7#+�8�+�4���4��9%:�+91;�+2+8��3�

��<�:49$�����.�58%.�:�(:*)";=:>�$�

4.256?&�0�56���.;4��7),@=��9.�08?1!91>( :�

=�#<>A�55�$��+��99�.��1! �@<�!9&��-/��8;0;

�?/��)8��*$�2"+�7�?��@�?7+72 B?7�)#6!�+*��C�A�+%A

2��5(�:6;�"�%BA�'%��'��:0&�;�AB8���/'�@��5%��9�&>�B;� 0��5* 6�������

����4�������6������� *����

����4���� � *����

� ���� ����,D3>�8

��6�� /� ��� ��5!�����

�������� �*� >���

� ��/�6� E���7���%�D6�*��6D� 6F

����� G��� FH ��� �� 57��5� +5�� ����/��� �����D� +FI

��/�6�

� J ��K �� KL��� M5� �5D���5������ NN�'

O/

�������1?� C,� (C?"�>� <�)�����O/

!??���?���<��*;������7�*?�8� ,�1<�*;,$(1���@@>�!,(��*0�>���A7O/

��?+��:�1#;�7??1=���/�/�*$��8�9 A�9����0��+�?:��?8)��B45?��#�/CO/

?����3���'�?4�>!@("�;��!"-)3-��2?�( 8,<��!C��;��? 4���9%�6%5��O/

��37�:,+�$-0�5#B6����/,��88>')�;�%��-��C4���%� C�)�� ���B: �-�"?O/

9��� �(!56">>*�!;� ��9���903�5�0� 3��A�3�"7,�** ��+;�=��55:-�2O/

@%8���68>���@2�����::���-�,2�=B���)B�?������ ?��13%��1�?�������O/

-�@*�>,7�9�A�%81��</076�1>���� 4 ���B9� ���(!������ �����.B O/

'0A����$/�=����)�"�.?�0"���/A� �6)&��@#������B2�����+B)B-)��/��'O/

�6���@4���9*C*��,18�3��,�5((�8���C"'/����8� 5�@$"�?"�+ #"��*�O/

:!18&��>;:�,2$%�8�@���!+�B $��-�#/����3B8�72=)�) ��:3��8��;.3 8O/

?(�$:�A�5B! %�&0B*5$�&���-=��0�%(��590��)(0!���9.� �+1!�:7#?O/

� �)�9+� �%7&�!�@�&,&�6/ �/2 # �!��93+��5��.(4B3�0:;�2����'/��:CO/

&(�-/.8�3���3# B,8%�$�%�+)��/�9�B*����6���7:�-C=�� <���C�*<-��&O/

�,$-1��=�B���=B%3"5�6/10C68�"&/�#�) 6C�"!:5�%% �?3:��& �����.O/

!=����4/1 7+�� B��(�#3�&5A��>�A%�1��:���+'9�3+@&%<2 <))�@�><6��4O/

�����;��+)�+��9$ &73�,*�'�!;���!. *��6(1� :��453��B�����=.C*�=��O/

1-9 ���@+�6A�B(;����*�0:�$2�A%/CB��$�'3:�0� � 5�5�1;?!3-"?/�7<�%O/

A@�C��2(�����'��#��+28557#;'0(9��-�������41%?7-:B>��+PPO/

�������� C,� (C?"�>� <�)�����O/

�'LQ

� J ��K �� KL��� ������� �������������������������

�������$5>>�%+ -$�

�?�) !"5�-�830�<C��':$?8<�A��'%?��8"�)��C. �)/618

++30�&;�*=�$51�$.&(�2&3(*#����� +�! $�$&�78����1�

��<@(0C:�!; ���!$�A"�/#:$3�

��37!?�+%9 $?B�)$167��:�'����..�14>9�'.",9.�<�����

��

Page 22: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���������� ���������������������

�!"��#$�!"�%&'()

*�%+��,)-%%���.�!/�0&/ �-.1�,-.2%�3(��%1.#4�54,�/26.�

���77!8�9�: *�� �&��;9��#&�'�����5";�3$

%<<�< $++=>�*+��?�� @ 7$++=7A�� 7�B$�3A<8�CD

? ; �+ 0�� 7$++=7A�� 7�B$�3

? �E F�7G 77F ?� 7$++=7A�� 7�B$�3

? $� ?�9 7E=;7<8<<E=A+$�!

? �� 7E=;7<8<<E= 7E=;7<8<<E=A+$�!

? �� ?�E*�;3H ?� ��=�8;�E=A+$! @ 7$++=7A�� 7�H+:HB +�=�

? !�= ;.+HE !�=>��=�8;�E=A+$!I�*8�E$7<8<<E=?.3�<A!�= 7E=;7<8<<E=

? <8<<E= 3<<.* ?� 7E=;7<8<<E=7��=EA<<

3<=B�+8$;E�I

? �+8$;EI E� ==<I773<=A<8<<E=.3��A;+� <$E;��E E�E.

�E*�I �560/���

�� ������ �� �� �� �������

������� ��� ������� ��� ������ ��������

����� �� ������� �� ������� �� ���������

����� ��� ������� �� � ��� � ��������

�������� � ����� ��� ����� ��� ���

����� �� ���� �!���� ������� �� ����� ����� ���� ���� �" ���

�������� � ���� �!����#����� ��� �������� �� ������� � ������� ��� ���$������� �� ������ �� ����������� �� �� ��%�� �� ������&��'���

�� ������ � �������� �� ������&�� � �� ����� �� ����������� �� ��� �����������(����� �� ������

�%���� ��� ���(����� �� ������ ��� �� ���� � �� ������� �� ���( ��� �� ��������

)*

Page 23: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� �������� � ������ ��� ����� � ��������� ���������

���� �� ����� ������� ���� � ��� �� ���� ��� �������� ��� � ������ ������

���������� ������� � �������� ���������� � ������� �� ����������� �� ���� ��

������� �� �������� �����������

���� � ����� ������� � � �����

����� �� �� ��� �� �� �������� �� ��� �� ��� ��� ����� ��� ��!���� �� ���������� � ���

������ �� "������� � ��� �� ���� ������� ����� ������ ����������� �� �������

������� � ���������� ��� ������� ������ ��� ��#������� �� ��� ���������� ���� ��

��������� � ��������

���� ������� � ������ ��

$��� �� ����� �� ������� ��������� %��&� %'"� $������ ���� �� ����� ���

�� %��&� � �� �������� ��#� �!� ��������&��� ������� ���� � ����� ����� ���

�(����� �� �������� )����* �� ������ ���� ����� ������ ���#���� �� ��&�� ������� ��

��� ���������� � ������ ��#����� ����� ������� � �(���� � ������ ��� ����������

� �(����

������������ �

����� ���� � ��������

���� ����� ����� �������

����� ��������

����� ������

����� ����

����� ����

����� �������

����� ���

����� ����������

��� ������� ����!�

����"��� � ��������� ���� ����������������!!

���������� � ����"���#��$��%#�������%

��������������� � ����"���#��$��%#������������%

����������� � ����"���#��$��%#��������%

�����&������ � ����"���#��$��%#�&�������%

���������������� � ����"���#��$��%#�������������%

������������������� � ����"���#��$��%#����������������%

�����������������������'��� � ����"���#������(����%#���������'����%

�������������������������� � ����"���#������(����%#�������������%

������������ � ����������������������� ����������!

��� ��������� ����) ������� � *��!�

�� ������� �� *���

+,

Page 24: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�������� � ������ ���������������� ��

�������� � ����� ����������������������

��� �� ������������������ ���� ���

������ �������������������

��� �� ���������

���������� � �������������� ����������

�������� � ����������

������������ � ����������������

�������� � ������������

�� �������� � � ����� �������� ��

������� � ��������������

������� � �������������������

���������������������������������� � ���������������

���������� � �������

��� �� �������

��� ������������������������ ���� ��� ���

�� ��!������ � �

���������� �

������������������������������������"#�������$����$����#� #� �����#%�

��� ���������� �� �����������

��� ������� �� ������������������

�� ��� �� ���������� ��� �������������� �� ��� ��

�� ��!���������������������

��� �� �� ��!������

��� ���������� �����������

�� ��!������ � �

���������� �

������������������������������������"#�������$����$����#� #� �����#%�

��� ���������� �� �����������

��� ������� �� ������������������

�� ��!���������������������

��� �� �� ��!������

��� �������������� ���������

��� ������� �� ��������

�����������������������������������������

�� �������� �� #��������#�

����� � �������&�� ����'����������������

��

Page 25: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

������ ��� ������� �� �� ����� �� ��� �����

���� � ������������������������������� �

���� ������������

�!!����"�# "�� �

������ ��� ������� ��� ����# ���������������# ��$����%�����

���� ������������

�!!���!��������# "�� �������� �� �������� ������#

���������������# ��$����%�����

���� ������������

�!!�����! ��&��#

"�� �������� ��� �������� ��'������ �� �� (��&�� ��&�����

���� � ������ ��������� �

�$ �� ���������" ��� �� ����������� ��&� ��� �� ����������������)

������ ����"�� �

������*�� � +�����*�� �

�$ ���������")

��� ������*�������" �

,"��� ������*������������� �� � �������)

������*����������� ��� �

��� �,����� $�� -.� ���� ������ �� ����� ����

�������� -.�

��� ������*���������� �/�����������

0 ��� ������*��������� �

������� .�

�$ ����������� ��&�)

��� �1������� �������� ��� ��&���� 2 ����������� ��&�

������� � ������*���$������������/���� �(��&��# ����������� ��&��

������*���������� ��������

$�� ������ �� �������)

��� �3�������� !4 � 2 ��������� 2 � � 2 ������� �/�����������

������� .�

�$ ����������������)

������� � ������*���$��������������� �

$�� ������ �� �������)

��� ��������� 2 � � 2 ������� �/�����������

$�� �� �� ����������)

��� 565 2 �� 2 ��� 2 ����������7��8

������� .�

�� ������ � �� � ����� ��� �� ��� ��������� �� ����� � ������ ��������

���� ���� ��� ��� ����� � ��������� �� � ������ �� ������ ��� � ������ �

������� �� ���� ��� � � ��� ����� � ��� � ���� �� ��� ����� � � ����� ���� ������

� � � ��� �� � ��� ����!����� ����� ���� ��

"#

Page 26: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 27: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�� ��������� � �� � ������������ � � �������� �� � ��� ���� � � �� ���������� ������ � ������� ���� ������� �� ��������� � ����� � ������������ ������ � ���������������

�� �! �� � �� ���� �� ��������� � ����� "��� ������ � # � $% �������& ������� � ���������� �� ��� ���� ���� ������ � �� �������

���� ����� �� � ����� ��������� �� ������

'������ � ��� (�������� �� ������� �������� ������ � "')& � �� ��� ���������� ����� ��(��� � ������������ � ������� � ��� ����������� ��� � ��� �� ���� ��(�� � ������������ "'������� &* '������ ����� � ���������� ��� ������� ������ ���� � ������� � ������ � ��� � ���� �� ��� � ���� �� � �������� ������ � "��+�& ���������� ������ (��������� ���� �(, � ������ -���� ���� � ����� ��� ��������� ������ ������� � � ������� ������ � ���������� ��� � � ���� � ������ ��� � ������� ������ � ��������� ��� �������� ������ � �� ������� '������ ���� ����� ������ �� � ��������� ��� '����� ��+ � ').�� � � � ��� � -��!�� -/0������ ���� ���� � � �������� � ���������

���������� � �������� � ��,����������� ���� ������* ����� ������ �� ��1�2� � �����2� ���� ������ �� ������������� ���� � ��� ��� �� � ����������� 0���� �� ������� � ������ � � ������ ���� �� ������ ��� �� ������ � 0������������ ���� ���� � �� �������

'������ ����� �� �� ������ ����� � ���� ���� ��� � 0������ � ,���� ������� �� ����������� � ���� � ��������� �� ��������� -���� � ����� � ,��� �34������� � �� ��� 5 ����� �� �� �������� ������ � �� ����� '������ ��� ���� �"� � ���� ���� ����������� ���� & �� �� �������� � ����������� 6 � ��� ���������� � ���� ������� �� �������� ������ � � ����� �� ��� ��� ������� ����������� ������ � � �� ��,���� ������� ���� ����������� ���� ����� � �������� �� ������ ��������� � ����� "� ������ ����& � � ����� � ���� � ��� � ������������� ���� �� ��+� � '������ �� ���� �� �������� � ���������� "� ������ ���� ����� � ��� $��%7&

���� ����� � �� �� ������

���� ���� � ��+ � '������ " � ������� ������ & ����� � �������� � � ����� ������ ����� �� �� ���� ���� ���������� � -��!�� -/0� � � ������ (���899� ��������������������9�������9�����9������ �������� ��� ��(��� �� ������� ������� � ��+� � '������ ���� :� � ;7 ����� ���� ��+� ���� ����� ��� � �������� � ���������� �� �������� � ������� � � ������� ������ �� � ��� ������� ����� � ������ � ����������* ����� � ����� �� ���� � ��������� ��� � ���������� �� ���+ � '������ � �� ��(��� � ������������ � � �������� � ������ ��* ��< �� ����������� ��� ����� ��� �� ������� .� � ������ �������� �� ������ � �� ��(����������� � �������� � � ��������� ����� � �� �!��8

������ ��� ') ������ ����� ���� � � ��+ � '������ � ����

-��������� � ')* (����� ���� ���� �������9������� � ���������� 9��9�,�� ��9���� ���� �� �=��� � � <�� � ������� 3��>��� ������?@�>(���899$%�%����93$%�%���� � � A� ������������ � ������ �� � ������ � '����� ��+� -� ������� �� ������� � BC � ������ ������� ����������

��

Page 28: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���������� ��� �� ������ ����� ��������

������� �� ��� ��� � ���������� � ���� �� �� ���� ���������� ������������ ������������ ����

�� ����� �� � ! �� ���� �� ���� �� �� � "�� ���#�� �� � ���� �� � �������� �� ���� � $% �� �� #� �#������ ������ &&'$��������������������(��)�(*�+( ��#����, -. �� � $%

/� ��� #����� ��� #� �� ��� ��� ����� ��� �� � �� ������� �� �� �"���� ������ ���

���� ���� � �� � �������

&�� ��� "�� ����� �� #� ����� � ���� �� �� �� ��������� . �0

'���������� �� � !��� �� ��� ��� 1��� ��� ����2

/���� �� �� ��� ������ � ����� ����

� ����� �� � � � �� � ��� 1��� ��� ��2� � ���� ��� �� ������ �� �� !�� �� ��� ���� �� ��� � �� ����� 3/ ����� ��� ����� "�� �� �� ��� ��� �����4�

3 #�� �� ��#�� � �� ��������4� "�� ����� ���� ����� ���� �� �� � �

/ �� � �� � ��"�� �� �� � �� �� #������� 15� �����2 � �� �� ��� ������� ! ��� �� �6�� �� � "�� �� �� �� ��� ����7 ! �� ����� �� � ����� ��������� ��� �� �67 �� ��� �� ��#� 6� ���� �� ! �� �� �� � ��� ��� � �� ������

/ ��� ��� �� ��� �8����� �������� �� 3����� ����� ��� �� ���� ��� � !������ ���7 ����� �� ���� ���#������ �� � ���� ��#�� � ��� �� ����� ��� �! ���� �� ���� ��� �� . � "�� ���� . ��9 ���� � �� ����� �� ������� �� ������� �� �� � �����4��

���� ������� ��� ��

/ �� �� ������ ���� � ����7 �� ��� � �� � ��#�� �� �����#�� "�� ��� � :��� ���� ���#�� �� ��� � �� � �����4� ! � ��� ����� �� �� ��� ����� ��&#���� /��� �� ���"������ � ��� #� �� ��� ��� �� ��� �� � � ' �� �����/*� � ���� ����� �� ������ �� �� ��� �������� �� 3����� "�� �� ������� ��� �����4� �� . � "�� �� ����� �� ���������� ������

����� ���� � �� ����� � ������

�� ��� � �� � ��#�� �� ����� �� ��� ���7 �� ��� ��� � ����� ��� . � �� ���� ������� � ��� ���������� �� �� ��� . � "�� ����� ���� �;� �/* �� � ��� ��6�� �� � �� :"���� �� ���� ��� ����� ���4� �� ���������� 3� � ����� ��� �� ����� � ��#� �� ��� ��� �� � "�� ��8� �� ����� ���4� �� ��������� !� ���� ��� �� �� �� ��� <�# 1"�� ����� ���� �� ����� � �� ����� 2� &�� ��� "�� �� :"���� �� ���� ������� ����� ���4� �� ��������� � ���� � �� �� ��� � �� � �����4�7 �� ���� 7 ���� ��������,�� �� �������� �� 3����� ������ �� ! �� �������� � ���=� �� ������� 9����

*>

Page 29: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 30: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

������ �� �� �� � ����� ���� ��� ����� ��� ��� ����

��

Page 31: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

����� ���������

��� ����� ��������� ��� ������� � �������� �� ���� ������ �� � ����������� �������

������� ������� ������� ����� ��� ���� ���� ���� ������� �� ��������� �� ���� ������

������ � ������ ���� �� �������� ���������� �� ���� �� ������������� ����������

������ ������� �� �������� ���� ����� � ��������� � ����� �� ���� ���� �� � ���

���������� �� ������ �� �� ���������� �� �������� ������ � ����� �� ������� ����

���� ���� ��� ��������� �� �������� �� �� �� ����� �� ������� � ��������

!����� ""# $���� �� ����� �� ������ � ������

� ��� ����� ��������

��� ����� �� �������� ����������� ��� ����������� ��� ���� ������ ����������� �����

����� �� ���� � ������ �� ����� �� ������� � ����� �� ����� ����� �� ������ �����%

����� �� �� �������� �� ��������� ������ �� ������� � �����������& �� �� �� �����

�� ���� ���� � ������� � �� ������ � ���� �� ��������

��� ����� �� ��'(� �� ���� ����� �� ������ �� ��� �� �������� � ��� � �����

� ������ �� ���� ���� ���� �� ������� )�� ��* ��� �� ������ � ��� �� �� �� ����� �

�������� ���� ������� � ����� � �����+� �� �� �� ����� ��� ������ ���� ��� � ���

�� �� ��������� )�� ��* � �� �� ������ �� ����� � �����

�� ���� �� ������� ����� � ������ �� ������ � �� ����� �� ������ � ������� ,� '���%

��� �� ������� �����-�� ���� � �������� � ����� ���� ��������& ��� ������ ��������

�� �.����� �� ������� � ���������� �� /���0,�, 123�,�

���� ������� ����� ��

45�� �� ��� /����� ���������6 )� ����� �� � ����� ����� ��� ��� � �� ��� /�����

�� ��� ,� ����� � ����� � �� ��������� 4������� ����� �� �� �������� ���� �����6 ��

��������� � ���� �������� �� �� ��� ��� ������ �� � ������ �� ����& ��������� � ����

��� ������� � ��� ����� � ��� ����� �� � ����� ���� �������� ��� ������ � ��� 77

89

Page 32: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� ������ ��� �� �������� ��� ���� ������ �� �� �� ����� ��� �� ���� � ������ ����� �� ���� ���� �� ������ � ������ �� �� � ��� � � ����� � �� ���� � ��������� �� � ����� � �� ���� ����� �������� � ���� ���� ���������� �� � � � ��� ����� � �� � ��������� �� ��� �� ������ �� ��� ��� � ���� ! ��� �" � ������ ������ �� �� ���� �� ��� ��� � �� ��� ��� �������" � � ���������

���� ����� � ��� �

�� ���� � ������ ���#� ��� �� ������ � � ���� �� � ������ ��� � �� ������� � ���� � ���� �� � � ���� $ ���� ��� �� ���� � � ������ � � ��� %&���� ������ �������� � � ������ � ����� ������� �� � ���� � �� ������ ����� � ��� � ������� '������� � ���� � ���� � ������ �� � ��� � ����������� � �� ����� ��� � ��#� �� ���� � ������ � ���� � �" � ��� �� ����� �� ��� � � (��� � ������� )������� � �� ������ ��� �* ������ ��� �� ������� � ���� � ���� �� � � ���� � ���� � ���� ����� �������� ����� � ������� ��� �� � ������ ���� � ����� ��� � � �� � �� �������*

������� � � ��� ��� � ��#� � ����� �� � ������ ���� ���� ����

� � ���� �� � �� ��#� ��� ��� � � ! �� ����� �������

������ ���+� ���� � ��"��� ��� �� �� � � ���� �� ������� � ���� �� ������

� � �� � � ������ ��� �� ���� ��� ����� � �� � ���� � �� � ����� ��� ��

,� � �� �� ������ � � ���� � ������ � ����� � �����- �" ���� ���� � �� ��� � �� ����� .� ����� � �� �� �� ������ � � ����� �� ������ �� ����� � / ����* � � ����&�� � �"����� � � ��� �� ������ �����

01

Page 33: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� ��������� ��� � ���� ��������

��������� �� ��� �� �� ���� �������� � ������ ������� �� ������ �� � �� ��� ��� ���� ������ ������� �� � �� ��������� �� ������� ��� ��� ������ � � �� �� ���������� ��� � ������� ����� � � � �� ���� � � ��� ��� � � ��� ��� �� � �� �� � ������� ������� �

���� �� �������� �� ���������

!����� ��"������� ������������ ��� ������ ������� � � ���� �� ���������� �� ��������� �����#

���� �� ��� ����������� �� ������� ���� ������ ��� $��� � ��"������� ��� ��� ������ ��� ������ ������ �� �� ������ � � � ������ ���� %&' ���� �� ����

������ �� �� ����������� � (�� ��� ������� � '�'� � ��� ����������� ��� �)����� ����� ���� ������� �������� �� �������� ����� ������� � � ���������� �� ����)�� ��� '�'�

��� ��� �� ��� ����������� ����*+� �� ���������� �� ������ ��� ,��" ��� �������������� ����� �������� ���������� ��������� �� ���������� � �� "�������� �!�����)����

������ -� �����*� �� ���� � %���� �� � ���������� ��� �� ��� ��� ��� � ��� ������� �� ����� �� ������ �� ���������� � ������ �������� '� ��� �� ����� ������������ ����� ����� � �� �� �� �� ���������� �� ������ ��� � � ,,� � ��� � ��� ���� ���� �� ����� �� ������ � �������

.������ ����� �� ������� /���" �� � ���� �� ��� �������� ����*+� ���� �� ��� �� �� ��� � � ������ � ��� �� ,��" ��0� / � /���" �� � ��� � ������� ���� � �� ,��)" ��0� ���� � ����1� ������ � �� ��� ����� ��� � ���� �� 2�� ����� �� ���������� ��� �������� � � � ��"������� ������ ��� �� ����������� ,� ��������� � �������� ����� � ���� ��)��� ��� ��� ���� ������� �������� � ��������� ������ �� ��� �� � "�3���� '��� �%���� ���*� �� � ���� ��������

���� ���� ������� � � � ���

4�� ����������� � ���� �� ���������� �������� ��� ����������� ����*+�� �� �������� ���� ����� ��"������� ����� ��� ������� �� ��� � �� ����� ��� �� � � ������ ���� ' ������� � � ��� � ���� ����� �� ���� 5������6 � �� ����� �� ��� ������ � 3�� ����)� �������� &������ � ��� � ���� ��� � �� ���� 5����� �6 ���� �� ������ � �� ��������/ � ��� ������ ��� '�' �� � ����� � ���� � �� ������� ������ � � "������ �� ���� ��������� � �� �� � ����������4�� ������� �� ���� ������� �� ��� � ��� � � ��� ��� ����� �� ������� ��� ���� ���

� � "������ �� ���������� � ���� � ��* ��������� �� �������� �� ���������� ������� ���� �� ���� � ������ �� � � �� ��� ����� ���� � �� ��� ����� �� ����� � ������ ���������� �� � � ������ ���� � �� ��������� �� ���� ������� �� ��� ����� � ��� 7�!�������� ��� ���� �� ������

������ � ���� � �� �� � ���� ���������� � ������ ����� ���� �� ������� ������������� ���� ����� � ���� � � "������� � � � ������ ���� � ��+�� ��� �� �� ���� ����� ��

08

Page 34: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� ������

�������� ��� � ���� � ���� ���� �������� � � ����� � ����� �� ����������� � ������ ���� �������� ��� � �� � ���� � ���� ���� �� ���� � ����������� ���� ���� � ����� ��� ���� ���� ���� �� ���� ��� � �!" ����" �� ����� ���� �� ���� ���� ���������� �� #��$�� %�&� � � ����� �� ��� ��� �'�!��� �

������ �� ���� �� ���� ��

��������

��� �������� ��� ����� � ��������

��� ��������������� ���������

��� ����������� ������ �����

������� ���������� ����������������

��� �������� ������ ��

��� ���������� �� � ���!�"������������ ��

��� ����� "�� � �������������"���

��� ���������� �����

��� ������ �� ��

��� ����� ����

������������ ��� ��#������$% �����������

��� ����� "����� �� �"

��� �� �"��������"� ���� ��

��� �� ������������ �� �������

��� �&������������� '

��� �������� � �����

( )� � �� ���� �� �" ��� �������� ��� � �� ��� ����

� ����*����� % ! ������+,-�!./.!

��� ������ �� ���� ����

��� �������������� #������ ���������������*"���$

��� ����������������� #�������� 0 ��� ���� ������� 0 ����� ����� ����� ��$

��� �������������� #������������ ������ ���$

��� ��������������� �1�����

��� ��������� ������ �� ����

��� ����������������� ��� ����

��� �� ��"�� �"�������������� ��"�� �"�� ���������������������

����� ����� "�������� �����������������������

��������� ������ �

���� �2 �" ������� ���������� ���� � ��� �� �������

���& ����������������� �� ��� %3 ���� �

����� �"������"������ �113 2 �"��� ����������*"��*�����

��� ��� ## 4 1� (5���� "�� 6�(5����������6������ ����� $$7

���� �&��� 1� (5���� "�� 6�(5����������6������ �����7 ���

&(

Page 35: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���������� �� ��������������� ������������������ �����������

��������������������� ����������� ����������������

���

���

����������

������� ���������� !!!!

��� �"������ ��#����

��� ������ ����� �$���������������� �������

��� ��������#������� �����

��� ������������������� �����

���#�� %��������%� ����� ���"� ��� ���� & ����

��� �������

������� ���������� !!

��� �"������ ��#����

��� ������ ����� �����������������'" �"��(������������������� ��������� �

��� ��������#������� �����

��� ������������������� ����

���#�� %��!)*+,)!+)*!-)./��������)*����0���������%� ����� ���"� ��� ���� & ����

������� �����(���� �������������������"�1���!)(���� �)� �)(���

��

Page 36: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� �������� �� ����� ��� � ������

�� ���� ���� ���� �� ������ �� ������ ��������� ���������� ��� �������� ���������� ��� � ������ �� ������ ���� ��������� �������� �� �� ���� �� �� ���� ������ ����������� �� ��� ����� �� ��� ��������

�� ����� ����� �� ��������� �� �������� ���� ����� �� ���������� ��� �������� ��� �� ������� ��� �������� �� ������ �� ������ ������� ����� ������ ��������� ������������ �� ����� � ����� ������������ !��� � ����� ��� ���� ����� �� �� ������ �������� �� ��������" �� � ��� �������� �� ������ �����������

#���� � �������� ��� ������� ������������$

%�� �&����� � ������ �� ���������� �������

%�� ��� �� ������� ���������

���� ��� �� �� �������� �����

'�� �������(���� �)��*� ���� ���+� �� ������ �������� �� ������� �� �� ������������ �������� �� ����� �� �� ������� �� ���������� �� ���������� �� �� �������� ���� ����� ���������� ,��������� ������ �� ���������� �� ���������� ��� -���.� ��� �������������� ����� �� �������� �� ���� ����� �� ����� ����� ����� � �� �� ����� ��� �� ��������� ���� �� ����� �� ������� ��� ���� �������� �� ���� ������ ���������� �� ���������� ��������� -���. ��� ��� +����� �������� %� ���������� ���� �� ����� ������� � �� ��� �� �� ���������� �������� %� ���������� ������� �� ����� �� ������ �� ������� ���� �� ����� �� �������� �� ���������� ����� � �� �� �� � �������� ����� �� ��� ������������ �� �� ������ �� ���������� /�� ���������� ������� ��������� ��� ��� ���� �� ������� ������ �� ��������� 0�� �� ���������� ������� ��������������� ��� ������� ��� ���������� �� ���� ���� ������� 1��� ���������� ������������ ������� ����� ���� ��� �����$

'� ������ �� ������ �� �������� �� �� �� �� ������� ��� �� ������ �� ��������

'� ������ ���������� �� ����� ���� �� ���������� � � ����� ��� ����

%� ��������� �� ��� �������� ��� � ����� ����� �� �� ���������� ������� �� ���������� � �� ��� �����������

���� ������ � ������ �� �������� ������

�� ��� ������ ���� � ������� ����������� ���� ������ �� ������ ������ ������ �&����� �� ������� ���� &���$

������ ���� � � ������ � �������

��� ����� �� �

��� �� �

��� � �� ��� �� �!� ��"

���������� ����� #��� $ ��� � �� ��� � %�%&

���� �� ��� � �� ��� ��� �!� �'

(��)���� �� ��� � �� ��� �(�� �!� *'+�

23

Page 37: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�����������

�� �������� �

���� �� �

�������� �

��� ��� � � �����

������ �� ��������

� ���!� ����� "��! # ���"$��� ��

%� #�&�� ''

(�����

���)( � ��� '' ��������

( � ��� � �������

*������� +�

,-����� ''� �./�����

���),-����� �' �'�/���

� ���!� %� #�& "��! # ���"$��� �

�+����� �� ������0� + 1 �-���� �� %� #�&�� ��/

����+��-� 2-�� ����� �

2-�� ����� �

���� �� �� '

3����� ���� �� �� �

����� ���� �� �� '

�� �������� ����� � � �������� ���������� ����� �� � �� �� � ��������� �� ��� � ��� ���� �������� � ������ � ��������� ��������������� � ����� � ����� ��������� ����� � �� ������� � �������

� ���������� ����� �� � ������ ����� �� ��� � � �� ���� ������� ����� �� ��� �� � �� �� � �� ��������� �� �� � ������ � ���� ����� ��� � � �� � � ���� ��! � ����� ������� ! ������ ��������� ���� � ����� �� � ����� "�� #������ ���� ��� ����� ���� � �� ������� ���� ����� � ���� ������ ���� ��

"�� #������ �������� �� ������ ����� ���� ���� ����������� � #������ ��� � ���$� � ������ � �������%

&� ��� ���

'����� �������� (������ � �� ��! ���������� � � )

�*�� ��� ��� ��������

&������ ! � ���� � ������� �� � �

+��� ����� *���� � #������ ��� ��� ����� ���� �������� �� #������ �� ���� ������ �� ����� � �����

�� �����! ��� � ������� �� ��� � ���� � ����� �� ���� �� ��� ���� �� � #������ ���� � ������ �� ������ �� ����� � ���������� ������� ���� � �� �� �����$����� � �� �������� ����� � ������ ���� � ��� ���� ��� ��� � �����! � �������� �� ����� #� �� ����� �� � ��� ��� ���� ,������� #� �� �� � � ��� �� ������ ���� � ���������� � ����� ! � � ��������� '��' � ��! � � �� �� ����� � � ��� -. �� �� �������� � ��������� � ����! ���

/0

Page 38: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata
Page 39: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� �����

����� �� ��� ��������� �� � �������� �� � ����� ��������� � �� ����� �� ������� ��� ��������� �� ��� �� ���� � ��� ������� ��� ��� ������� ��� ������� ��������� � ��� �� � ��� �� ���� �� �� � � � ���� �

��� � � �� �������� �� � � ���� ����� �� ����� ������� ��� ���� ��� ������ �� ���� �� ����� ��� ���!� ��� �������� ������� �� ���� � �� "��� ���� �� ����� ��#� � � � � ������ $

�������� �� ����� � ��� �����

%������� �� ����� � �� &'' � �'

(������ � ��������� �� ���� �

������ �� ���� �����)�� �� *�� ���� ������� �� �� *��+�

����� ����� �������

�������� ���� ������������� ����� ��� ������� ������

������� ���� ������

�� ���� ����������� ������ ���������! �������

����� ����

������ �� ����

������� ���� �"#���� ��$�

�$������

�$���� ����

�$� �����

�$�������

�$%�������

,-

Page 40: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�� ������������

��� ����� ���� ��� � � �� �������������� � ���� �� �� �� �� ��� � � �

����

�������� ������� ��� ��� �� �� ���� �� �������������� ������ �� �����

������ ��� �� ������ ���� ���� �� ������ � �� ������ � �� ���������� �

� ������ � � ���� ��������� �� �� � �� ������ �� ���� ����� � ���� ��

������� ������� � �� ������ � �� �� �� �� ���� � �� � � �� �� ���������� �

������� �� �� �������� ��� ����� !���� "�������� ������� �� ��

�#� ��� ���� � ���� �$$ %&&� ��������� �� ����� ������ ���

'%

Page 41: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�� ���� �

���� �������� ���� �� �� ��� �� ��� �� ����� � ���� �� �� ��� ���� ����

� �� ������� ����������� �� ��������� �� ������� �� ��� ������ ��� �������

����� � ����� �� �������� ��� ����� �� �������� � ��� ����� �� ����� ���� ����

������ � �� ������������ �� ������� ���� �� ��� � � �� ������ ���� ��� � �� ������

� �� ������ � ������� ���� �� �� ����� �� �� �� � ��� �� �� �� �������� �� �� �����

� ���� �� �� ���� � �� ������� �� �� ���� �� ������ ��� ��� � �� ���� ���� �� ��

������ ���!� ������ �� ���� ������ �� ����� ���� ��� �!���� ��� �� �� �� �� �

���� ����� ����� ���� ��� ������� �� �� ��������� � �!� � �� ����� �� �� �� "�� ��

� �� ��� � �� �� ���� �� � ��������� �� �� �� � �� ������� �� � ��� ������� ����

�������� �� ������� �� ���������� �� ���#�� $������ ��� �� ����� ����� �������# �� ���

������� ����������� %���� ��� �� ��� ��������� � � ��� � �� �������� ���� ����

����� ��! � ����� ������ �������� �������� ���� �� ���� ���� � ������ � �������� &

��� ��� �� �� �������# ��� ��� ������� ��� ����!����'

$� �� ������� ��������� ������ ��� ����� ���� ��� ���(��� ������ ���!��

$� �� ������� ������ �!� �� ������� � �� ��� �� ������� �� �������# �� ���������

%�� ��� ��� ������ � ������ �� ��� �� ���� �� �� ������� ��� ���� �����

�������# �� � ������� ���������'

������ �� �� �� �� � ��� � �� �������� � � ���� �� ��� ����� �� ����� � ���

�������� �� )������� ��� � ���#� � ��� �� ����� �� ���������

�������� �� ��� �� �������#� � ���� �� �� ���������� ��� ���#� � �� ������� ��

�� ���� �� ������

���� ������� ���� ���� ��� ����� � �� �� �� � �� �� �� �� ���� ���� ������������

�� ������� �� ��� �!� �� ����� ������ � �������� �� � ��� � �� �������� ���� %��

��� �� �� �� ���� �� ���� ����� ����'

$� � ��� �� ������� ����������� �� �������# ���� ��� �� ������� �����������

�� �������� � �������� �� � ��� ��� � �� ��� �� �!� �� ����� ����� �� �� �

�������� �� ��� � ������ )�� � �� �� ������ �� ��� ������������

&� �� ����� ������� �� ��� ������� ��� ��� �� ����� � ��� � ����� �������# �� ����� ��

�!� � ����� ���

����� � ���

* � �� ��� ����� �!� ���(����� � �� ���� �� ����� �������# �� �� ����� �������� � ��� �����

�� �� ��������� ' ��� ����� �� ������ & ��� ����� �� ����� � �+���� ������� �� �� ���� ��

������ �� ���� � �� ������ ,��� ���� ������� �� �� �� �� ������ �� ��� ����� ���� ��

���� � ����� �� ����� �� �� ��� �� �� �� ���(��� ����� �� � ������ � ���� ��� ������

�� ���� �� ������ * ���#� ����� �� �� ������� �� ���� �������� �� ����� �� ������ ���

����� � ������ � ��� ��� �������� �� ��� ������ �� ���#�� &+���� �� �� ������ �� ��

����� �� ������ ��� ��������� �� ������ �� ��� ����� �� �����'

-�������

./

Page 42: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���������

�� ��� ����� ����

�� ����������� � � ��� �� ������� �� � ��� �������� ��� ������� � �� ��� ��� �� � ������ � ���� ������ �� ��� ����� � ��������� ��� ������ ���� ����� ��� ����������� � ������ � � �� ���� � ������ � � ����� ������ �������� �� �������� ���� ������ ������ ��� � ��� �� ���������� ������! ���� � "#$ �� ���! ��������� ��� ����� ���� ����� � ������� ���������� ��� �����%� �&� � '(' � � �� ����� �� � ��� �������� � ������!� � ������ ��� �������� �&� ������� ����������� ��������� � �������� )�� �������� ������ ���� �� ���*�� � �� ��� ��� �� � ������&������ � ��� �� �������� +�� � �� � � �� ������� � ������ � ,������ �-������ ��� �%���

������ ��������� ��������� ������������� ���� �� � � ���������������

����� ������ �� �� ����

(��� �������* ��� ���� �� ������� ��� �������� � �� ������ �� ��& ���� )���������� �� ��� �� � ����� � ���� �� �� ���� ��� ������� ������� � ��� ������ � � ������&� �� �� ������� ���%.�� ���� ���� �������*� /��� �����0�������*1

��������� � ���� ���� �� �� � ����� �������

�� �� ������ ������ ����� �� � � !����

���������� � ���� ���� � !" �� � ����� ��� ���

���������� # ���� ���� � !" �� � ��� � �$ ���

�� �$��%�& � � ��� ����

��� '

���������� " (�� ������ ( ��� � !" �� � ����) � �� � �� �"��

���������� " (�� ������ ( ��� � !" �� � ����� � �� � � !����

2�%� ���� �������� � �� ������� ���� �������* ���� ���� ��� ����� ���������� � ������ � � �� ������ �� ����� 2��&� ������ �� �������� �� +�� �� ������� ��� ��� ����� ���� �� � ����%� +�� �� +�� � �� �������*

����� ��� �� �� ������ � ���� �� �� ����

)�� �������� ������ ���� � ��� �� � ��� ����� �� ��& ��� ��� �&���� � ��� ��3��� �� '��� ���� �� �&���� ���� ���� �� +�� �� ��� ���������� ���� ���������������

�������� ������� !�" #�$%��� ��"�� � �������� ����& �� �&����� )�� ��� ���������$����

� ������ �� �&���� � ��� ����� �� '��� �� �� �&���� � ��� ����� � �� �� ������ �� ���� ���� ����� � �4�� � ����� � ����� �� � � �� 5�� �� �&���� ���� ����� � � � ���� � 5�� �� ��� � � ��� ���� � �� ���� (66' 789�

*+���� ,��� -�' �

%%%

.������/�(��� 0�

9:

Page 43: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

� ���� ������� ��� �� � �����

����������� ��� ������������������

��������� !��"#��$%#�&' ()�*���+���+, �+ �-.

��������� !�/�#0�1$%�//$'������������������ 2�

��������� !���&3$%4&5�160�' (�����������

���������� 7�8. 2 9�������:���;���<

���

=�>�����?��@

�� ������� ��� � � ���� �� ������������� � ����� ����� ��������� � � ����� �� ����

����� � ����� ����� �� ����� ����� ���� ��������� ������������ �� ��� �� ���� �

����� �� ������

A����� B�� ���C� ���%����B; B�� ���C��AC����A��B

���� B�� ���C�����B; B�� ���C��AC��A��B

��

Page 44: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

�� ���������

���� ����� ���� ������ �� �� ����� �������� � ������� ��� �� ������ �� ���������� ������ ��������� ��� ���� ���������� ����� ���� �� ��� �� ���� ��������� ��������� �� ���� �� ��� �� ������ �� ������ � ��������� �������� �� ������ ������� ���������������� � ��� �� ������� �� ����� ��� � ����������� ��������� �� �� ���������� ����� �������� � �� ����� ��� �������� �� ������ �� � �������

!� "�� � � ����� �� ���� �� ������� � �� � ����� ��� ����� ������� �� ���������������

#� ������������� ���� �� ��� ������� ��� �� ������ "�� � �������� ���� �� ������� ��������� ����� �� ������� �� ��������� ������ � ������"��

$�� ��� ��������%�� ���� �� ��� �� ������ �� ��� �� "�� � �� �������"� �� �������� ����� �� ������ �� � �� ������ ��������������

$�� ��� ���� �� ����������� ���&��� �� ������� ������"� ��� �������� �� ��� ����������� ��������%�� ����� ��� ��� ��� �'� ��� �������� �� ��������%�� ������(����� �� �� ���� �� ����� � ��� �������� ������ � �� ������������� �� ���� �������� ��������� ��� �� �� ���&��� )��������� ������ ������"� ������ �� ������� ��*

�+� �� ���� �� � ����� ���� ��� � ��� �� ����� ������ ��� ��� ����� �� ���� ������� ���� � ��������%�� �� ����� �� ������ ����������

,-

Page 45: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

����������

��� ������ ��� ������ ��������

��� � � ���� ��� ������������������������������ � ���

��� � ������� ��� � � ����� ! ��"��#�� "� � � ���������� $�# �%��

�&� ' (����� ��" � )����#� ���������� ���� � ���� ������� ���� ������������ ���� ��� ��� ��� ���������� ��������� � �������� ���� *""����!+����# ������������� � �"� *� �%�%

�,� ' - . "� *���/�� �0�� "������� �� ��� "� "� � � 1# ��2��"����3� �����������4��)�� �%��

�5� �6������ '�� �%�� ��� 7������ 8�� 5����,9&

�:� �* ��������� "��� ��# �� �������� ��"��� ��� ����; ����� ���������%���%:��!���������!"��� ��#!��!��������!��"������

�9� ��� �������� ��� ��������������� ���������� �������

�<� $ (=��������� ��!�� ��� ������ * ����� � �"� 6� � �%��

��%� �7������ ��� ������ ������ ����

���� �>��� �(�?@�"�?6��A�� B ����������� ��� ������� ������� �2������%%<��%������ � ?��"�?���A���

���� ��%��%��� ���� ���C �� �� ��" ���������� "��� ��# D �� ���" ��������� �������������"��������� �"�����%��!%�!��!����!���C!��!��!��"!����������!"��� ��#

���� � $ �� ���� 6 $��#��� ��" * -�� ��� ���������� "���������� "�������� �������#���� ��� ���$��� ���% *""����!+����# ������������� � �"� '��� �%%:

��&� ' E�������� &���� ������� ���� &����� ���'�������� (������� (�� )�� * ����� � �"� )�� �%%9

��,� ��� ����# F �#����# ��" �#����#� "� ��#����� ��� ����� ����#���

��5� - G��� G H���� ��" - 6 �A��"� �� &����* &��+$�� � ,�� ����� "�� ��!������ -���� .��� ������� �� 8E I� ������� ������ '�� �%��

��:� �@��� D � ���"�� ��� ������� ���"����������

��9� �7$���� �� ���� J�% ������� �� � �� ���� D � �� �������� ���� � �������������� �����!�� ����!�%!�������!��! � ��!�����

��<� � 6������� ��� �� �� ����K D ���� ��� ��� �������������C������%����%� � ��!��!����

��%� �6������� ������� ���� �#����� $�� �%�� ��� 7������ 8�� ,&:�&��,:

&%

Page 46: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� �� ���� �� ���������� ���� ��� ������ � ���������� ����� ���� � ������������� �����

���� ������� ����� !����" #� ���$� ��� %����� &'( )*�++,��+�

��$� �-��.� ���� !���!��� ������ / ���� �� �� ���.� ���� !���!��� 0 -12�0���� 0 ������ ��� ���.� ���� !���!����" ����(33�����������!3�

��*� �-����� � � ������ �" 4�� ���$� ��� %����� &'( )$��))�)*�

��)� �5�� � ���!�����( 6 ��!���� ��� �7� ����� 0!��� ������ ���� ������ ������� �� 15��"����(33����� ���!��������!3������3 ��!����8���8���8����� !���8������8����8������8������� 8

��,� �%����" ����(33�������� ����!3�

��+� �#� � (( �7�8-������9��" ����(33����������3!� �3��3�������������0�������9������

��:� 4� ;����� �������� ������������� ���� ������ <=>���� #���� &���� 4 �� �����

��?� #� ������� ��7�!��" ����(33���!����3� '��� �����

�$�� �� ���� �� ���������� ���� ��� ������ � ���������� ����� ���� � ������������� �����

�$�� �-�������" #� ���$� ��� %����� &'( )*��?+$���

�$�� 2� @ �! ������A� B� 5��� �� -� B����� ��� ��� ���� ������������ � ��!" ! ��

����� ��!��� B��������� � ���� # ���:�

�$$� �1��� C ���� ��, ��� !��������" ����(33�������.�����3��3��,3�

�$*� #� @����� �-����� � � ����������" �� �#� �$%���& �������& ��� ����������� *�+D*)�� 6����� 4�� �����

�$)� �� ���� ��� ���� 0 ��� ����� ���� ���" �����(33���������������!3������3� ����0��0����0�����0����3�

�$,� �'������!��� ������!��� E������ �������!��� ������F 0 ��������� ��� ��� ��� 0��������" ����(33��������������3����3'������!���8������!���8E������8�������!���8������F�

�$+� 5� -������ �� 6� B ��� ��� ��� ����� ����'��& ��� & ��& ��������& ���

� �� (����� ��!��� B��������� 4 � �����

�$:� 4� G ���� ��� ��� ���� )��$ � ���� ���$ *$ ���� ����� �� )+� � ��!���B��������� 4 � �����

�$?� #� 7H���!��� �&���� �� � � �����" �� ����� ��� ������� ��� �$)D�),�6����� 4�� �����

�*�� �6 � ������ � ��� ������� !���� I �������!�" ����(33�������!3�����30� ������ �0���0�������0!����3�

*�

Page 47: Mejores practicas de despliegue continuo para aplicaciones ... · Fernando Arconada Orostegui Mejores practicas de despliegue continuo para aplicaciones Symfony2 Eloy Javier Mata

���� ���� � ��� �� ����� ��������������

���� ���� ��� ����� ��!"� ���"��!�� ������������ ������

��#� ��!����� � �"���"��� $ %�& & �� �!&���!'�! & ���% �!&���!'�!$ �����''�� �� ����������''�� � "(�)"�!���"�'���� ��! ���*+�,�%�&$& $ ��$�!&���!'�!$& $���%$�!&���!'�!�

���� ���� ������' -�� ����!� % ��' ����� "�%� . ����� �� ���� ���������� �"�'��������$������'$-��$ ����!�$%$ ��'$�����$"�%���

��,� �/��%����0 %� %� ������ %� � -��1� 2!� �3�#� ��� 4�� ��! 5�� 6�76,#*,�

��6� %&%�&��81 ���&9� � �!���� � ����"��!� �� �! �!��� "�!�!�1� :�&� �3���

��*� �;�"�� ! $ -��"�'��� �����!��"��������

��