Generales

P: ¿Qué es AWS CodeBuild?

AWS CodeBuild es un servicio de integración continua completamente administrado en la nube. CodeBuild compila código fuente, ejecuta pruebas y produce paquetes de software listos para su implementación. CodeBuild elimina la necesidad de aprovisionar, administrar y escalar sus propios servidores de compilación. CodeBuild se escala constantemente y procesa numerosas versiones a la vez, de manera que sus versiones no tienen que esperar en una cola. Puede comenzar con rapidez usando entornos de compilación preempaquetados de CodeBuild, o usar sus propios entornos de compilación personalizados para utilizar sus propias herramientas de compilación. Con CodeBuild, solo paga por cada minuto.

P: ¿Por qué debo utilizar CodeBuild?

En vez de tener que configurar, parchear y mantener el software de servidor de compilación usted mismo, puede usar la experiencia totalmente administrada de CodeBuild. Cuando envía sus trabajos de compilación a CodeBuild, se ejecutan en contenedores informáticos temporales que se crean en cada versión y descartan al finalizar. No tiene que administrar hardware o software de servidores de compilación. CodeBuild también se escala automáticamente para satisfacer su volumen de versiones. Procesa inmediatamente cada compilación que envía y puede ejecutar compilaciones independientes de forma simultánea, lo que significa que sus compilaciones no tienen que esperar en una cola.

P: ¿Cuánto cuesta CodeBuild?

Consulte la página de precios de AWS CodeBuild para obtener más detalles.

P: ¿Puedo usar CodeBuild para automatizar mi proceso de versiones?

Sí. CodeBuild está integrado con AWS CodePipeline. Puede añadir una acción de compilación y configurar un proceso de integración y entrega continuas que se ejecuta en la nube. Puede obtener información sobre cómo configurar y monitorear sus versiones desde la consola de CodePipeline aquí.

Uso de CodeBuild

P: ¿Qué es un proyecto de compilación?

Un proyecto de compilación se utiliza para definir cómo CodeBuild ejecutará una versión. Incluye información como, por ejemplo, dónde obtener el código fuente, qué entorno de compilación utilizar, los comandos de compilación que se ejecutan y dónde guardar la salida de compilación. Un entorno de compilación es la combinación del sistema operativo, el tiempo de ejecución de lenguaje de programación y las herramientas utilizadas por CodeBuild para ejecutar una versión.

P: ¿Cómo configuro un proyecto de compilación?

Un proyecto de compilación se puede configurar a través de la consola o la CLI de AWS. Debe especificar la ubicación del repositorio de origen, el entorno de tiempo de ejecución, los comandos de compilación, la función de IAM asumida por el contenedor y la clase informática necesaria para ejecutar la versión. También puede especificar comandos de compilación en un archivo buildspec.yml.

P: ¿Qué repositorios de origen admite CodeBuild?

CodeBuild puede conectarse a AWS CodeCommit, S3, GitHub, GitHub Enterprise y Bitbucket para extraer código fuente para las versiones.

P: ¿Qué marcos de programación admite CodeBuild?

CodeBuild proporciona entornos preconfigurados para versiones admitidas de Java, Ruby, Python, Go, Node.js, Android, .NET Core, PHP y Docker. Puede personalizar su propio entorno mediante la creación de una imagen de Docker y su carga en Amazon EC2 Container Registry o en el registro de concentradores de Docker. Posteriormente podrá hacer referencia a esta imagen personalizada en su proyecto de compilación.

P: ¿Qué tiempos de ejecución de compilación para Windows preconfigurados suministra CodeBuild?

CodeBuild suministra un entorno de compilación para Windows preconfigurado para .NET Core 2.0. Nos gustaría suministrar un entorno de compilación para los clientes de Microsoft .NET Framework, muchos de los cuales ya cuentan con una licencia para usar las bibliotecas patentadas de Microsoft. Sin embargo, en este caso Microsoft no ha deseado colaborar con nosotros para resolver las solicitudes de los clientes al respecto. Puede personalizar su entorno para admitir otros destinos de compilación, como .NET Framework, mediante la creación de una imagen de Docker y su carga en Amazon EC2 Container Registry o en el registro de concentradores de Docker. Posteriormente podrá hacer referencia a esta imagen personalizada en su proyecto de compilación.

P: ¿Qué sucede cuando se ejecuta una compilación?

