GitHub

Out-of-the-box Source Code Repository Integration

Introduction

The LeanIX VSM GitHub Repository integration offers an easy way to auto-discover all your services from GitHub. Based on this VSM's mapping inbox allows you to easily sift through all the stale information from GitHub to decide, which services are really useful to your organization and hence should be part of your service catalog. This will help you to maintain a high standard of data quality when you subsequently map your services to their individual teams to create clear team ownership.

Integrate with GitHub to:

  • automatically discover your services to build your company-wide service catalog
  • map team ownership to have clear software governance in place

Setup

The GitHub repository connector scans your GitHub organization(s) to fetch your GitHub repositories and adjacent information, such as the programming languages used. The integration can be set up in full self-service via the Admin UI.

🚧

Support of GitHub versions

This connector currently only supports the GitHub Cloud-hosted versions (both free & enterprise)

Configuration in GitHub

To integrate GitHub with LeanIX VSM you need two inputs: 1) a Personal Access token 2) the GitHub organization(s). Here's how to get a hold of both:

1. Creating a Personal Access Token

  1. Please refer to the GitHub instructions
  2. Ensure you enable the following scopes:
    a) repo
    b) repo:status
    c) repo_deployment
    d) public_repo
    e) repo:invite
    f) security_events
    g) read:org
GitHub scopes to be setGitHub scopes to be set

GitHub scopes to be set

📘

Authorizing for Single Sign On

If your GitHub Organization requires Single-Sign-On, then you will also need to authorize the token for single-sign-on (see below) or follow the detailed instructions via GitHub documentation.

Authorizing for organizations with SSOAuthorizing for organizations with SSO

Authorizing for organizations with SSO

2. Fetching GitHub organization(s)

To see the names of your managed organizations, follow these instructions

Configuration in VSM

In your LeanIX VSM workspace, go to Administration > Integrations and follow the instructions to set up the GitHub integration.

GitHub Repository Integration setup in the Integration UIGitHub Repository Integration setup in the Integration UI

GitHub Repository Integration setup in the Integration UI

How to map your discovered repositories to VSM service catalog items?

After the integration successfully loaded all your repositories into the VSM mapping inbox you can now start to sift through and decide which of these repos are actually worthy to maintain in the service catalog. To do so:

  1. Head over to Technology > Mapping
  1. Click on Create and either map it to another - existing service (if these are duplicates) - or create a new VSM service that will end up in the service catalog.
  1. Congrats! you have now created your first VSM service - neat & tidy. Go ahead and explore what it has to offer and map it to your teams.

Imported Data

Below you find the list of items we fetch from GitHub:

  1. repository metadata (description, name etc.)
  2. programming languages used: we fetch the programming languages a repository consists of and also how many kiloBytes of code they represent in that repo.
  3. Archival Status

GitHub API Rate Limits

The integration uses GitHub's GraphQL API. In case an organization has an exceptionally large number of repositories, GitHub API throttles the requests. Though the integration attempts to automatically recover from rate limiting, the integration takes more time to finish.

👍

Scheduling

Schedule the integration once a day if your organisation has (approx.) >2000 repositories and/or >200 teams


Did this page help you?