Skip to content

Archives

  • enero 2022
  • diciembre 2021
  • noviembre 2021
  • octubre 2021
  • septiembre 2021

Categories

  • No hay categorías
Trend RepositoryArticles and guides
Articles

Bamboo vs Jenkins: ¿Qué herramienta de CI/CD usar?

On octubre 7, 2021 by admin

Hoy en día es imposible hablar de desarrollo de software sin hablar de DevOps, y la Integración Continua y la Entrega Continua son puntos importantes a tener en cuenta, ya que sus mejores prácticas pueden resultar en mejores planes de despliegue, menos errores en tus lanzamientos y una retroalimentación más rápida de tus procesos.

¿Cuál es la mejor manera de tener actualizaciones constantes y lanzar versiones fiables? ¿Qué herramientas debería utilizar? Estas preguntas llevan a muchos equipos a buscar una comparación entre Bamboo y Jenkins; al fin y al cabo, ¿no es esa la razón por la que estás en esta página?

Echaremos un vistazo en profundidad a Bamboo y Jenkins de Atlassian y definiremos algunos de los diferenciadores como herramienta de Integración Continua.

Integración Continua de Bamboo

En 2007, Atlassian anunció la primera versión de Bamboo para saltar a este nicho emergente del mercado. Lo que Bamboo aporta es una poderosa combinación de organización, flexibilidad, fácil interfaz gráfica de usuario y metodologías de CI/CD para ofrecer una gran experiencia mientras creas tus planes de construcción y despliegue. El objetivo principal de Atlassian Bamboo es ayudar a que tu entrega de software sea flexible y fuerte (casi irrompible) como un bambú.

Bamboo tiene lugar desde el código hasta el despliegue:

Aquí puedes ver cómo organizar tus builds a través de una estructura bien definida. En Bamboo creas planes (de construcción o de despliegue), luego estableces Etapas, Trabajos y Tareas – todo muy flexible y fácil de configurar a través de la UI.

Dentro de tu Plan, puedes tener múltiples Etapas. Según la documentación de Atlassian, cada Etapa:

  • «Tiene un solo Trabajo por defecto, pero puede utilizarse para agrupar múltiples Trabajos,
  • Procesa sus Trabajos en paralelo, en múltiples agentes (cuando estén disponibles),
  • Debe completar con éxito todos sus Trabajos antes de que la siguiente etapa del plan pueda ser procesada,
  • Puede producir artefactos que pueden estar disponibles para ser utilizados por una Etapa posterior.»

Debajo de las Etapas, tienes los Trabajos, que son un grupo de Tareas (sus elementos centrales a ejecutar). Según la documentación de Atlassian, un Job:

  • «Procesa una serie de una o más Tareas que se ejecutan secuencialmente en el mismo agente,
  • Controla el orden en que se realizan las Tareas,
  • Recoge los requisitos de las tareas individuales del Trabajo, para que estos requisitos puedan coincidir con las capacidades del agente,
  • Define los artefactos que la construcción producirá,
  • Sólo puede utilizar artefactos producidos en una Etapa anterior,
  • Especifica cualquier etiqueta con la que el resultado de la construcción o los artefactos de la construcción serán etiquetados.»

Bamboo se fortalece con su integración incorporada con otras herramientas de Atlassian, como Jira Software y Bitbucket Server. Puedes obtener visibilidad sobre los cambios de código, los resultados de la compilación y los detalles de los despliegues en todas las plataformas.

Para un uso intensivo, puedes aprovechar los agentes de compilación remotos, incluidos los agentes de compilación elásticos (Amazon EC2), de modo que tengas compilaciones distribuidas en varios servidores, reduciendo el tiempo de espera.

Las características principales incluyen:

  • Integración de Jira Software y Bitbucket Server para la visibilidad de extremo a extremo en la implementación de la liberación, la calidad y el estado.
  • Envíe un flujo continuo de construcciones a los entornos de prueba y libere automáticamente las construcciones a los clientes.
  • Gestión de agentes de construcción elástica que le permite escalar la capacidad de construcción mediante la conexión de servidores en su red utilizando Amazon EC2. Puede visualizar los requisitos del sistema para cada compilación con la función de matriz de agentes, lo que le permite asignar las compilaciones a los agentes adecuados.
  • Fusión automatizada entre ramas de Git y Mercurial.
  • Solo con el nombre de la rama, puede detectar, compilar, probar y fusionar ramas de forma automática para desplegar el código de forma continua en los servidores de producción o de preparación.
  • El soporte y los recursos están disponibles para los equipos empresariales. «

Los detalles técnicos sobre las plataformas soportadas incluyen:

  • Bamboo se ejecuta en Java (actualmente soporta Java 1.8)
  • OS soportados: Microsoft Windows, Linux, Solaris, y MacOS / OSX
  • Bases de datos soportadas: Mysql, Postgres, SQL Server y Oracle
  • Navegadores web compatibles: Firefox, Chrome, Safari, Microsoft Edge e IE 11
  • Repositorio de fuentes: GIT, Mercurial, Subversion y Perforce
  • Docker para Mac / Linux (17 o posterior)

Integración continua Jenkins

