-
Use the following link for reference
-
Start following from Step 2 (as we have Go app instead of nodeJS one)
./scripts/run_migrations.sh- Using docker:
docker-compose up
# run smee client
./scripts/run_smeeclient.sh- Non docker:
go run cmd/main.go
cd server
go run cmd/main.go
# run smee client
./scripts/run_smeeclient.shRun this smee client to forward github webhooks to development machine
When switching between local (non-Docker) and Docker-based development, update your environment variables accordingly:
| Service | Env Variable Name | Local (go run ...) |
Docker (docker-compose up) |
|---|---|---|---|
| PostgreSQL | DATABASE_URL |
postgres://postgres:password@localhost:5432/codelookout |
postgres://postgres:password@postgres:5432/codelookout |
| Redis | REDIS_ADDRESS |
localhost:6379 |
redis:6379 |
| GitHub App Key | GITHUB_APP_PRIVATE_KEY_PATH |
./githubapp.private-key.pem |
/app/githubapp.private-key.pem |
It contains sample data to be used during initial devlopment phase, without worrying about actually feeding data to any AI API.
ai-prompt.txt: Contains sample prompt to be fed to AIai-review.json: Sample review JSON generated by AI
Set the following environment variables to configure the service:
| Variable | Description |
|---|---|
PORT |
Port to run the HTTP server on (default: 8080) |
APP_ENV |
App environment (development, production, etc.) |
GITHUB_APP_ID |
GitHub App ID for authenticating GitHub API calls |
AI_PROVIDER |
AI provider name (e.g., openai) |
OPENAI_API_KEY |
API key for OpenAI or chosen LLM provider |
DATABASE_URL |
Postgres database connection URL |
REDIS_ADDRESS |
Redis address for Asynq task queue (e.g., localhost:6379) |
WORKER_CONCURRENCY |
Number of concurrent Asynq worker routines |
WEBHOOK_SECRET |
Secret for verifying GitHub webhook signatures |
GITHUB_APP_PRIVATE_KEY_PATH |
File path to the GitHub App's private key PEM |