diff --git a/pom.xml b/pom.xml
index d17ab4b..940b16f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,15 +16,20 @@
true
3.5.3
- 1.0.0-main-SNAPSHOT
+ 1.0-f094e1c-SNAPSHOT
- github
- GitHub podmortem Apache Maven Packages
+ github-common
+ Common Library
https://maven.pkg.github.com/podmortem/common-lib
+
+ github-ai-provider
+ AI Provider Library
+ https://maven.pkg.github.com/podmortem/ai-provider-lib
+
diff --git a/src/main/java/com/redhat/podmortem/model/cr/config/PodFailureData.java b/src/main/java/com/redhat/podmortem/model/cr/config/PodFailureData.java
deleted file mode 100644
index 94a383d..0000000
--- a/src/main/java/com/redhat/podmortem/model/cr/config/PodFailureData.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.redhat.podmortem.model.cr.config;
-
-import io.fabric8.kubernetes.api.model.Pod;
-import io.fabric8.kubernetes.api.model.events.v1.Event;
-import java.util.List;
-
-public class PodFailureData {
- private Pod pod;
- private String logs;
- private List events;
-
- public PodFailureData(Pod pod, String logs, List events) {
- this.pod = pod;
- this.logs = logs;
- this.events = events;
- }
-
- // Getters and setters
- public Pod getPod() {
- return pod;
- }
-
- public void setPod(Pod pod) {
- this.pod = pod;
- }
-
- public String getLogs() {
- return logs;
- }
-
- public void setLogs(String logs) {
- this.logs = logs;
- }
-
- public List getEvents() {
- return events;
- }
-
- public void setEvents(List events) {
- this.events = events;
- }
-}
diff --git a/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfig.java b/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfig.java
deleted file mode 100644
index c69806a..0000000
--- a/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfig.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.redhat.podmortem.model.cr.config;
-
-import io.fabric8.kubernetes.api.model.Namespaced;
-import io.fabric8.kubernetes.client.CustomResource;
-import io.fabric8.kubernetes.model.annotation.Group;
-import io.fabric8.kubernetes.model.annotation.Version;
-
-@Group("podmortem.redhat.com")
-@Version("v1alpha1")
-public class PodmortemConfig extends CustomResource
- implements Namespaced {}
diff --git a/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfigSpec.java b/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfigSpec.java
deleted file mode 100644
index 2d9b2ae..0000000
--- a/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfigSpec.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.redhat.podmortem.model.cr.config;
-
-import io.fabric8.kubernetes.api.model.LabelSelector;
-
-public class PodmortemConfigSpec {
-
- private LabelSelector podSelector;
-
- public LabelSelector getPodSelector() {
- return podSelector;
- }
-
- public void setPodSelector(LabelSelector podSelector) {
- this.podSelector = podSelector;
- }
-}
diff --git a/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfigStatus.java b/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfigStatus.java
deleted file mode 100644
index 3ba87d2..0000000
--- a/src/main/java/com/redhat/podmortem/model/cr/config/PodmortemConfigStatus.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package com.redhat.podmortem.model.cr.config;
-
-public class PodmortemConfigStatus {
- // You can add status fields here as your operator evolves.
-}
diff --git a/src/main/java/com/redhat/podmortem/reconcile/config/PodmortemConfigReconciler.java b/src/main/java/com/redhat/podmortem/operator/reconcile/PodmortemReconciler.java
similarity index 90%
rename from src/main/java/com/redhat/podmortem/reconcile/config/PodmortemConfigReconciler.java
rename to src/main/java/com/redhat/podmortem/operator/reconcile/PodmortemReconciler.java
index 875863a..558835d 100644
--- a/src/main/java/com/redhat/podmortem/reconcile/config/PodmortemConfigReconciler.java
+++ b/src/main/java/com/redhat/podmortem/operator/reconcile/PodmortemReconciler.java
@@ -1,10 +1,10 @@
-package com.redhat.podmortem.reconcile.config;
+package com.redhat.podmortem.operator.reconcile;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
-import com.redhat.podmortem.model.cr.config.PodFailureData;
-import com.redhat.podmortem.model.cr.config.PodmortemConfig;
+import com.redhat.podmortem.common.model.kube.podmortem.PodFailureData;
+import com.redhat.podmortem.common.model.kube.podmortem.Podmortem;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.events.v1.Event;
import io.fabric8.kubernetes.client.KubernetesClient;
@@ -17,21 +17,20 @@
import org.slf4j.LoggerFactory;
@ControllerConfiguration
-public class PodmortemConfigReconciler implements Reconciler {
+public class PodmortemReconciler implements Reconciler {
- private static final Logger log = LoggerFactory.getLogger(PodmortemConfigReconciler.class);
+ private static final Logger log = LoggerFactory.getLogger(PodmortemReconciler.class);
private final KubernetesClient client;
private final ObjectMapper objectMapper;
- public PodmortemConfigReconciler(KubernetesClient client) {
+ public PodmortemReconciler(KubernetesClient client) {
this.client = client;
this.objectMapper = new ObjectMapper();
this.objectMapper.enable(SerializationFeature.INDENT_OUTPUT);
}
@Override
- public UpdateControl reconcile(
- PodmortemConfig resource, Context context) {
+ public UpdateControl reconcile(Podmortem resource, Context context) {
log.info("Reconciling PodmortemConfig: {}", resource.getMetadata().getName());
List pods =
diff --git a/src/main/kubernetes/log-parser-manifest.yaml b/src/main/kubernetes/log-parser-manifest.yaml
new file mode 100644
index 0000000..b029049
--- /dev/null
+++ b/src/main/kubernetes/log-parser-manifest.yaml
@@ -0,0 +1,33 @@
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: podmortem-log-parser-service
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: podmortem-log-parser-service
+ template:
+ metadata:
+ labels:
+ app: podmortem-log-parser-service
+ spec:
+ containers:
+ - name: log-parser
+ image: ghcr.io/podmortem/podmortem-log-parser:latest
+ ports:
+ - containerPort: 8080
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: podmortem-log-parser-service
+spec:
+ selector:
+ app: podmortem-log-parser-service
+ ports:
+ - protocol: TCP
+ port: 8080
+ targetPort: 8080
+ type: ClusterIP
\ No newline at end of file
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 23fa3d2..b9c83b5 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -1,4 +1,8 @@
+## Quarkus Properties ##
quarkus.application.name=podmortem-operator
+
+## Kube Properties ##
+quarkus.kubernetes.additional-manifests=src/main/kubernetes/
quarkus.kubernetes-client.namespace=default
quarkus.kubernetes.deployment-target=openshift
quarkus.container-image.build=true
diff --git a/src/main/resources/settings.xml b/src/main/resources/settings.xml
index d61de62..2d987cd 100644
--- a/src/main/resources/settings.xml
+++ b/src/main/resources/settings.xml
@@ -4,9 +4,14 @@
https://maven.apache.org/xsd/settings-1.0.0.xsd">
- github
+ github-common
+ ${env.GITHUB_USER}
+ ${env.GITHUB_TOKEN}
+
+
+ github-ai-provider
${env.GITHUB_USER}
${env.GITHUB_TOKEN}
-
\ No newline at end of file
+