CodeBuild creará un contenedor informático temporal de la clase definida en el proyecto de compilación, lo cargará con el entorno de tiempo de ejecución especificado, descargará el código fuente, ejecutará los comandos configurados en el proyecto, cargará el artefacto generado en un bucket de S3 y después destruirá el contenedor informático. Durante la compilación, CodeBuild transmitirá la salida de compilación a la consola de servicio y los logs de Amazon CloudWatch.

P: ¿Cómo puedo configurar mi primera compilación?

Inicie sesión en la consola de administración de AWS, cree un proyecto de compilación y luego ejecute una versión. Para ver una introducción a CodeBuild, consulte la sección Introducción, que incluye un tutorial paso a paso. También puede usar CodeBuild Local para probar y depurar su compilación localmente.

P: ¿Puedo usar CodeBuild con Jenkins?

Sí. El complemento de CodeBuild para Jenkins se puede usar para integrar CodeBuild en trabajos de Jenkins. Los trabajos de compilación se envían a CodeBuild, lo que elimina la necesidad de aprovisionar y administrar los nodos de empleados de Jenkins.

P: ¿Cómo puedo ver resultados de compilación anteriores?

Puede obtener acceso a sus resultados de compilación anteriores a través de la consola, CloudWatch o la API. Esta información incluye el resultado (éxito o error), la duración de compilación, la ubicación del artefacto de salida y la ubicación del log. Con el panel de CodeBuild, puede ver las métricas para entender el comportamiento de la compilación con el transcurso del tiempo. El panel muestra una cantidad de versiones intentadas, exitosas y erróneas, así como la duración de la compilación. También puede visitar la consola de CloudWatch para consultar las métricas de compilación con más detalle. Para obtener más información sobre el monitoreo de CodeBuild con CloudWatch, consulte nuestra documentación.

P: ¿Cómo puedo depurar un error de compilación anterior?

Puede depurar una compilación mediante la inspección de los logs detallados que se generen durante la ejecución de la compilación o puede usar CodeBuild Local para probar y depurar localmente las compilaciones.

P: ¿Por qué no se admite build.general1.small para los entornos de compilación de .NET Core para Windows?

El entorno de compilación de .NET Core para Windows necesita más memoria y capacidad de procesamiento del que se encuentra disponible en el tipo de instancia de computación build.general1.small debido al tamaño de las bibliotecas adicionales y a los contenedores base de Docker para Windows. Debido a esta limitación, no existe una capa gratuita para el entorno de compilación de .NET Core para Windows.

P: ¿Cómo recibo notificaciones o alertas para cualquier evento en AWS CodeBuild?

Puede crear notificaciones para los eventos que afectan sus proyectos de construcción. Las notificaciones aparecerán como notificaciones de Amazon SNS. Cada notificación incluirá un mensaje de estado, así como un enlace a los recursos cuyo evento generó esa notificación. Las notificaciones no tienen un costo adicional, pero puede que se le cobre por otros servicios de AWS que usen las notificaciones, como Amazon SNS. Para saber cómo puede empezar a usar las notificaciones, consulte la guía del usuario de notificaciones. Además, los clientes que usan AWS Chatbot pueden configurar las notificaciones para enviarlas a sus canales de Slack o las salas de chat de Amazon Chime. Para obtener más detalles, haga clic aquí.

Seguridad

P: ¿Puedo cifrar los artefactos de compilación almacenados por CodeBuild?

Sí. Puede especificar una clave almacenada en AWS Key Management Service (AWS KMS) para cifrar los artefactos.

P: ¿Cómo aísla CodeBuild las compilaciones que pertenecen a otros clientes?

CodeBuild ejecuta su versión en entornos nuevos aislados del resto de usuarios y descarta cada entorno de compilación tras finalizarlo. CodeBuild proporciona seguridad y separación en los niveles de infraestructura y ejecución.

P: ¿Puedo utilizar AWS Identity and Access Management (IAM) para administrar el acceso a CodeBuild?

Sí. Puede controlar el acceso a sus proyectos de compilación mediante los permisos de nivel de recursos en políticas de IAM.

Regiones

P: ¿Qué regiones admite CodeBuild?

Consulte Productos y servicios regionales para obtener más detalles.

Más información sobre los precios de AWS CodeBuild

Visite la página de precios
¿Listo para crear?
Comience con AWS CodeBuild
¿Tiene más preguntas?
Contacte con nosotros