Skip to main content

Where to start?

  1. Follow the Context Engine setup guide to complete the initial configuration.
  2. If you are using GitHub for version control, continue with this guide for the next steps.

GitHub App installation

Important Note:You must be a GitHub organization administrator to complete these steps.
1
Navigate to Your Organizations via the top-right menu on GitHub.Select your organization and go to Settings > Developer settings > GitHub Apps.
2
Click New GitHub App and fill in:
  1. App name: Qodo RAG Indexer
  2. Homepage URL: https://qodo.ai
  3. Webhook: Disabled Webhooks will be supported in future releases for continuous updates.
3
Permissions (Read-only):
  • Actions: Read-only
  • Checks: Read-only
  • Metadata: Read-only
  • Contents: Read-only
  • Discussions: Read-only
  • Issues: Read-only
  • Pull requests: Read-only
4
Select “Any account” for installation scope.
5
Click Create GitHub App.
6
Save the generated App ID.
7
Generate a private key and store it securely.
8
Click Install App, choose your organization, and select specific repositories (do not choose “All repositories”).
9
Save the Installation ID from the resulting URL (e.g., https://github.com/organizations/YOUR_ORG/settings/installations/2).

Configuration

Github on-prem: If you are using github on-prem you should specificy the api_base_url in the configuration for [github_app] section as mentioned below.Make sure that github is able to accept requests from the Kubernetes cluster. Firewall adjustments may be needed.
Add the following configuration:
[qodo_logger]
logging_format = "JSON"
log_level = "INFO"

[openai_api]
key = ""
org = ""

# RAG-indexer database
[postgresql]
host = ""
port = ""
username = ""
password = ""

[vectordb]
db_name = ''

#metadata-service database
[kubernetes]
DATABASE_USER = ""
DATABASE_PASSWORD = ""
DATABASE_NAME = ""
DATABASE_HOST = ""
DATABASE_PORT = ""

[github_app]
private_key="""\\
... private key goes here...
PRIVATE_KEY
"""
app_id = "1019460"
installation_id = "55739937"
api_base_url = "<https://api.github.com>"