Back to source plugin

Export from GitHub to Snowflake

CloudQuery is an open-source data integration platform that allows you to export data from any source to any destination.

The CloudQuery GitHub plugin allows you to sync data from GitHub to any destination, including Snowflake. It takes only minutes to get started.

GitHub
github
Official

GitHub

The CloudQuery GitHub plugin extracts your GitHub API and loads it into any supported CloudQuery destination

Publisher

cloudquery

Repositorygithub.com
Latest version

v8.0.1

Type

Source

Platforms
Date Published

Feb 23, 2024

Price

Free

Snowflake
snowflake
Official

Snowflake

This plugin is in preview.

The snowflake plugin helps you sync data to your Snowflake data warehouse

Publisher

cloudquery

Repositorygithub.com
Latest version

v3.4.2

Type

Destination

Platforms
Date Published

Feb 20, 2024

Price

Free

MacOS Setup

Step 1. Install CloudQuery

brew install cloudquery/tap/cloudquery

Step 2. Configure GitHub source plugin

You can find more information about the configuration in the plugin documentation

kind: source
spec:
  # Source spec section
  name: github
  path: cloudquery/github
  registry: cloudquery
  version: "v8.0.1"
  tables: ["github_issues"]
  destinations: ["snowflake"]
  spec:
    access_token: <YOUR_ACCESS_TOKEN_HERE> # Personal Access Token, required if not using App Authentication.
    ## App Authentication (one per org):
    # app_auth:
    # - org: cloudquery
    #   private_key: <PRIVATE_KEY> # Private key as a string
    #   private_key_path: <PATH_TO_PRIVATE_KEY> # Path to private key file
    #   app_id: <YOUR_APP_ID> # App ID, required for App Authentication.
    #   installation_id: <ORG_INSTALLATION_ID> # Installation ID for this org
    orgs: [] # Optional. List of organizations to sync from
    repos: ["cloudquery/cloudquery"] # Optional. List of repositories to sync from
    ## GitHub Enterprise
    # In order to enable GHE you have to provide two urls, the base url of the server and the upload url.
    # Quote from GitHub's client:
    #   If the base URL does not have the suffix "/api/v3/", it will be added automatically. If the upload URL does not have the suffix "/api/uploads", it will be added automatically.
    #   Another important thing is that by default, the GitHub Enterprise URL format should be http(s)://[hostname]/api/v3/ or you will always receive the 406 status code. The upload URL format should be http(s)://[hostname]/api/uploads/"
    # If you are not configuring against an enterprise server please omit the enterprise stanza bellow
    enterprise:
        base_url: "http(s)://[your-ghe-hostname]/api/v3/"
        upload_url: "http(s)://[your-ghe-hostname]/api/uploads/"
    # Optional parameters
    # concurrency: 1000 0# Optional. Number of concurrent requests to GitHub API. Default is 10000.
    # discovery_concurrency: 1 # Optional. Number of concurrent requests to GitHub API during discovery phase. Default 1.
    # skip_archived_repos: false # Optional. Skip archived repositories. Default false.

Step 3. Configure Snowflake destination plugin

You can find more information about the configuration in the plugin documentation

kind: destination
spec:
  name: snowflake
  path: cloudquery/snowflake
  registry: cloudquery
  version: "v3.4.2"
  write_mode: "append"
  spec:
    connection_string: "${SNOWFLAKE_CONNECTION_STRING}"
    # Optional parameters
    # migrate_concurrency: 1
    # batch_size: 1000 # 1K entries
    # batch_size_bytes: 4194304 # 4 MiB

Step 4. Run Sync

cloudquery sync github.yml snowflake.yml
Subscribe to product updates

Be the first to know about new features.