Skip to content
This repository was archived by the owner on Apr 21, 2020. It is now read-only.

Latest commit

 

History

History
58 lines (40 loc) · 1.97 KB

toc.md

File metadata and controls

58 lines (40 loc) · 1.97 KB

Conceptos generales

Recopilación de conceptos generales relacionados con desarrollo de software.

La motivación surge de la necesidad de documentar una aplicación LAMP desarrollada hace años basada en symfony para que en la empresa que la usa tengan un mínimo de documentación sobre el desarrollo y puedan darle soporte y continuidad. En el momento de abordar esto desconocen conceptos que para mí son básicos, como qué es un entorno, cómo usar git, cómo funciona github / bitbucket / gitlab, qué es docker y cómo funciona, etc.

Esta documentación nace para quedar obsoleta: trata sobre una aplicación WEB que en 2018 puede considerarse "legacy" puesto que se comenzó a desarrollar en 2011. Obviando aquellos detalles particulares de la aplicación, comparto el resto por si le resulta útil a alguien.

Como ayuda para elaborar este material se utilizará el proyecto Red Panda CI symfony que en su día hizo Sergio Ortega Gómez como prueba de concepto. Gracias, Sergio :)

Nociones

Repositorios

  • Conceptos básicos
  • Acciones principales: clone, commit, push, fetch, pull
  • Colaboración: Branching & merging, resolución de conflictos
  • Conceptos de "git flow": master, develop, feature, release, hotfix
  • Versionado: Tags

Uso básico de Docker

  • Imágenes
  • Containers
  • Volúmenes
  • Redes
  • Compose

Uso básico de Jenkins

  • Jobs
  • Builds
  • Hooks

Uso básico de Sonar

TBD

Conceptos de QA

  • Calidad
  • BDD
  • Ejecución local de pruebas
  • Sonarqube

Ciclo de vida

  • Configuración y puesta en marcha de entorno local
  • Pipeline: Develop, Testing, Release, Deploy
  • Entregabilidad: CI-CD-CD
  • Etiquetas y versionado semántico
  • Changelog