Skip to main content

Check out Port for yourself ➜ 

GitHub (Ocean)

Port's GitHub integration allows you to model GitHub resources in your software catalog and ingest data into them.

Overview

The integration allows you to:

  • Map and organize GitHub resources and metadata into Port (see supported resources below).
  • Detect changes (create/update/delete) in real-time and keep your catalog up to date.
  • Manage Port entities using GitOps.
  • Sync multiple GitHub organizations with a single integration instance.

Supported resources

The resources that can be ingested from GitHub into Port are listed below. It is possible to reference any field that appears in the API responses linked below in the mapping configuration.

Setup

To install the integration, see the installation page.

Configuration

Port integrations use a YAML mapping block to ingest data from the third-party API into Port.

The mapping makes use of the JQ JSON processor to select, modify, concatenate, transform and perform other operations on existing fields and values from the integration API.

To ingest GitHub objects, you can use one of the following methods:

To manage your GitHub Ocean configuration using Port:

  1. Go to the data sources page of your portal.
  2. Under Exporters, click on the installed GitHub Ocean integration.
  3. A window will open containing the default YAML configuration of your integration.
  4. Here you can modify the configuration to suit your needs, by adding or removing entries.
  5. When finished, click Resync to apply any changes.

Using this method applies the configuration to all organizations and repositories that the integration has permissions to.

When configuring the integration using Port, the YAML configuration is global, allowing you to specify mappings for multiple Port blueprints.

Capabilities

For detailed information about data ingestion capabilities, see the capabilities page.

Examples

Refer to the examples page for practical configurations and their corresponding blueprint definitions.