> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/internal-developer-portal/3.0/use-idp/plugins/available-plugins/buildkite.md).

# Buildkite

## Overview <a href="#overview" id="overview"></a>

The Buildkite plugin enables developers to view and interact with their CI/CD pipeline runs directly within the Harness Internal Developer Portal (IDP). It surfaces real-time build statuses, allows rebuilding builds, and helps teams monitor their pipelines on a per-entity basis.

## Plugin metadata <a href="#plugin-metadata" id="plugin-metadata"></a>

| Field          | Value                                                                                                                |
| -------------- | -------------------------------------------------------------------------------------------------------------------- |
| **Created by** | Backstage Community                                                                                                  |
| **Category**   | Developer Experience                                                                                                 |
| **Source**     | [GitHub](https://github.com/RoadieHQ/roadie-backstage-plugins/tree/main/plugins/frontend/backstage-plugin-buildkite) |
| **Type**       | Open-source plugin                                                                                                   |

## Configuration <a href="#configuration" id="configuration"></a>

### Application configuration YAML <a href="#application-configuration-yaml" id="application-configuration-yaml"></a>

```yaml
proxy:
  endpoints:
    '/buildkite/api':
      target: https://api.buildkite.com/v2
      headers:
        Authorization: Bearer ${BUILDKITE_API_TOKEN}
      pathRewrite:
        '^/api/proxy/buildkite/api' : ''
```

### Secrets <a href="#secrets" id="secrets"></a>

To authorize requests to the Buildkite API, the plugin requires an access token (`BUILDKITE_TOKEN`)

The token should have `read_builds` and `read_pipelines` permissions.

## Layout <a href="#layout" id="layout"></a>

This plugin renders as a **tab under the CI/CD section** in the entity page.

```yaml
- name: EntitySwitch
  path: /ci-cd
  title: CI/CD
  contents:
    - component: EntitySwitch
      specs:
        cases:
          - if: isBuildkiteAvailable
            content:
              component: EntityBuildkiteContent
```

## Annotations <a href="#annotations" id="annotations"></a>

To connect a component to a Buildkite pipeline, add the following annotation in your `component-info.yaml`:

```yaml
metadata:
  annotations:
    buildkite.com/project-slug: your-org/your-pipeline
```
