Configurar un ejecutor de Buildkite mediante programación - AWS CodeBuild

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configurar un ejecutor de Buildkite mediante programación

Para configurar un proyecto de ejecutor de Buildkite mediante programación, deberá configurar los siguientes recursos:

Cómo crear un ejecutor de Buildkite mediante programación
  1. Cree un token de agente de Buildkite y guárdelo en texto sin formato en AWS Secrets Manager.

  2. Configura un CodeBuild proyecto con la configuración que prefieras. Deberá configurar los siguientes atributos adicionales:

    1. Un valor de entorno con nombre CODEBUILD_CONFIG_BUILDKITE_AGENT_TOKEN, tipo SECRETS_MANAGER y un valor igual al token de agente de Buildkite asociado al clúster de Buildkite.

    2. Tipo de código fuente igual a NO_SOURCE

    3. Permisos para acceder al secreto creado en el paso 1 en el rol de servicio del proyecto

    Por ejemplo, puede usar el siguiente comando para crear un proyecto de ejecutor de Buildkite válido a través de la CLI:

    aws codebuild create-project \ --name buildkite-runner-project \ --source "{\"type\": \"NO_SOURCE\",\"buildspec\":\"\"}" \ --environment "{\"image\":\"aws/codebuild/amazonlinux-x86_64-standard:5.0\",\"type\":\"LINUX_CONTAINER\",\"computeType\":\"BUILD_GENERAL1_MEDIUM\",\"environmentVariables\":[{\"name\":\"CODEBUILD_CONFIG_BUILDKITE_AGENT_TOKEN\",\"type\":\"SECRETS_MANAGER\",\"value\":\"<buildkite-secret-name>\"}]}" \ --artifacts "{\"type\": \"NO_ARTIFACTS\"}" \ --service-role <service-role>
  3. Cree un webhook de ejecutor de Buildkite en el proyecto creado en el paso 2. Deberá usar las siguientes opciones de configuración al crear el webhook:

    1. build-type debe ser igual RUNNER_BUILDKITE_BUILD

    2. Un filtro con un tipo EVENT y un patrón igual a WORKFLOW_JOB_QUEUED

    Por ejemplo, puede usar el siguiente comando para crear un proyecto de ejecutor de webhook válido a través de la CLI:

    aws codebuild create-webhook \ --project-name buildkite-runner-project \ --filter-groups "[[{\"type\":\"EVENT\",\"pattern\":\"WORKFLOW_JOB_QUEUED\"}]]" \ --build-type RUNNER_BUILDKITE_BUILD
  4. Guarde los valores de URL de carga útil y Secreto devueltos por la llamada create-webhook y use las credenciales para crear un webhook en la consola de Buildkite. Puedes consultar el paso 3: Crear un CodeBuild webhook en Buildkite Tutorial: Configurar un ejecutor CodeBuild de BuildKite alojado para obtener una guía sobre cómo configurar este recurso.