Skip to content

Team Sync

Definition of an identity provider (IdP) group connected to a Team via team synchronization, the following properties are supported:

Key Value Description Note
id string The id of the IdP group identifies the group
name string The name of the IdP group required by the GitHub API
description string The description of the IdP group

The available IdP groups of an organization, including their id, name and description, can be listed with the GitHub REST API.

Team synchronization requires an organization on GitHub Enterprise Cloud with team synchronization enabled, it is not available for organizations that are part of an enterprise using Enterprise Managed Users. Up to five IdP groups can be connected to a team.

Like other resources managed by otterdog, a group that is removed from team_sync is only disconnected from the team when applying the configuration with deletions enabled (--delete-resources). As long as a group stays connected, the members of the team are provisioned by the IdP and members is not applied.

Jsonnet Function

orgs.newTeamSync('<id>') {
  <key>: <value>
}

Validation rules

  • an empty id or name triggers an error

Example usage

orgs.newOrg('my-project', 'my-org') {
  teams+: [
    orgs.newTeam('admins') {
      description: "The project admins",
      privacy: "secret",
      team_sync: [
        orgs.newTeamSync('5d4b0a8e-2c19-4b5f-8d6c-1f2e3a4b5c6d') {
          name: "git-admins",
          description: "Admin access via IdP",
        },
      ],
    },
  ],
}

Open in the Playground