Skip to content

[FEAT]: Add support for installing GitHub Apps on all repositories in an organization #3460

Description

@jackivanov

Describe the need

Summary

Please add a new resource to support installing GitHub Apps on organizations with access to all repositories.

Use Case

My goal is to install a GitHub App on an organization and grant it access to all repositories (repository_selection = "all").

The existing github_app_installation_repositories resource does not provide a way to grant a GitHub App access to all repositories in an organization.

While it is possible to add repositories individually using the repository installation APIs, those APIs do not support an equivalent of repository_selection = "all". As a result, Terraform users must enumerate and manage every repository individually.

For organizations with thousands of repositories, this approach is not practical and does not accurately model the desired state of "install this app on all repositories."

GitHub provides a separate API that supports organization-wide installations with repository_selection = "all" within an enterprise, but this functionality is not currently represented by a Terraform resource.

Proposed Solution

Introduce a new resource that manages GitHub App installations and supports granting access to all repositories in an organization within an enterprise.

References

GitHub Installation Type

  • GitHub.com (Free, Pro, or Team)
  • GitHub Enterprise Server (on-premises)
  • GitHub Enterprise Cloud with Personal Accounts (github.com)
  • GitHub Enterprise Cloud with Managed Users/EMU (github.com)
  • GitHub Enterprise Cloud with Data Residency (*.ghe.com)
  • I don't know

Relevant log output

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: BlockedSome technical or requirement is blocking the issueType: FeatureNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions