Keruta API is the backend component of the Keruta task execution system.
Keruta API is structured as a multi-module Gradle project:
core:domain- Domain models (Task, Agent, Repository, etc.)core:usecase- Business logic and use casesinfra:persistence- MongoDB repository implementationsinfra:security- Security configurationinfra:app- Kubernetes integration and job orchestrationapi- REST controllers and web layer
# Build the entire project
./gradlew build
# Run the Spring Boot application
./gradlew :api:bootRun# Run all tests
./gradlew test
# Run tests with detailed output
./gradlew test --continueThe application uses INFO level logging by default. The log configuration is defined in:
api/src/main/resources/application.propertiesinfra/app/src/main/resources/application.properties
To enable more detailed DEBUG logging, modify these files and change the log levels from INFO to DEBUG.
# Check code style (all modules)
./gradlew ktlintCheckAll
# Format code (all modules)
./gradlew ktlintFormatAll
# Clean build
./gradlew clean