# Dagster + Github

> Integrate with GitHub Apps and automate operations in repositories.

Source: https://dagster.io/integrations/dagster-github
Category: Other

## About this integration

This library provides an integration with [*GitHub Apps*](https://docs.github.com/en/developers/apps/getting-started-with-apps/about-apps) by providing a thin wrapper on the github v4 graphql API. This allows for automating operations within your github repositories and with the tighter permissions scopes that github apps allow for vs using a personal token.

## Installation

```bash
pip install dagster-github
```

## Example

```python
import dagster as dg
from dagster_github import GithubResource


@dg.asset
def github_asset(github: GithubResource):
    github.get_client().create_issue(
        repo_name="dagster",
        repo_owner="dagster-io",
        title="Dagster's first github issue",
        body="this open source thing seems like a pretty good idea",
    )


defs = dg.Definitions(
    assets=[github_asset],
    resources={
        "github": GithubResource(
            github_app_id=dg.EnvVar("GITHUB_APP_ID"),
            github_app_private_rsa_key=dg.EnvVar("GITHUB_PRIVATE_KEY"),
            github_installation_id=dg.EnvVar("GITHUB_INSTALLATION_ID"),
        )
    },
)
```

## About Github

**Github** provides a highly available git repo, access control, bug tracking, software feature requests, task management, continuous integration, and wikis for open source and commercial projects.
