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 jakarta.annotation.PostConstruct; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; import jakarta.ws.rs.GET; import jakarta.ws.rs.Path; import jakarta.ws.rs.Produces; import jakarta.ws.rs.core.MediaType; import java.util.List; @Path("/namespaces") @ApplicationScoped @Authenticated public class NamespaceResource { @Inject ClientProvider clientProvider; @GET @Produces(MediaType.APPLICATION_JSON) public List getNamespaces() { return clientProvider.getClient().namespaces().list().getItems(); } }