A Quarkus-based Kubernetes operator for managing pod failure analysis in the Podmortem operator.
This operator manages the lifecycle of Podmortem Custom Resources and orchestrates pod failure analysis workflows. It provides real-time pod monitoring, pattern library synchronization, and coordinates between log parsing and AI analysis services.
The operator manages three main Custom Resource types:
Configures pod failure monitoring for specific workloads:
apiVersion: podmortem.redhat.com/v1
kind: Podmortem
metadata:
  name: quarkus-app-monitor
spec:
  podSelector:
    matchLabels:
      app: quarkus-app
  aiAnalysisEnabled: true
  aiProviderRef:
    name: openai-provider
    namespace: podmortem-systemManages synchronization of failure pattern definitions:
apiVersion: podmortem.redhat.com/v1
kind: PatternLibrary
metadata:
  name: quarkus-patterns
spec:
  repositories:
    - name: core-patterns
      url: https://github.com/redhat/podmortem-patterns.git
      branch: main
  refreshInterval: "1h"Configures AI services for explanation generation:
apiVersion: podmortem.redhat.com/v1
kind: AIProvider
metadata:
  name: openai-provider
spec:
  providerId: openai
  apiUrl: https://api.openai.com/v1
  modelId: gpt-3.5-turbo
  authenticationRef:
    secretName: openai-credentials
    secretKey: api-keyKey application properties:
# REST Client configurations
quarkus.rest-client.log-parser.url=http://log-parser:8080
quarkus.rest-client.ai-interface.url=http://ai-interface:8080
# Kubernetes client configuration
quarkus.kubernetes-client.trust-certs=true
quarkus.kubernetes-client.namespace=podmortem-systemcommon-lib- Shared models and Kubernetes CRD definitions- External Services:
- Log Parser service for pattern analysis
 - AI Interface service for explanation generation
 
 
./mvnw packageFor native compilation:
./mvnw package -Dnative