> ## Documentation Index
> Fetch the complete documentation index at: https://docs.iru.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Jenkins

> Conecta Jenkins a Iru Compliance mediante HTTP Basic Auth con un nombre de usuario y un token de API para recopilar evidencia de configuración de trabajos, historial de compilaciones y plugins.

### Acerca de Jenkins

Iru llama a la API remota de Jenkins con autenticación **HTTP Basic**: **nombre de usuario** más un **token de API** como **contraseña** (preferible a una contraseña real). El asistente primero almacena **`jenkins_host`** (solo el nombre de host y una ruta de contexto opcional) y luego solicita las credenciales.

### Cómo funciona

```http theme={null}
Authorization: Basic base64(username:api_token)
```

| Detalle | Valor |
| - | - |
| **Categoría** | Herramientas para desarrolladores |
| **Autenticación** | Basic (usuario + token de API) |

Referencias oficiales: [Clientes con scripts](https://www.jenkins.io/doc/book/system-administration/authenticating-scripted-clients/), [Tokens de API](https://www.jenkins.io/blog/2018/07/02/new-api-token-system/), [API remota](https://www.jenkins.io/doc/book/using/remote-access-api/).

### Requisitos previos

* Jenkins accesible desde la **red de Iru** (firewall, VPN o lista de permitidos, según sea necesario).
* Un usuario con **Overall/Read** y acceso de **lectura** a nivel de trabajo para el alcance que auditas.
* Se recomienda encarecidamente **HTTPS** para el controlador.

### Conectar Jenkins a Iru

<Tabs>
  <Tab title="Jenkins">
    <Note>
      Completa esta pestaña antes de conectar la fuente en Compliance.
    </Note>

    <Steps>
      <Step title="Inicia sesión en Jenkins">
        Abre la URL de tu controlador de Jenkins e inicia sesión con un usuario que tenga al menos **Overall/Read** y el acceso de lectura a los trabajos que necesita tu alcance de cumplimiento.
      </Step>

      <Step title="Abre tu perfil de usuario">
        Selecciona tu **nombre de usuario** en la esquina superior derecha (o el enlace **People** y luego tu usuario), según el tema de Jenkins.
      </Step>

      <Step title="Abre Configure">
        Selecciona **Configurar** para tu cuenta de usuario para poder editar la configuración personal.
      </Step>

      <Step title="Abre la sección API Token">
        Desplázate hasta la sección **API Token** (o **API Token** / **Add new Token**, según la versión de Jenkins). Si no la ves, es posible que tu administrador restrinja la creación de tokens.
      </Step>

      <Step title="Crea un token nuevo">
        Elige **Add new Token**, introduce un nombre como **Iru Compliance** y, a continuación, selecciona **Generar** (o **Crear**). Copia el token **una sola vez** cuando Jenkins lo muestre.

        Puede aplicarse una **caducidad** opcional; Jenkins también muestra en la interfaz los tokens antiguos para que puedas rotarlos antes de que caduquen.
      </Step>
    </Steps>

    <Note>
      Continúa en la pestaña [**Iru Compliance**](#iru-compliance).
    </Note>
  </Tab>

  <Tab title="Iru Compliance">
    <Note>
      Primero completa la pestaña [**Jenkins**](#jenkins).
    </Note>

    <Steps>
      <Step title="Abre Sources">
        En Iru Compliance, en la barra de navegación izquierda, expande **Cumplimiento** y selecciona **Fuentes**.

        <Frame>
          <img src="https://mintcdn.com/iru/tI0HDLDwHj8r9Ile/assets/media/images/iru-navigation-compliance-sources.png?fit=max&auto=format&n=tI0HDLDwHj8r9Ile&q=85&s=87dcef15fc17d2fb9a6e53f454e41710" alt="Navegación izquierda: Compliance expandido, Sources seleccionado" width="410" height="1024" data-path="assets/media/images/iru-navigation-compliance-sources.png" />
        </Frame>
      </Step>

      <Step title="Activa Jenkins">
        Busca **Jenkins** (establece **Categoría** en **Developer tools** o usa **Buscar por nombre o descripción**). En esa tarjeta, activa el **interruptor**. Es posible que se abra una pestaña o ventana del navegador para el asistente del conector.
      </Step>

      <Step title="Introduce el host de Jenkins">
        Introduce **`jenkins_host`** como **`jenkins.example.com`** o **`jenkins.example.com/jenkins`** (**sin** `https://`). Confirma las variables del servidor.
      </Step>

      <Step title="Introduce las credenciales de Jenkins">
        Introduce el **nombre de usuario** y pega el **token de API** en el campo de contraseña.
      </Step>

      <Step title="Finaliza la conexión">
        Selecciona **Enviar credenciales**. Cuando la conexión se realiza correctamente, el asistente muestra **Conexión configurada**.
      </Step>

      <Step title="Confirma que la fuente está activa">
        Cierra la pestaña del navegador **Iru está solicitando acceso a servicios externos**, luego vuelve a **Cumplimiento** → **Fuentes** y confirma que la tarjeta de **Jenkins** está **Activo**.
      </Step>
    </Steps>
  </Tab>
</Tabs>

### Solución de problemas

<AccordionGroup>
  <Accordion title="No se abre nada al activar la fuente">
    Revisa la configuración del **bloqueador de ventanas emergentes** para el sitio de Iru e inténtalo de nuevo.
  </Accordion>

  <Accordion title="Error en las variables del servidor">
    Desactiva y vuelve a activar la fuente para iniciar una nueva sesión del asistente.
  </Accordion>

  <Accordion title="401 / 403">
    Corrige el usuario o el token; el usuario necesita permisos de **lectura** en los trabajos de destino.
  </Accordion>

  <Accordion title="Inaccesible">
    Revisa el enrutamiento, TLS, la VPN o la lista de permitidos para el tráfico saliente de Iru.
  </Accordion>

  <Accordion title="Cadena de host incorrecta">
    Incluye la ruta de contexto si Jenkins no está en la raíz del dominio.
  </Accordion>
</AccordionGroup>

### Consideraciones

<CardGroup cols={2}>
  <Card title="Usa un usuario de servicio de solo lectura limitado a las carpetas…" icon="circle-info">
    Usa un usuario de servicio de **solo lectura** limitado a las carpetas o vistas que necesites.
  </Card>
</CardGroup>

### Artículos relacionados

<CardGroup cols={2}>
  <Card title="Gestión de fuentes" icon="plug" href="/es/compliance/sources-management">
    Explora y gestiona todas las fuentes de Compliance.
  </Card>

  <Card title="Introducción a Compliance" icon="rocket" href="/es/compliance/getting-started-with-compliance">
    Marcos, acciones y **Artefactos**.
  </Card>

  <Card title="Descripción general de Iru" icon="layer-group" href="/es/iru/platform-overview/iru-overview">
    Cómo encajan Endpoint, Compliance e Identity.
  </Card>

  <Card title="Gestión de artefactos" icon="folder-open" href="/es/compliance/artifacts-management">
    Sube, revisa y organiza la evidencia de fuentes y acciones.
  </Card>
</CardGroup>
