Java Quarkus REST API that manages SAST-AI-Workflow security scanning Tekton pipelines.
GET /api/v1/health
- Application health status
POST /api/v1/jobs/simple
- Create a new security scanning jobGET /api/v1/jobs
- List all jobs (with filtering & pagination)GET /api/v1/jobs/{id}
- Get specific job detailsPOST /api/v1/jobs/{id}:cancel
- Cancel a running job
POST /api/v1/job-batches
- Submit batch processing jobsGET /api/v1/job-batches
- List job batchesGET /api/v1/job-batches/{id}
- Get batch details
GET /api/v1/packages
- Package vulnerability summaries
-
Clone the repository
git clone https://github.com/RHEcosystemAppEng/sast-ai-orchestrator.git cd sast-ai-orchestrator
-
Setup PostgreSQL
# Using Docker docker run --name postgres \ -e POSTGRES_DB=sast-ai \ -e POSTGRES_USER=quarkus \ -e POSTGRES_PASSWORD=quarkus \ -p 5432:5432 \ -d postgres:13
-
Run the application
./mvnw quarkus:dev
-
Access the API
http://localhost:8080/api/v1/health
# JVM Mode (Fast startup)
docker build -f src/main/docker/Dockerfile.jvm -t sast-ai-orchestrator:jvm .
- Helm Chart: See
deploy/sast-ai-chart/
for Helm deployment - ArgoCD: See
deploy/argocd/
for GitOps deployment - Documentation: Refer to
deploy/README.md
for detailed instructions
Key configuration options in application.properties
:
# Database
quarkus.datasource.jdbc.url=jdbc:postgresql://localhost:5432/sast-ai
quarkus.datasource.username=quarkus
quarkus.datasource.password=quarkus
# Workflow Integration
sast.ai.workflow.namespace=sast-ai
quarkus.kubernetes-client.trust-certs=false
Built with ❤️ by the Red Hat Ecosystem App Engineering Team