CI Documentation

A FastAPI application that listens to webhook events, triggers Python syntax checks, runs tests, and sends notifications.

API Endpoints

1. Webhook Listener

POST /webhook

This endpoint listens for GitHub push events and triggers the following actions:

Returns: A JSON response with syntax check and test results.

2. Compilation Process

The compilation.py module handles the compilation process for a given branch:

Returns: Compilation logs and results.

3. Test Execution

The testing.py module runs tests using pytest:

Returns: A report of test results.

4. Send Email Notification

POST /send-notification

Sends an email notification after a CI build event with details such as author, branch, commit, and build status.

Parameters:

Returns: Confirmation of email sent or an error message.