Connecting Amazon Q Business to GitHub (Cloud) using the console - Amazon Q Business

Connecting Amazon Q Business to GitHub (Cloud) using the console

The following procedure outlines how to connect Amazon Q Business to GitHub (Cloud) using the AWS Management Console.

Connecting Amazon Q to GitHub (Cloud)
  1. Sign in to the AWS Management Console and open the Amazon Q Business console.

  2. From the left navigation menu, choose Data sources.

  3. From the Data sources page, choose Add data source.

  4. Then, on the Add data sources page, from Data sources, add the GitHub data source to your Amazon Q application.

  5. Then, on the GitHub (Cloud) page, enter the following information:

  6. Name and description, do the following:

    • For Data source name – Name your data source for easy tracking.

      Note: You can include hyphens (-) but not spaces. Maximum of 1,000 alphanumeric characters.

    • Description – optional – Add an optional description for your data source. This text is viewed only by Amazon Q Business administrators and can be edited later.

  7. Source – Choose your GitHub (Cloud) source details.

    1. GitHub (Cloud) source – Choose GitHub (Cloud) Enterprise Cloud.

    2. GitHub (Cloud) host URL – Enter the GitHub (Cloud) host name with the protocol (http:// or https://). For example: https://api.github.com.

    3. GitHub (Cloud) organization name – You can find your organization name when you log in to GitHub (Cloud) desktop and go to Your organizations under your profile picture dropdown.

  8. Authorization – Amazon Q Business crawls ACL information by default to ensure responses are generated only from documents your end users have access to. If supported for your connector, you can manage ACLs by selecting Enable ACLs to enable ACLs or Disable ACLs to disable them. To manage ACLs, you need specific IAM permissions. See Grant permission to create data sources with ACLs disabled for more details. See Authorization for more details.

  9. Authentication – Enter the following information for your AWS Secrets Manager secret.

    1. Secret name – A name for your secret.

    2. GitHub (Cloud) token – Enter the access token you created in GitHub (Cloud).

  10. Configure VPC and security group – optional – Choose whether you want to use a VPC. If you do, enter the following information:

    1. Subnets – Select up to 6 repository subnets that define the subnets and IP ranges the repository instance uses in the selected VPC.

    2. VPC security groups – Choose up to 10 security groups that allow access to your data source. Ensure that the security group allows incoming traffic from Amazon EC2 instances and devices outside your VPC. For databases, security group instances are required.

    For more information, see VPC.

  11. IAM role – Choose an existing IAM role or create an IAM role to access your repository credentials and index content.

    Note

    Creating a new service IAM role is recommended.

    For more information, see IAM role.

  12. In Sync scope, enter the following information:

    1. Select repositories to crawl—Select between crawling All repositories or Select repositories.

      If you choose Select repositories, add names for the repositories in Name of repository and, optionally, the name of any specific branches in Name of branch.

    2. For Maximum file size – Specify the file size limit in MBs that Amazon Q will crawl. Amazon Q will crawl only the files within the size limit you define. The default file size is 50MB. The maximum file size should be greater than 0MB and less than or equal to 50MB.

    3. Additional configuration – optional – Configure the following settings:

      • Content types – Select the file types you want to include.

      • Regex patterns – Regular expression patterns to include or exclude certain files. You can add up to 100 patterns.

  13. In Sync mode, choose how you want to update your index when your data source content changes. When you sync your data source with Amazon Q for the first time, all content is synced by default.

    • Full sync – Sync all content regardless of the previous sync status.

    • New or modified content sync – Sync only new and modified documents.

    • New, modified, or deleted content sync – Sync only new, modified, and deleted documents.

    For more details, see Sync mode.

  14. In Sync run schedule, for Frequency – Choose how often Amazon Q will sync with your data source. For more details, see Sync run schedule.

  15. Tags - optional – Add tags to search and filter your resources or track your AWS costs. See Tags for more details.

  16. Field mappings – A list of data source document attributes to map to your index fields. Add the fields from the Data source details page after you finish adding your data source. You can choose from two types of fields:

    1. Default – Automatically created by Amazon Q on your behalf based on common fields in your data source. You can't edit these.

    2. Custom – Automatically created by Amazon Q on your behalf based on common fields in your data source. You can edit these. You can also create and add new custom fields.

      Note

      Support for adding custom fields varies by connector. You won't see the Add field option if your connector doesn't support adding custom fields.

    For more information, see Field mappings.

  17. To finish connecting your data source to Amazon Q, select Add data source.

    You are taken to the Data source details, where you can view your data source configuration details.

  18. In Data source details, choose Sync now to allow Amazon Q to begin syncing (crawling and ingesting) data from your data source. When the sync job finishes, your data source is ready to use.

    Note

    You can choose to view Amazon CloudWatch logs for your data source sync job by selecting View CloudWatch logs. If you get a Resource not found exception when you try to view your CloudWatch logs for a data source sync job in progress, it can be because the CloudWatch logs are not available yet. Wait for some time and check again.

    You can also view a document-level report in CloudWatch for your data source sync job by selecting View Report. This report will have details about the progress and status of each document in the sync job. It shows if a document succeeded, failed, or was skipped during the crawl, sync, and index stages. You'll also find any error messages related to failed or skipped documents. If the report doesn't show results for an in-progress sync job, the logs may not be available yet. Check back later as data is emitted to the report as events occur during the sync process.

    To learn more about analyzing data using Amazon CloudWatch, see Analyzing log data with CloudWatch Logs Insights in the Amazon CloudWatch User Guide.