This is a TinaCloud Enterprise feature
This guide provides step-by-step instructions for integrating a GitHub Enterprise (GHE) instance with TinaCloud. This integration supports both GitHub Enterprise Server (self-hosted) and GitHub Enterprise Cloud (GitHub-hosted), with the caveat that GitHub Enterprise Server must be accessible by TinaCloud.
A GitHub Enterprise instance (either GitHub Enterprise Server or GitHub Enterprise Cloud).
Administrative access to configure GitHub Apps in your GitHub organization.
If self-hosting GitHub Enterprise Server, ensure it is accessible by TinaCloud.
Go to your GitHub organization and navigate to Settings > Developer settings > GitHub Apps.
Click New GitHub App.
Provide the following details:
App name: Choose a name for your app (e.g., "TinaCloud Integration").
Description: Add a description for the app (e.g., "Integration for TinaCloud to manage content and pull requests").
Leave the following options unchecked:
Request user authorization (OAuth) during installation
Enable Device Flow
Under Post Installation, configure the following:
Check the box for Redirect On Update.
Webhook URL: No webhook URL is required for this integration.
Permissions: Configure the following permissions for the GitHub App:
Contents: Read + Write
Metadata: Read
Pull Requests: Read + Write
Webhooks: Read + Write
Under Where can this GitHub App be installed?, select Any account.
After creating the app, navigate to the General tab on the app's settings page.
Note the App ID and Client ID displayed on this page.
Generate a Client Secret by clicking Generate a new client secret.
Generate a Private Key by clicking Generate a private key. Save the .pem file securely.
Enter the following details:
Server Name: A name for your GitHub Enterprise instance (e.g., "My GitHub Enterprise").
Hostname: The URL of your GitHub Enterprise instance.
App ID: The App ID obtained from the GitHub App settings.
Client ID: The Client ID obtained from the GitHub App settings.
Client Secret: The Client Secret generated in the GitHub App settings.
Private Key: Upload the .pem file generated in the GitHub App settings.
Click the Verify button to validate the configuration. If the verification is successful, proceed to save the configuration.
Once the server is successfully configured, users will be able to select it when creating new projects in TinaCloud.
After configuring the GitHub App and GitHub Enterprise Server, return to TinaCloud.
Create a new project and select the configured GitHub Enterprise instance.
If the integration is successful, you will see a list of repositories available on the GitHub Enterprise instance.
GitHub Enterprise Server not accessible: Ensure your GitHub Enterprise Server is reachable by TinaCloud. Check firewall rules and network configurations.
Permissions issues: Verify that the GitHub App has the correct permissions as outlined above.
Configuration errors: Double-check the URLs, credentials, and settings entered during the GitHub App setup.
Verification failure: If the verification fails, ensure all credentials (App ID, Client ID, Client Secret, and Private Key) are entered correctly and match the GitHub App settings.
For additional assistance, contact TinaCloud support.