Skip to main content

Harness Infrastructure as Code Management

Plugin details
Created byHarness
CategoryInfrastructure
SourceGitHub
TypeOpen-source plugin

Configuration

Application configuration YAML

No action required

This plugin requires a backend proxy configuration to make calls to Harness APIs with authentication. The following configuration is set by default and you do not need to change anything:

proxy:
"/harness/prod":
target: "https://app.harness.io/"
pathRewrite:
"/api/proxy/harness/prod/?": "/"
allowedHeaders:
- authorization

Secrets

No secrets are required for this plugin because both IDP and IACM are part of the Harness software delivery platform.

Delegate proxy

No action required

This plugin does not require a delegate proxy to be set up.

Layout

No action required

This plugin exports a UI tab that you can use as a new IACM tab for workspaces or for any other layout page. The following configuration is set by default in Layout under Admin for Service and you do not need to change anything:

- name: iacm
path: /iacm
title: IACM
contents:
- component: EntityIacmContent

Also, you could add a conditional like isHarnessIacmAvailable which is met when harness.io/workspace-url annotation is present in the software component's catalog-info.yaml definition file.

- name: iacm
path: /iacm
title: IACM
contents:
- component: EntitySwitch
specs:
cases:
- if: isHarnessIacmAvailable
content:
component: EntityIacmContent

Annotations

To configure the plugin for a service in the software catalog, set one or both of the following annotations in its catalog-info.yaml definition file, you can fetch the workspaces URL from the workspaces page. Note that the URL should be in the format of https://app.harness.io/ng/account/<ACCOUNT_ID>/module/iacm/orgs/<ORGANIZATION_ID/projects/<PROJECT_ID/workspaces/<WORKSPACE_ID/resources

apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
# ...
annotations:
harness.io/workspace-url: |
labelA: <harness_iacm_workspace_url>
labelB: <harness_iacm_workspace_url>
spec:
type: service
# ...

Support

The plugin is owned by Harness and managed in the Harness plugins repository as an open-source project. Create a GitHub issue to report bugs or suggest new features for the plugin.