diff --git a/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/service/HelmInstallService.java b/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/service/HelmInstallService.java index 133050d9..79c70730 100644 --- a/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/service/HelmInstallService.java +++ b/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/service/HelmInstallService.java @@ -25,7 +25,7 @@ /** HelmInstall */ public class HelmInstallService { - private final Logger logger = LoggerFactory.getLogger(HelmInstallService.class); + private static final Logger LOGGER = LoggerFactory.getLogger(HelmInstallService.class); private final Pattern helmNamePattern = Pattern.compile("^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$"); @@ -154,12 +154,8 @@ private String getReleaseInfo( } else { return Command.execute(configuration, command.toString()).getOutput().getString(); } - } catch (IOException e) { - e.printStackTrace(); - } catch (InterruptedException e) { - e.printStackTrace(); - } catch (TimeoutException e) { - e.printStackTrace(); + } catch (IOException | InterruptedException | TimeoutException e) { + LOGGER.warn("Exception occurred", e); } return ""; } diff --git a/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/utils/Command.java b/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/utils/Command.java index 6e2d6c43..d0519caa 100644 --- a/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/utils/Command.java +++ b/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/utils/Command.java @@ -20,7 +20,7 @@ public class Command { private static final Pattern safeToConcatenate = Pattern.compile( "^[ ]*[a-z0-9]([-a-z0-9 ]*[a-z0-9 ])?(\\.[a-z0-9 ]([-a-z0-9 ]*[a-z0-9 ])?)*[ ]*$"); - private static Logger LOGGER = LoggerFactory.getLogger(Command.class); + private static final Logger LOGGER = LoggerFactory.getLogger(Command.class); private static ProcessExecutor getProcessExecutor() { ProcessExecutor processExecutor = new ProcessExecutor(); diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogFilter.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogFilter.java index 92486606..e945c62a 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogFilter.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogFilter.java @@ -12,7 +12,7 @@ public class CatalogFilter { @Autowired private RegionsConfiguration regionsConfiguration; - private Logger logger = LoggerFactory.getLogger(CatalogFilter.class); + private Logger LOGGER = LoggerFactory.getLogger(CatalogFilter.class); public List filterCatalogs(List catalogs) { return catalogs; diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogsLoader.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogsLoader.java index e4a5fac1..5eb82332 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogsLoader.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/CatalogsLoader.java @@ -22,7 +22,7 @@ public class CatalogsLoader { @Autowired private CatalogsConfiguration catalogsConfiguration; - private static Logger logger = LoggerFactory.getLogger(CatalogsLoader.class); + private static final Logger LOGGER = LoggerFactory.getLogger(CatalogsLoader.class); @Bean @Scope(ConfigurableBeanFactory.SCOPE_SINGLETON) @@ -30,7 +30,7 @@ public Catalogs catalogs() { Catalogs catalogs = new Catalogs(); catalogs.setCatalogs(catalogsConfiguration.getResolvedCatalogs()); catalogs.setCatalogs(catalogFilter.filterCatalogs(catalogs.getCatalogs())); - logger.info("Serving " + catalogs.getCatalogs().size() + " catalogs"); + LOGGER.info("Serving {} catalogs", catalogs.getCatalogs().size()); return catalogs; } } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/checks/CompatibilityChecks.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/checks/CompatibilityChecks.java index 6bfb562c..09dc01c7 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/checks/CompatibilityChecks.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/checks/CompatibilityChecks.java @@ -15,7 +15,7 @@ @Configuration public class CompatibilityChecks { - private static Logger LOGGER = LoggerFactory.getLogger(RegionsConfiguration.class); + private static final Logger LOGGER = LoggerFactory.getLogger(CompatibilityChecks.class); @Autowired RegionsConfiguration regionsConfiguration; @Autowired KubernetesClientProvider kubernetesClientProvider; @@ -24,7 +24,7 @@ public class CompatibilityChecks { @EventListener(ContextRefreshedEvent.class) public void checkHelm() { try { - LOGGER.info("Using helm " + helmVersionService.getVersion()); + LOGGER.info("Using helm {}", helmVersionService.getVersion()); } catch (Exception e) { LOGGER.error("Could not determine helm version", e); System.exit(0); @@ -44,18 +44,15 @@ public void checkKubernetesVersion() { kubernetesClientProvider.getRootClient(region); try { LOGGER.info( - "Region " - + region.getName() - + " kubernetes v" - + client.getKubernetesVersion().getMajor() - + "." - + client.getKubernetesVersion().getMinor()); + "Region {} kubernetes v{}.{}", + region.getName(), + client.getKubernetesVersion().getMajor(), + client.getKubernetesVersion().getMinor()); } catch (Exception e) { LOGGER.error( - "Could not contact Kubernetes APIServer for region " - + region.getName() - + " at " - + client.getMasterUrl(), + "Could not contact Kubernetes APIServer for region {} at {}", + region.getName(), + client.getMasterUrl(), e); } } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/kubernetes/KubernetesClientProvider.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/kubernetes/KubernetesClientProvider.java index 3ce9389e..f2dfc5f8 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/kubernetes/KubernetesClientProvider.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/kubernetes/KubernetesClientProvider.java @@ -16,7 +16,7 @@ @Configuration public class KubernetesClientProvider { - private final Logger logger = LoggerFactory.getLogger(KubernetesClientProvider.class); + private static final Logger LOGGER = LoggerFactory.getLogger(KubernetesClientProvider.class); @Autowired private SecurityConfig securityConfig; diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/properties/RegionsConfiguration.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/properties/RegionsConfiguration.java index 60eddda6..e83e0e5a 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/properties/RegionsConfiguration.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/configuration/properties/RegionsConfiguration.java @@ -29,7 +29,7 @@ @ConfigurationProperties public class RegionsConfiguration { - private static Logger LOGGER = LoggerFactory.getLogger(RegionsConfiguration.class); + private static final Logger LOGGER = LoggerFactory.getLogger(RegionsConfiguration.class); private String regions; private List resolvedRegions; @Autowired private ObjectMapper mapper; diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/cloudshell/CloudShellController.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/cloudshell/CloudShellController.java index 5677f5d6..67ac7958 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/cloudshell/CloudShellController.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/cloudshell/CloudShellController.java @@ -52,9 +52,11 @@ public CloudShellStatus getCloudShellStatus( } catch (Exception e) { status.setStatus(CloudShellStatus.STATUS_DOWN); status.setPackageToDeploy( - catalogService.getPackage( - cloudshellConfiguration.getCatalogId(), - cloudshellConfiguration.getPackageName())); + catalogService + .getPackage( + cloudshellConfiguration.getCatalogId(), + cloudshellConfiguration.getPackageName()) + .get()); status.setCatalogId(cloudshellConfiguration.getCatalogId()); status.setUrl(null); } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/MyLabController.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/MyLabController.java index f74a31c4..62d46861 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/MyLabController.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/MyLabController.java @@ -1,7 +1,7 @@ package fr.insee.onyxia.api.controller.api.mylab; -import com.fasterxml.jackson.core.JsonProcessingException; import fr.insee.onyxia.api.configuration.CatalogWrapper; +import fr.insee.onyxia.api.configuration.NotFoundException; import fr.insee.onyxia.api.services.AppsService; import fr.insee.onyxia.api.services.CatalogService; import fr.insee.onyxia.api.services.UserProvider; @@ -19,7 +19,6 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.tags.Tag; -import java.io.IOException; import java.util.*; import java.util.concurrent.CompletableFuture; import org.springframework.beans.factory.annotation.Autowired; @@ -223,18 +222,22 @@ public Object publishService( @Parameter(hidden = true) Region region, @Parameter(hidden = true) Project project, @RequestBody CreateServiceDTO requestDTO) - throws JsonProcessingException, IOException, Exception { + throws Exception { return publishApps(region, project, requestDTO); } private Collection publishApps( Region region, Project project, CreateServiceDTO requestDTO) throws Exception { String catalogId = "internal"; - if (requestDTO.getCatalogId() != null && requestDTO.getCatalogId().length() > 0) { + if (requestDTO.getCatalogId() != null && !requestDTO.getCatalogId().isEmpty()) { catalogId = requestDTO.getCatalogId(); } CatalogWrapper catalog = catalogService.getCatalogById(catalogId); - Pkg pkg = catalog.getCatalog().getPackageByName(requestDTO.getPackageName()); + Pkg pkg = + catalog.getCatalog() + .getPackageByName(requestDTO.getPackageName()) + .orElseThrow(NotFoundException::new); + boolean skipTlsVerify = catalog.getSkipTlsVerify(); String caFile = catalog.getCaFile(); User user = userProvider.getUser(region); diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/QuotaController.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/QuotaController.java index e19bcaa8..f511d24f 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/QuotaController.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/api/mylab/QuotaController.java @@ -33,7 +33,7 @@ @SecurityRequirement(name = "auth") public class QuotaController { - private final Logger logger = LoggerFactory.getLogger(QuotaController.class); + private static final Logger LOGGER = LoggerFactory.getLogger(QuotaController.class); @Autowired private KubernetesService kubernetesService; @@ -143,7 +143,7 @@ public void resetQuota( if (owner.getType() == Owner.OwnerType.USER) { checkUserQuotaIsEnabled(region); if (region.getServices().getQuotas().isEnabled()) { - logger.warn( + LOGGER.warn( "resetting to old enabled style quota, this parameter will be deprecated"); kubernetesService.applyQuota( region, @@ -151,7 +151,7 @@ public void resetQuota( userProvider.getUser(region), region.getServices().getQuotas().getDefaultQuota()); } else { - logger.info("resetting to user enabled style quota"); + LOGGER.info("resetting to user enabled style quota"); kubernetesService.applyQuota( region, project, @@ -159,7 +159,7 @@ public void resetQuota( region.getServices().getQuotas().getUserQuota()); } } else if (owner.getType() == Owner.OwnerType.GROUP) { - logger.info("resetting to group enabled style quota"); + LOGGER.info("resetting to group enabled style quota"); checkGroupQuotaIsEnabled(region); kubernetesService.applyQuota( region, diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/pub/CatalogController.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/pub/CatalogController.java index 52483dc2..889debee 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/pub/CatalogController.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/controller/pub/CatalogController.java @@ -84,11 +84,11 @@ public CatalogWrapper getCatalogById(@PathVariable String catalogId) { }) @GetMapping("{catalogId}/{packageName}") public Pkg getPackage(@PathVariable String catalogId, @PathVariable String packageName) { - Pkg pkg = catalogService.getPackage(catalogId, packageName); + Pkg pkg = + catalogService + .getPackage(catalogId, packageName) + .orElseThrow(NotFoundException::new); addCustomOnyxiaProperties(pkg); - if (pkg == null) { - throw new NotFoundException(); - } return pkg; } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogLoader.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogLoader.java index 64c88de6..ae17996b 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogLoader.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogLoader.java @@ -1,5 +1,7 @@ package fr.insee.onyxia.api.dao.universe; +import static java.nio.charset.StandardCharsets.UTF_8; + import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; @@ -12,6 +14,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; +import java.util.List; import java.util.stream.Collectors; import org.apache.commons.compress.archivers.tar.TarArchiveEntry; import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; @@ -27,7 +30,7 @@ @Service public class CatalogLoader { - private final Logger logger = LoggerFactory.getLogger(CatalogLoader.class); + private static final Logger LOGGER = LoggerFactory.getLogger(CatalogLoader.class); @Autowired private ResourceLoader resourceLoader; @@ -36,11 +39,11 @@ public class CatalogLoader { private ObjectMapper mapperHelm; public void updateCatalog(CatalogWrapper cw) { - logger.info("updating catalog with id :" + cw.getId() + " and type " + cw.getType()); - switch (cw.getType()) { - case Repository.TYPE_HELM: - updateHelmRepository(cw); - break; + LOGGER.info("updating catalog with id :{} and type {}", cw.getId(), cw.getType()); + if (cw.getType().equals(Repository.TYPE_HELM)) { + updateHelmRepository(cw); + } else { + LOGGER.warn("Unsupported catalog type: id: {}, type: {}", cw.getId(), cw.getType()); } } @@ -52,7 +55,7 @@ private void updateHelmRepository(CatalogWrapper cw) { resourceLoader .getResource(cw.getLocation() + "/index.yaml") .getInputStream(), - "UTF-8"); + UTF_8); Repository repository = mapperHelm.readValue(reader, Repository.class); repository .getEntries() @@ -74,19 +77,19 @@ private void updateHelmRepository(CatalogWrapper cw) { refreshPackage(cw, pkg); } catch (CatalogLoaderException | IOException e) { - e.printStackTrace(); + LOGGER.info("Exception occurred", e); } }); }); repository.setPackages( repository.getEntries().values().stream() - .map(charts -> charts.get(0)) + .map(List::getFirst) .filter(chart -> "application".equalsIgnoreCase(chart.getType())) .collect(Collectors.toList())); cw.setCatalog(repository); cw.setLastUpdateTime(System.currentTimeMillis()); } catch (Exception e) { - e.printStackTrace(); + LOGGER.info("Exception occurred", e); } } @@ -116,7 +119,7 @@ private void extractDataFromTgz(InputStream in, Chart chart) throws IOException try (TarArchiveInputStream tarIn = new TarArchiveInputStream(gzipIn)) { TarArchiveEntry entry; - while ((entry = tarIn.getNextTarEntry()) != null) { + while ((entry = tarIn.getNextEntry()) != null) { if (entry.getName().endsWith(chart.getName() + "/values.schema.json") && !entry.getName() .endsWith("charts/" + chart.getName() + "/values.schema.json")) { @@ -127,12 +130,6 @@ private void extractDataFromTgz(InputStream in, Chart chart) throws IOException Config config = mapper.readValue(tarIn, Config.class); chart.setConfig(config); } - - if (entry.isDirectory()) { - - } else { - - } } } } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogRefresher.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogRefresher.java index 4766cb75..10989e62 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogRefresher.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/dao/universe/CatalogRefresher.java @@ -17,7 +17,7 @@ @Service public class CatalogRefresher implements ApplicationRunner { - private final Logger logger = LoggerFactory.getLogger(CatalogRefresher.class); + private static final Logger LOGGER = LoggerFactory.getLogger(CatalogRefresher.class); @Autowired private Catalogs catalogs; @@ -33,7 +33,7 @@ private void refresh() { .forEach( c -> { try { - logger.info( + LOGGER.info( helmRepoService.addHelmRepo( c.getLocation(), c.getId(), @@ -41,18 +41,14 @@ private void refresh() { c.getCaFile())); catalogLoader.updateCatalog(c); } catch (Exception e) { - e.printStackTrace(); + LOGGER.warn("Exception occurred", e); } }); try { helmRepoService.repoUpdate(); - } catch (InterruptedException e) { - e.printStackTrace(); - } catch (TimeoutException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); + } catch (InterruptedException | TimeoutException | IOException e) { + LOGGER.warn("Exception occurred", e); } } @@ -65,7 +61,7 @@ public void run(ApplicationArguments args) throws Exception { new TimerTask() { @Override public void run() { - logger.info("refreshing catalogs.."); + LOGGER.info("Refreshing catalogs"); refresh(); } }; diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/openapi/OpenApiConfiguration.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/openapi/OpenApiConfiguration.java index 89d96efb..f73855b9 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/openapi/OpenApiConfiguration.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/openapi/OpenApiConfiguration.java @@ -11,22 +11,18 @@ @Configuration public class OpenApiConfiguration { - private static final Logger logger = LoggerFactory.getLogger(OpenApiConfiguration.class); + private static final Logger LOGGER = LoggerFactory.getLogger(OpenApiConfiguration.class); // TODO : add oauth authentication @Bean @ConditionalOnMissingBean public OpenAPI customOpenAPI() { - final OpenAPI openapi = createOpenAPI(); - return openapi; + return createOpenAPI(); } private OpenAPI createOpenAPI() { - logger.info("surcharge de la configuration swagger"); - final OpenAPI openapi = - new OpenAPI() - .info(new Info().title("Onyxia-api").description("Swagger onyxia-api")); - return openapi; + LOGGER.info("surcharge de la configuration swagger"); + return new OpenAPI().info(new Info().title("Onyxia-api").description("Swagger onyxia-api")); } } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/CatalogService.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/CatalogService.java index 1c315ec9..312f3180 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/CatalogService.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/CatalogService.java @@ -9,13 +9,13 @@ public interface CatalogService { - public Catalogs getCatalogs(); + Catalogs getCatalogs(); - public CatalogWrapper getCatalogById(String catalogId); + CatalogWrapper getCatalogById(String catalogId); - public Pkg getPackage(String catalogId, String packageName); + Optional getPackage(String catalogId, String packageName); - public Optional getChartByVersion(String catalogId, String chartName, String version); + Optional getChartByVersion(String catalogId, String chartName, String version); - public Optional> getCharts(String catalogId, String chartName); + Optional> getCharts(String catalogId, String chartName); } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/UserProvider.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/UserProvider.java index 7afdaee2..966a3395 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/UserProvider.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/UserProvider.java @@ -11,5 +11,5 @@ public interface UserProvider { * @param region contextual region of the user * @return current user */ - public User getUser(Region region); + User getUser(Region region); } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/control/AdmissionControllerHelm.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/control/AdmissionControllerHelm.java index e15b7926..bdec4793 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/control/AdmissionControllerHelm.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/control/AdmissionControllerHelm.java @@ -12,7 +12,7 @@ public interface AdmissionControllerHelm { * * @return whether the contract is ok to deploy */ - public boolean validateContract( + boolean validateContract( Region region, Pkg pkg, Map values, User user, PublishContext context); /** @@ -20,7 +20,7 @@ public boolean validateContract( * * @return */ - public default Integer getPriority() { + default Integer getPriority() { return 0; } } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/CatalogServiceImpl.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/CatalogServiceImpl.java index a72ff5d9..e2fddd17 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/CatalogServiceImpl.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/CatalogServiceImpl.java @@ -26,7 +26,7 @@ public CatalogWrapper getCatalogById(String catalogId) { } @Override - public Pkg getPackage(String catalogId, String packageName) { + public Optional getPackage(String catalogId, String packageName) { return catalogs.getCatalogById(catalogId).getCatalog().getPackageByName(packageName); } diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/kubernetes/KubernetesService.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/kubernetes/KubernetesService.java index 8be1bf6f..c5cde291 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/kubernetes/KubernetesService.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/services/impl/kubernetes/KubernetesService.java @@ -29,7 +29,7 @@ public class KubernetesService { @Autowired private KubernetesClientProvider kubernetesClientProvider; - private final Logger logger = LoggerFactory.getLogger(KubernetesService.class); + private static final Logger LOGGER = LoggerFactory.getLogger(KubernetesService.class); public String createDefaultNamespace(Region region, Owner owner) { final String namespaceId = getDefaultNamespace(region, owner); @@ -126,7 +126,7 @@ private String createNamespace(Region region, String namespaceId, Owner owner) { if (oldEnabled) { final Quota quota = region.getServices().getQuotas().getDefaultQuota(); - logger.warn("applying old enabled style quota, this parameter will be deprecated"); + LOGGER.warn("applying old enabled style quota, this parameter will be deprecated"); applyQuotas( namespaceId, kubClient, @@ -134,7 +134,7 @@ private String createNamespace(Region region, String namespaceId, Owner owner) { !region.getServices().getQuotas().isAllowUserModification()); } else if (userEnabled) { final Quota quota = region.getServices().getQuotas().getUserQuota(); - logger.info("applying user enabled style quota"); + LOGGER.info("applying user enabled style quota"); applyQuotas( namespaceId, kubClient, @@ -142,7 +142,7 @@ private String createNamespace(Region region, String namespaceId, Owner owner) { !region.getServices().getQuotas().isAllowUserModification()); } else if (groupEnabled) { final Quota quota = region.getServices().getQuotas().getGroupQuota(); - logger.info("applying user enabled style quota"); + LOGGER.info("applying group enabled style quota"); applyQuotas( namespaceId, kubClient, diff --git a/onyxia-api/src/main/java/fr/insee/onyxia/api/user/OnyxiaUserProvider.java b/onyxia-api/src/main/java/fr/insee/onyxia/api/user/OnyxiaUserProvider.java index 176589eb..0e86a591 100644 --- a/onyxia-api/src/main/java/fr/insee/onyxia/api/user/OnyxiaUserProvider.java +++ b/onyxia-api/src/main/java/fr/insee/onyxia/api/user/OnyxiaUserProvider.java @@ -17,7 +17,7 @@ public class OnyxiaUserProvider { Pattern rfc1123Pattern = Pattern.compile("[a-z0-9]([-a-z0-9]*[a-z0-9])?"); @Autowired private UserProvider userProvider; @Autowired private KubernetesService kubernetesService; // TODO : cleanup - private Logger logger = LoggerFactory.getLogger(OnyxiaUserProvider.class); + private Logger LOGGER = LoggerFactory.getLogger(OnyxiaUserProvider.class); public OnyxiaUser getUser(Region region) { OnyxiaUser user = new OnyxiaUser(userProvider.getUser(region)); @@ -116,7 +116,7 @@ private String getProjectBaseNameFromGroup( try { return includePattern.matcher(group).replaceAll(extractPattern); } catch (Exception e) { - logger.error( + LOGGER.error( "Failed to transform group project with include pattern : {} " + "and transform pattern : {} . Returning non transformed group.", includePattern.pattern(), diff --git a/onyxia-api/src/test/java/fr/insee/onyxia/api/dao/universe/CatalogLoaderTest.java b/onyxia-api/src/test/java/fr/insee/onyxia/api/dao/universe/CatalogLoaderTest.java index ddb28055..5e1f51c2 100644 --- a/onyxia-api/src/test/java/fr/insee/onyxia/api/dao/universe/CatalogLoaderTest.java +++ b/onyxia-api/src/test/java/fr/insee/onyxia/api/dao/universe/CatalogLoaderTest.java @@ -84,7 +84,7 @@ public void packageOnClassPathNotFound() { cw.setLocation("classpath:/catalog-loader-test"); catalogLoader.updateCatalog(cw); - String stdErrLogs = TestUtils.tapSystemErr(() -> catalogLoader.updateCatalog(cw)); + String stdErrLogs = TestUtils.tapSystemOut(() -> catalogLoader.updateCatalog(cw)); assertThat( stdErrLogs, diff --git a/onyxia-api/src/test/java/fr/insee/onyxia/api/util/TestUtils.java b/onyxia-api/src/test/java/fr/insee/onyxia/api/util/TestUtils.java index c424d525..ad7ba382 100644 --- a/onyxia-api/src/test/java/fr/insee/onyxia/api/util/TestUtils.java +++ b/onyxia-api/src/test/java/fr/insee/onyxia/api/util/TestUtils.java @@ -5,18 +5,18 @@ import java.io.PrintStream; public class TestUtils { - public static String tapSystemErr(Runnable runnableThatLogs) { - PrintStream standard = System.err; + public static String tapSystemOut(Runnable runnableThatLogs) { + PrintStream standard = System.out; try (ByteArrayOutputStream reroutedOutputStream = new ByteArrayOutputStream()) { try (PrintStream printStream = new PrintStream(reroutedOutputStream)) { - System.setErr(printStream); + System.setOut(printStream); runnableThatLogs.run(); return reroutedOutputStream.toString(); } } catch (IOException e) { throw new RuntimeException(e); } finally { - System.setErr(standard); + System.setOut(standard); } } } diff --git a/onyxia-model/src/main/java/fr/insee/onyxia/model/catalog/CatalogWrapper.java b/onyxia-model/src/main/java/fr/insee/onyxia/model/catalog/CatalogWrapper.java index dbff000a..98f45285 100644 --- a/onyxia-model/src/main/java/fr/insee/onyxia/model/catalog/CatalogWrapper.java +++ b/onyxia-model/src/main/java/fr/insee/onyxia/model/catalog/CatalogWrapper.java @@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import java.util.List; import java.util.Map; +import java.util.Optional; @Schema(description = "A set of packages and charts coming from a same endpoint") public abstract class CatalogWrapper { @@ -28,13 +29,8 @@ public void setPackages(List packages) { this.packages = packages; } - public Pkg getPackageByName(String name) { - for (Pkg pkg : packages) { - if (pkg.getName().equals(name)) { - return pkg; - } - } - return null; + public Optional getPackageByName(String name) { + return packages.stream().filter(pkg -> pkg.getName().equals(name)).findFirst(); } /**