🎨 Sort imports

This commit is contained in:
Andreas Dinauer 2025-12-20 18:38:36 +01:00
parent 898e7146f3
commit 16a5627b39
63 changed files with 472 additions and 409 deletions

22
pom.xml
View File

@ -163,6 +163,28 @@
</systemPropertyVariables>
</configuration>
</plugin>
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>impsort-maven-plugin</artifactId>
<version>1.12.0</version>
<configuration>
<groups>java.,jakarta.,org.,com.,io.,*</groups>
<staticGroups>java.,jakarta.,org.,com.,io.,*</staticGroups>
<removeUnused>true</removeUnused>
<lineEnding>LF</lineEnding>
<includes>
<include>**/*.java</include>
</includes>
</configuration>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

View File

@ -1,13 +1,7 @@
package dev.dinauer;
import dev.dinauer.service.IngressService;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.networking.v1.Ingress;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import jakarta.annotation.PostConstruct;
import java.util.List;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
@ -15,7 +9,11 @@ import jakarta.ws.rs.Produces;
import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.MediaType;
import java.util.List;
import io.fabric8.kubernetes.api.model.networking.v1.Ingress;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import dev.dinauer.service.IngressService;
@Path("/ingresses")
@Blocking

View File

@ -1,12 +1,7 @@
package dev.dinauer;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Namespace;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import jakarta.annotation.PostConstruct;
import java.util.List;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
@ -14,7 +9,11 @@ import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;
import java.util.List;
import io.fabric8.kubernetes.api.model.Namespace;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import dev.dinauer.utils.ClientProvider;
@Path("/namespaces")
@ApplicationScoped

View File

@ -1,21 +1,19 @@
package dev.dinauer;
import dev.dinauer.service.PodService;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Pod;
import io.quarkus.runtime.Startup;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import jakarta.annotation.security.RolesAllowed;
import java.util.ArrayList;
import java.util.List;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.*;
import jakarta.ws.rs.core.MediaType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.List;
import io.fabric8.kubernetes.api.model.Pod;
import io.quarkus.runtime.Startup;
import io.smallrye.common.annotation.Blocking;
import dev.dinauer.service.PodService;
import dev.dinauer.utils.ClientProvider;
@Path("/pods")
@Startup
@ -35,16 +33,16 @@ public class PodResource
@Produces(MediaType.APPLICATION_JSON)
@Consumes
@Blocking
@Path("/{namespace}/{name}/env")
public List<EnvVar> getEnv(@PathParam("namespace") String namespace, @PathParam("name") String name)
@Path("/{namespace}/{name}/{containerName}/env")
public List<EnvVar> getEnv(@PathParam("namespace") String namespace, @PathParam("name") String name, @PathParam("containerName") String containerName)
{
return getVars(podService.findByNameAndNamespace(name, namespace));
return getVars(podService.findByNameAndNamespace(name, namespace), containerName);
}
private List<EnvVar> getVars(Pod pod)
private List<EnvVar> getVars(Pod pod, String containerName)
{
List<EnvVar> result = new ArrayList<>();
List<String> lines = processRunner.runToLines(String.format("kubectl exec -it %s -n %s -- env", pod.getMetadata().getName(), pod.getMetadata().getNamespace()));
List<String> lines = processRunner.runToLines(String.format("kubectl exec -it %s -c %s -n %s -- env", pod.getMetadata().getName(), containerName, pod.getMetadata().getNamespace()));
for (String line : lines)
{
int indexOfFirstEquals = line.indexOf("=");

View File

@ -1,10 +1,5 @@
package dev.dinauer;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.context.ManagedExecutor;
import org.jboss.logging.Logger;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
@ -12,6 +7,12 @@ import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.context.ManagedExecutor;
import org.jboss.logging.Logger;
@ApplicationScoped
public class ProcessRunner
{

View File

@ -1,15 +1,16 @@
package dev.dinauer;
import dev.dinauer.service.*;
import io.fabric8.kubernetes.api.model.ConfigMap;
import java.util.List;
import java.util.Optional;
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Inject;
import jakarta.ws.rs.*;
import jakarta.ws.rs.core.MediaType;
import org.jboss.logging.Logger;
import java.util.List;
import java.util.Optional;
import dev.dinauer.service.*;
@Path("/resources/{resource}")
public class ResourceResource

View File

@ -1,15 +1,7 @@
package dev.dinauer;
import dev.dinauer.service.ServiceService;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
import io.quarkus.runtime.Startup;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import jakarta.annotation.PostConstruct;
import java.util.List;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
@ -18,8 +10,12 @@ import jakarta.ws.rs.Produces;
import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.MediaType;
import java.util.List;
import java.util.Optional;
import io.fabric8.kubernetes.api.model.Service;
import io.quarkus.runtime.Startup;
import io.quarkus.security.Authenticated;
import io.smallrye.common.annotation.Blocking;
import dev.dinauer.service.ServiceService;
@Path("/services")
@Startup

View File

@ -1,13 +1,13 @@
package dev.dinauer;
import io.quarkus.runtime.Startup;
import jakarta.enterprise.context.ApplicationScoped;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import jakarta.enterprise.context.ApplicationScoped;
import org.eclipse.microprofile.config.inject.ConfigProperty;
@ApplicationScoped
public class WorkdirProvider
{

View File

@ -1,12 +1,14 @@
package dev.dinauer.inspect;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.jwt.JsonWebToken;
import io.smallrye.jwt.auth.principal.JWTParser;
import io.smallrye.jwt.auth.principal.ParseException;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.jwt.JsonWebToken;
import java.util.Optional;
@ApplicationScoped
public class TokenService

View File

@ -1,27 +1,30 @@
package dev.dinauer.inspect.log;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.client.dsl.LogWatch;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.websocket.OnClose;
import jakarta.websocket.OnOpen;
import jakarta.websocket.Session;
import jakarta.websocket.server.PathParam;
import jakarta.websocket.server.ServerEndpoint;
import org.eclipse.microprofile.context.ManagedExecutor;
import org.jboss.logging.Logger;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.Future;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.websocket.OnClose;
import jakarta.websocket.OnOpen;
import jakarta.websocket.Session;
import jakarta.websocket.server.PathParam;
import jakarta.websocket.server.ServerEndpoint;
import org.eclipse.microprofile.context.ManagedExecutor;
import org.jboss.logging.Logger;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import io.fabric8.kubernetes.client.dsl.LogWatch;
import dev.dinauer.utils.ClientProvider;
@ServerEndpoint("/logs/{namespace}/{name}")
@ApplicationScoped

View File

@ -1,16 +1,10 @@
package dev.dinauer.inspect.websocket;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import dev.dinauer.ResourceType;
import dev.dinauer.inspect.TokenService;
import dev.dinauer.service.ResourceService;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.WatcherException;
import io.smallrye.jwt.auth.principal.JWTParser;
import io.smallrye.jwt.auth.principal.ParseException;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.websocket.OnClose;
@ -18,15 +12,19 @@ import jakarta.websocket.OnOpen;
import jakarta.websocket.Session;
import jakarta.websocket.server.PathParam;
import jakarta.websocket.server.ServerEndpoint;
import org.eclipse.microprofile.context.ManagedExecutor;
import org.eclipse.microprofile.jwt.JsonWebToken;
import org.jboss.logging.Logger;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import org.eclipse.microprofile.context.ManagedExecutor;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.WatcherException;
import dev.dinauer.ResourceType;
import dev.dinauer.inspect.TokenService;
import dev.dinauer.service.ResourceService;
@ServerEndpoint("/watch/{resource-type}/{namespace}")
@ApplicationScoped

View File

@ -1,12 +1,14 @@
package dev.dinauer.inspect.websocket;
import dev.dinauer.ResourceType;
import dev.dinauer.service.*;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.BadRequestException;
import org.jboss.logging.Logger;
import dev.dinauer.ResourceType;
import dev.dinauer.service.*;
@ApplicationScoped
public class ServiceFactory
{

View File

@ -1,24 +1,18 @@
package dev.dinauer.inspect.websocket;
import com.arjuna.ats.internal.arjuna.Header;
import io.quarkus.security.Authenticated;
import io.quarkus.security.UnauthorizedException;
import io.smallrye.jwt.auth.principal.JWTParser;
import io.smallrye.jwt.auth.principal.ParseException;
import io.smallrye.jwt.build.Jwt;
import io.smallrye.jwt.build.JwtClaimsBuilder;
import java.time.ZonedDateTime;
import jakarta.inject.Inject;
import jakarta.ws.rs.HeaderParam;
import jakarta.ws.rs.POST;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.SecurityContext;
import org.eclipse.microprofile.jwt.JsonWebToken;
import java.time.ZonedDateTime;
import java.util.List;
import java.util.Optional;
import io.quarkus.security.Authenticated;
import io.quarkus.security.UnauthorizedException;
import io.smallrye.jwt.build.Jwt;
@Path("/websocket-session")
public class WebsocketSessionResource
@ -33,18 +27,7 @@ public class WebsocketSessionResource
{
if (token != null)
{
JwtClaimsBuilder builder = Jwt.upn(token.getName()).issuer(token.getIssuer()).expiresAt(ZonedDateTime.now().plusSeconds(15).toInstant());
Optional<List<String>> namespaces = token.claim("namespaces");
if (namespaces.isPresent())
{
builder = builder.claim("namespaces", namespaces.get());
}
Optional<List<String>> resources = token.claim("resources");
if (resources.isPresent())
{
builder = builder.claim("resources", resources.get());
}
return builder.claim("purpose", "ws:connect").sign();
return Jwt.upn(token.getName()).issuer(token.getIssuer()).expiresAt(ZonedDateTime.now().plusSeconds(15).toInstant()).claim("purpose", "ws:connect").sign();
}
throw new UnauthorizedException();
}

View File

@ -1,21 +1,18 @@
package dev.dinauer.login;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.smallrye.jwt.build.Jwt;
import java.time.ZonedDateTime;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.*;
import jakarta.ws.rs.core.MediaType;
import io.quarkus.elytron.security.common.BcryptUtil;
import jakarta.ws.rs.core.Response;
import org.jboss.logging.Logger;
import java.io.IOException;
import java.time.ZonedDateTime;
import java.util.List;
import java.util.Optional;
import io.quarkus.elytron.security.common.BcryptUtil;
import io.smallrye.jwt.build.Jwt;
@Path("/login")
@ApplicationScoped

View File

@ -1,11 +1,10 @@
package dev.dinauer.login;
import jakarta.persistence.*;
import java.util.List;
import java.util.Set;
import java.util.UUID;
import jakarta.persistence.*;
@Entity
@Table(name = "kubooboo_user")
public class UserEntity

View File

@ -1,9 +1,9 @@
package dev.dinauer.login;
import jakarta.enterprise.context.ApplicationScoped;
import java.util.List;
import jakarta.enterprise.context.ApplicationScoped;
@ApplicationScoped
public class UserMapper
{

View File

@ -1,10 +1,11 @@
package dev.dinauer.login;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
import io.quarkus.panache.common.Parameters;
import jakarta.enterprise.context.ApplicationScoped;
import java.util.Optional;
@ApplicationScoped
public class UserRepo implements PanacheRepositoryBase<UserEntity, String>

View File

@ -1,8 +1,9 @@
package dev.dinauer.login;
import io.quarkus.elytron.security.common.BcryptUtil;
import io.quarkus.security.Authenticated;
import io.quarkus.security.identity.SecurityIdentity;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import jakarta.annotation.security.RolesAllowed;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
@ -10,10 +11,9 @@ import jakarta.transaction.Transactional;
import jakarta.ws.rs.*;
import jakarta.ws.rs.core.MediaType;
import java.io.IOException;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import io.quarkus.elytron.security.common.BcryptUtil;
import io.quarkus.security.Authenticated;
import io.quarkus.security.identity.SecurityIdentity;
@Path("/users")
@ApplicationScoped

View File

@ -1,10 +1,9 @@
package dev.dinauer.monitoring;
import dev.dinauer.monitoring.indexing.Bucket;
import io.fabric8.kubernetes.api.model.Pod;
import java.util.List;
import dev.dinauer.monitoring.indexing.Bucket;
public record MonitoredResource<E>(E resource, List<Bucket> jobs)
{
}

View File

@ -1,16 +1,17 @@
package dev.dinauer.monitoring;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.repo.MonitoringRepo;
import dev.dinauer.monitoring.indexing.Bucket;
import io.fabric8.kubernetes.api.model.Pod;
import jakarta.inject.Inject;
import jakarta.ws.rs.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import jakarta.inject.Inject;
import jakarta.ws.rs.*;
import io.fabric8.kubernetes.api.model.Pod;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.repo.MonitoringRepo;
@Path("/monitorings/{monitoring-id}/jobs")
public class MonitoringJobResource
{

View File

@ -1,7 +1,20 @@
package dev.dinauer.monitoring;
import java.io.IOException;
import java.util.List;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.logging.Logger;
import io.quarkus.runtime.Startup;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import dev.dinauer.monitoring.entity.repo.MonitoringRepo;
import dev.dinauer.monitoring.log.Log;
import dev.dinauer.monitoring.log.LogRepo;
@ -9,18 +22,6 @@ import dev.dinauer.monitoring.memory.MemoryMonitoringJobRunner;
import dev.dinauer.monitoring.nodes.NodeMonitoringService;
import dev.dinauer.monitoring.volume.VolumeMonitoringJobRunner;
import dev.dinauer.monitoring.volume.utils.Duration;
import io.quarkus.runtime.Startup;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.logging.Logger;
import java.io.IOException;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
@Startup
@ApplicationScoped

View File

@ -1,24 +1,24 @@
package dev.dinauer.monitoring;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import dev.dinauer.monitoring.entity.TargetConfig;
import dev.dinauer.monitoring.entity.VolumeConfig;
import dev.dinauer.monitoring.entity.creation.MonitoringConfigCreation;
import dev.dinauer.monitoring.entity.creation.VolumeConfigCreation;
import dev.dinauer.monitoring.entity.repo.MonitoringRepo;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import jakarta.inject.Inject;
import jakarta.transaction.Transactional;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.POST;
import jakarta.ws.rs.Path;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import com.fasterxml.jackson.core.JsonProcessingException;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import dev.dinauer.monitoring.entity.TargetConfig;
import dev.dinauer.monitoring.entity.VolumeConfig;
import dev.dinauer.monitoring.entity.creation.MonitoringConfigCreation;
import dev.dinauer.monitoring.entity.repo.MonitoringRepo;
@Path("/monitorings")
public class MonitoringResource

View File

@ -1,14 +1,17 @@
package dev.dinauer.monitoring;
import java.util.List;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.Pod;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.TargetConfig;
import dev.dinauer.service.PodService;
import io.fabric8.kubernetes.api.model.Pod;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
@ApplicationScoped
public class MonitoringService

View File

@ -1,22 +1,21 @@
package dev.dinauer.monitoring;
import dev.dinauer.monitoring.indexing.BigBucketService;
import dev.dinauer.monitoring.indexing.Bucket;
import dev.dinauer.monitoring.indexing.BucketUnit;
import dev.dinauer.service.NodeService;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Node;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.QueryParam;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.io.IOException;
import java.time.ZonedDateTime;
import java.util.ArrayList;
import java.util.List;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.QueryParam;
import io.fabric8.kubernetes.api.model.Node;
import dev.dinauer.monitoring.indexing.BigBucketService;
import dev.dinauer.monitoring.indexing.BucketUnit;
import dev.dinauer.service.NodeService;
@Path("/monitorings/nodes/jobs")
public class NodeMonitoringJobResource
{

View File

@ -1,5 +1,13 @@
package dev.dinauer.monitoring;
import java.util.*;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.Node;
import io.fabric8.kubernetes.api.model.Pod;
import dev.dinauer.ProcessRunner;
import dev.dinauer.monitoring.nodes.MonitoredNode;
import dev.dinauer.monitoring.nodes.NodeMetrics;
@ -7,12 +15,6 @@ import dev.dinauer.monitoring.nodes.client.NodeDiskMetrics;
import dev.dinauer.monitoring.nodes.client.NodeDiskService;
import dev.dinauer.service.PodService;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Node;
import io.fabric8.kubernetes.api.model.Pod;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.util.*;
@ApplicationScoped
public class TopNodesService

View File

@ -1,9 +1,10 @@
package dev.dinauer.monitoring.collection;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import java.util.List;
import jakarta.persistence.*;
import java.util.List;
import dev.dinauer.monitoring.entity.MonitoringConfig;
@Entity
@Table(name = "monitoring_collection")

View File

@ -1,8 +1,9 @@
package dev.dinauer.monitoring.collection;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
import jakarta.enterprise.context.ApplicationScoped;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
@ApplicationScoped
public class MonitoringCollectionRepo implements PanacheRepositoryBase<MonitoringCollection, String>
{

View File

@ -1,12 +1,12 @@
package dev.dinauer.monitoring.collection;
import java.util.List;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.PathParam;
import java.util.List;
@Path("/monitoring-collections")
public class MonitoringCollectionResource
{

View File

@ -1,8 +1,9 @@
package dev.dinauer.monitoring.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.persistence.*;
import com.fasterxml.jackson.annotation.JsonIgnore;
@Entity
@Table(name = "cpu_config")
public class CpuConfig

View File

@ -1,8 +1,9 @@
package dev.dinauer.monitoring.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.persistence.*;
import com.fasterxml.jackson.annotation.JsonIgnore;
@Entity
@Table(name = "healthcheck_config")
public class HealthcheckConfig

View File

@ -1,9 +1,11 @@
package dev.dinauer.monitoring.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.dinauer.monitoring.collection.MonitoringCollection;
import jakarta.persistence.*;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.dinauer.monitoring.collection.MonitoringCollection;
@Entity
@Table(name = "monitoring_config")
public class MonitoringConfig

View File

@ -1,12 +1,13 @@
package dev.dinauer.monitoring.entity;
import java.util.Map;
import jakarta.persistence.*;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import jakarta.persistence.*;
import java.util.Map;
@Entity
@Table(name = "target_config")

View File

@ -1,8 +1,9 @@
package dev.dinauer.monitoring.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.persistence.*;
import com.fasterxml.jackson.annotation.JsonIgnore;
@Entity
@Table(name = "volume_config")
public class VolumeConfig
@ -64,4 +65,4 @@ public class VolumeConfig
this.containerName = containerName;
return this;
}
}
}

View File

@ -1,12 +1,14 @@
package dev.dinauer.monitoring.entity.repo;
import java.util.List;
import jakarta.enterprise.context.ApplicationScoped;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
import io.quarkus.panache.common.Parameters;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
import io.quarkus.panache.common.Parameters;
import jakarta.enterprise.context.ApplicationScoped;
import java.util.List;
@ApplicationScoped
public class MonitoringRepo implements PanacheRepositoryBase<MonitoringConfig, String>

View File

@ -1,10 +1,12 @@
package dev.dinauer.monitoring.indexing;
import io.quarkus.rest.client.reactive.ClientBasicAuth;
import java.util.List;
import jakarta.ws.rs.*;
import org.eclipse.microprofile.rest.client.inject.RegisterRestClient;
import java.util.List;
import io.quarkus.rest.client.reactive.ClientBasicAuth;
@Path("/api/metrics/{resource}/{metric}")
@RegisterRestClient(configKey = "big-bucket")

View File

@ -1,15 +1,17 @@
package dev.dinauer.monitoring.indexing;
import io.quarkus.runtime.Startup;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.InternalServerErrorException;
import org.eclipse.microprofile.rest.client.inject.RestClient;
import org.jboss.logging.Logger;
import java.util.List;
import java.util.Map;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.InternalServerErrorException;
import org.eclipse.microprofile.rest.client.inject.RestClient;
import org.jboss.logging.Logger;
import io.quarkus.runtime.Startup;
@Startup
@ApplicationScoped
public class BigBucketService

View File

@ -1,12 +1,12 @@
package dev.dinauer.monitoring.log;
import java.time.ZonedDateTime;
import java.util.UUID;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import java.time.ZonedDateTime;
import java.util.UUID;
@Entity
@Table(name = "log")
public class Log

View File

@ -1,8 +1,9 @@
package dev.dinauer.monitoring.log;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
import jakarta.enterprise.context.ApplicationScoped;
import io.quarkus.hibernate.orm.panache.PanacheRepositoryBase;
@ApplicationScoped
public class LogRepo implements PanacheRepositoryBase<Log, String>
{

View File

@ -1,10 +1,10 @@
package dev.dinauer.monitoring.memory;
import com.cronutils.utils.StringUtils;
import java.util.Arrays;
import java.util.List;
import com.cronutils.utils.StringUtils;
public class ByteExtractor
{
public static long extractBytes(String input)

View File

@ -1,17 +1,19 @@
package dev.dinauer.monitoring.memory;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.Pod;
import dev.dinauer.ProcessRunner;
import dev.dinauer.monitoring.MonitoringService;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import dev.dinauer.monitoring.indexing.BigBucketService;
import io.fabric8.kubernetes.api.model.Pod;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.io.IOException;
import java.util.List;
import java.util.Map;
@ApplicationScoped
public class MemoryMonitoringJobRunner

View File

@ -1,9 +1,5 @@
package dev.dinauer.monitoring.nodes;
import dev.dinauer.monitoring.TopNodesService;
import dev.dinauer.monitoring.indexing.BigBucketService;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.io.IOException;
import java.util.AbstractMap;
import java.util.List;
@ -11,6 +7,12 @@ import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import dev.dinauer.monitoring.TopNodesService;
import dev.dinauer.monitoring.indexing.BigBucketService;
@ApplicationScoped
public class NodeMonitoringService
{

View File

@ -1,14 +1,5 @@
package dev.dinauer.monitoring.nodes.client;
import dev.dinauer.service.PodService;
import io.fabric8.kubernetes.api.model.Node;
import io.fabric8.kubernetes.api.model.Pod;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.config.ConfigProvider;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import org.jboss.logging.Logger;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
@ -18,6 +9,17 @@ import java.net.http.HttpResponse;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import org.jboss.logging.Logger;
import io.fabric8.kubernetes.api.model.Pod;
import dev.dinauer.service.PodService;
@ApplicationScoped
public class NodeDiskService
@ -30,6 +32,9 @@ public class NodeDiskService
@Inject
PodService podService;
@ConfigProperty(name = "quarkus.profile")
String profile;
public Map<String, NodeDiskMetrics> getDiskMetrics()
{
Map<String, NodeDiskMetrics> result = new HashMap<>();
@ -48,6 +53,10 @@ public class NodeDiskService
private Map.Entry<String, NodeDiskMetrics> getDiskMetricsForPod(Pod pod)
{
String nodeName = pod.getSpec().getNodeName();
if ("dev".equals(profile))
{
return Map.entry(nodeName, new NodeDiskMetrics(new Random().nextInt(80) + 10, 0L));
}
String ip = pod.getStatus().getPodIP();
String port = "8080";
try (HttpClient client = HttpClient.newBuilder().build())

View File

@ -1,15 +1,17 @@
package dev.dinauer.monitoring.pods;
import dev.dinauer.ProcessRunner;
import io.fabric8.kubernetes.api.model.Pod;
import io.quarkus.scheduler.Scheduled;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.Pod;
import io.quarkus.scheduler.Scheduled;
import dev.dinauer.ProcessRunner;
@ApplicationScoped
public class PodMetricsService
{

View File

@ -1,15 +1,5 @@
package dev.dinauer.monitoring.volume;
import dev.dinauer.ProcessRunner;
import dev.dinauer.monitoring.MonitoringService;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import dev.dinauer.monitoring.indexing.BigBucketService;
import io.fabric8.kubernetes.api.model.Pod;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.logging.Logger;
import java.io.IOException;
import java.time.ZonedDateTime;
import java.time.temporal.ChronoUnit;
@ -18,6 +8,19 @@ import java.util.List;
import java.util.Map;
import java.util.UUID;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.logging.Logger;
import io.fabric8.kubernetes.api.model.Pod;
import dev.dinauer.ProcessRunner;
import dev.dinauer.monitoring.MonitoringService;
import dev.dinauer.monitoring.entity.MonitoringConfig;
import dev.dinauer.monitoring.entity.MonitoringType;
import dev.dinauer.monitoring.indexing.BigBucketService;
@ApplicationScoped
public class VolumeMonitoringJobRunner
{

View File

@ -1,15 +1,5 @@
package dev.dinauer.monitoring.volume;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import dev.dinauer.WorkdirProvider;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.NotFoundException;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
@ -19,6 +9,15 @@ import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import dev.dinauer.WorkdirProvider;
@ApplicationScoped
public class VolumeUsageRepo
{

View File

@ -1,16 +1,19 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.ConfigMap;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.ConfigMap;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class ConfigMapService implements ResourceService<ConfigMap>
{

View File

@ -1,16 +1,19 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.ApiextensionsAPIGroupDSL;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class CustomResourceDefinitionService implements ResourceService<CustomResourceDefinition>

View File

@ -1,16 +1,19 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.apps.Deployment;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class DeploymentService implements ResourceService<Deployment>

View File

@ -1,19 +1,20 @@
package dev.dinauer.service;
import com.fasterxml.jackson.databind.ObjectMapper;
import dev.dinauer.utils.ClientProvider;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.kubernetes.api.model.networking.v1.Ingress;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.NetworkAPIGroupDSL;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.NotFoundException;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class IngressService implements ResourceService<Ingress>

View File

@ -1,15 +1,17 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Namespace;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.Namespace;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class NamespaceService implements ResourceService<Namespace>
{

View File

@ -1,14 +1,18 @@
package dev.dinauer.service;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.monitoring.TopNodesService;
import dev.dinauer.monitoring.nodes.MonitoredNode;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
@ApplicationScoped
public class NodeService implements ResourceService<MonitoredNode>

View File

@ -1,19 +1,20 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.apps.DaemonSet;
import io.fabric8.kubernetes.api.model.apps.StatefulSet;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.apps.StatefulSet;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class PodService implements ResourceService<Pod>
{

View File

@ -1,15 +1,17 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.PersistentVolume;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.PersistentVolume;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class PvService implements ResourceService<PersistentVolume>
{

View File

@ -1,15 +1,17 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaim;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaim;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class PvcService implements ResourceService<PersistentVolumeClaim>
{

View File

@ -1,11 +1,11 @@
package dev.dinauer.service;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import java.util.List;
import java.util.Optional;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
public interface ResourceService<T>
{
void delete(String name, String namespace);

View File

@ -1,16 +1,19 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class SecretService implements ResourceService<Secret>
{

View File

@ -1,20 +1,19 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class ServiceService implements ResourceService<Service>
{

View File

@ -1,16 +1,19 @@
package dev.dinauer.service;
import dev.dinauer.utils.ClientProvider;
import java.util.List;
import java.util.Optional;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import io.fabric8.kubernetes.api.model.apps.StatefulSet;
import io.fabric8.kubernetes.client.Watch;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.util.List;
import java.util.Optional;
import dev.dinauer.utils.ClientProvider;
@ApplicationScoped
public class StatefulSetService implements ResourceService<StatefulSet>

View File

@ -1,15 +1,17 @@
package dev.dinauer.settings;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import dev.dinauer.WorkdirProvider;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import dev.dinauer.WorkdirProvider;
@ApplicationScoped
public class SettingsRepo
{

View File

@ -1,14 +1,16 @@
package dev.dinauer.settings;
import io.quarkus.security.Authenticated;
import java.io.IOException;
import jakarta.annotation.security.RolesAllowed;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.ws.rs.*;
import jakarta.ws.rs.core.MediaType;
import org.jboss.resteasy.reactive.common.NotImplementedYet;
import java.io.IOException;
import io.quarkus.security.Authenticated;
@Path("/settings")
@ApplicationScoped

View File

@ -1,15 +1,12 @@
package dev.dinauer.utils;
import io.fabric8.kubernetes.client.Config;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
import io.fabric8.kubernetes.client.vertx.VertxHttpClientFactory;
import io.vertx.mutiny.core.Vertx;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import java.io.File;
@ApplicationScoped
public class ClientProvider

View File

@ -1,19 +1,19 @@
package dev.dinauer.utils;
import dev.dinauer.login.User;
import dev.dinauer.login.UserEntity;
import dev.dinauer.login.UserRepo;
import io.quarkus.elytron.security.common.BcryptUtil;
import io.quarkus.narayana.jta.QuarkusTransaction;
import io.quarkus.runtime.Startup;
import java.util.Set;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.transaction.Transactional;
import org.jboss.logging.Logger;
import java.io.IOException;
import java.util.Set;
import io.quarkus.elytron.security.common.BcryptUtil;
import io.quarkus.narayana.jta.QuarkusTransaction;
import io.quarkus.runtime.Startup;
import dev.dinauer.login.UserEntity;
import dev.dinauer.login.UserRepo;
@Startup
@ApplicationScoped

View File

@ -1,10 +1,9 @@
package dev.dinauer.monitoring.memory;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.Test;
public class ByteExtractorTest
{
@Test