Use Github As a Content Source

SearchUnify can crawl, index, and search your GitHub repositories. This article gets you started.

PERMISSIONS.

SearchUnify ignores user permissions during searches. All indexed files can be search by all users.

PREREQUISITES

You should have access to the repositories to be crawled.

Establish a Connection

  1. Navigate to Content Sources and click Add New Content Sources.

  1. Find GitHub and click Add.

  2. Under the Authentication tab, enter the required details:

    • Give your content source a Name.

    • Pick either No Authentication or OAuth from Authentication Type dropdown.

      Note. Only the issues from public repositories are crawled by default. If you want to crawl private repositories, please contact SearchUnify support.
    • Select the comments language in Language.

    • Select the type of your GitHub account in Repository Type. Individual developers can select User but the correct way forward for companies is Organization.

    • Label your repository in Organization/User Name.

  3. After entering the aforementioned details, click Connect.

Click Next if a window pops up with the "Connection Successful" message. Once the connection has been set up successfully, you will be prompted to the next action - Set Frequency.

Set Up Crawl Frequency

The first crawl is always manual and is performed after configuring the content source. In Choose A Date, select a date to start crawling; the data created after the selected date will be crawled. For now, keep the frequency to its default value Never and click Set and move to the next section.

Select Fields and Repositories for Indexing

SearchUnify indexes one GitHub content type, issues. An admin can decide which issues fields are to be indexed. Under the Rules tab, you will land on By Content Type subtab.

  1. Click to view the pre-configured properties of issues.

  2. NOTE. You can add or delete the content fields. Although, it is not recommended for users other than Admins to make any changes in the fields.
  3. Navigate to By Spaces, use the index to find and select the repositories you want to crawl. If you don't specify repositories, then all issues of your GitHub repositories are indexed.

    Note. Both open and closed issues are crawled in SearchUnify.

  4. Save your Settings.

You have successfully added GitHub as a content source in SearchUnify. Perform a manual crawl to start indexing data in SearchUnify.

Related

Difference between Manual and Frequency Crawls

After the First Crawl

Return to the Content Sources screen and click in Actions. The number of indexed documents is updated after the crawl is complete. You can view crawl progress in in Actions. Documentation on crawl progress is in View Crawl Logs.

Once the first crawl is complete, click in Actions open the content source for editing, and set a crawl frequency.

  1. In Choose a Date, click to fire up a calendar and select a date. Only the data after the selected date is indexed.

  2. Use the Frequency dropdown to select how often SearchUnify should index the data. For illustration, the frequency has been set to Weekly and Tuesday has been chosen as the crawling day. Whenever the Frequency is other than Never, a third dropdown appears where you can specify the interval. Also, whenever Frequency is set to Hourly, then manual crawls are disabled.

  3. Click Set to save crawl frequency settings. On clicking Set, you are taken to the Rules tab.

Data Deletion and SU Index

A method to update the index in real time is to enable event subscriptions, which supplement existing crawls and synchronize data between your GitHub instance and SearchUnify in real time. Check out Enable Event Subscription in GitHub.