Lanzada por primera vez en 2004 (antes llamada Hudson), Jenkins es una de las herramientas de CI más populares que existen. Siguiendo la misma idea de Bamboo, aborda las metodologías de CI/CD para permitir a los equipos construir, probar y desplegar software de calidad.

Jenkins es una aplicación gratuita de código abierto. Tiene una enorme comunidad que ayuda a mantener y mejorar la aplicación y su ecosistema. Una de sus ventajas es que cuenta con cientos de plugins, que permiten a los clientes dar forma a Jenkins para satisfacer casi cualquier proceso de CI/CD deseado.

Este es un ejemplo de un escenario que se puede lograr con Jenkins:

Las características principales incluyen:

  • «Integración continua y entrega continua.
  • Fácil instalación.
  • Fácil configuración.
  • Cientos de plugins
  • Extensible a través de su arquitectura de plugins
  • Puede distribuir fácilmente el trabajo a través de múltiples máquinas, ayudando a conducir construcciones, pruebas y despliegues a través de múltiples plataformas.

Jenkins también tiene características incorporadas como scripting directamente en la interfaz de usuario para crear/actualizar tareas/pipelines. Existe una versión en la nube.

Ejemplo de una configuración mediante scripting inline.

Aquí hay un ejemplo de un Jenkinsfileusando la sintaxis de Declarative Pipeline (las definiciones se pueden encontrar en el enlace anterior).

Los detalles técnicos sobre las plataformas soportadas incluyen:

  • OS soportados: Microsoft Windows, Linux, Solaris y MacOS
  • Navegadores web compatibles: Firefox, Chrome, Safari, Microsoft IE 11
  • Repositorio de fuentes: CVS y Subversion, soporte incorporado para Git, y también se integra con un gran número de otros sistemas de control de versiones a través de plugins.
  • Se puede instalar como un Docker Container

Bamboo vs. Jenkins: La comparación

Ambas aplicaciones son muy potentes y ofrecen una serie de características:

BAMBOO

JENKINS

Construyeen los flujos de trabajo de bifurcación de Git

soportados

x

Built-en el despliegue Proyectos

soportados

x
Integración en Jira Software

soportados

x
Integración-en la integración de Bitbucket Server

soportada

x
APIs REST

soportada

soportadas

Automatización de pruebas

soportadas

a través de plugins
Facilidad de permisos de grado empresarialpermisos de grado

soportados

mediante plugins

G2Crowd ha creado una comparación basada en las opiniones de los usuarios para los siguientes puntos:

BAMBOO

JENKINS

Cumple los requisitos 8.8 8,9
Facilidad de uso 8,5 7,8
Facilidad de instalación 7.5 7,8
Facilidad de administración 8,2 7.8
Calidad de la asistencia 8,2 7,6

Como ambas herramientas tienen el mismo objetivo y ambas ofrecen un servicio de alta calidad, ¿cómo puede saber qué herramienta es la mejor para usted? Ten en cuenta algunos puntos:

  • Jenkins es una herramienta de código abierto, mientras que Bamboo es una herramienta comercial. Jenkins es un proyecto apoyado por su comunidad global, y Bamboo tiene su propio equipo dedicado a su desarrollo.
  • Bamboo tiene un enfoque más fácil de usar que Jenkins – ya que normalmente, las aplicaciones de código abierto están más preocupadas por otras características.
  • Jenkins tiene un gran número de plugins para permitir a los clientes alcanzar sus objetivos, mientras que Bamboo viene con la mayoría de las características incorporadas y cuenta con cientos de plugins disponibles en Atlassian Marketplace.
  • Bamboo se integra perfectamente con la suite de Atlassian, ofreciendo una gran experiencia si ya estás usando Jira Software y Bitbucket.
  • Jenkins y Bamboo tienen una gran documentación online, ofreciendo a los clientes la opción de investigar y encontrar una solución antes de llegar al soporte para obtener ayuda.
  • Bamboo tiene un gran soporte profesional disponible para los clientes con licencia, así como documentación online y ayuda de la comunidad de Atlassian. Jenkins tiene soporte de la comunidad y se puede obtener soporte profesional de Cloudbees.
  • Bamboo es una herramienta de pago y el precio depende de su uso, basado en cuántos agentes remotos necesitará. Jenkins es una herramienta gratuita.

Es una decisión bastante difícil de tomar, pero podemos ayudarte con esta decisión. Como Atlassian Platinum Solution Partners, podemos mostrarte todas las ventajas de usar Bamboo y cómo puede mejorar tu equipo de desarrollo para sacar el máximo partido a la integración continua con las herramientas de Atlassian. Tanto si tu equipo de desarrollo es pequeño como si se trata de una operación gigantesca con cientos de compilaciones en cola, estamos seguros de que Bamboo puede ayudar a que el software se entregue más rápido y con mayor calidad.

¿Quieres probar Bamboo? Ponte en contacto con el equipo de Valiantys, que puede ayudarte con las licencias y el despliegue.

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Archivos

  • enero 2022
  • diciembre 2021
  • noviembre 2021
  • octubre 2021
  • septiembre 2021

Meta

  • Acceder
  • Feed de entradas
  • Feed de comentarios
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress