Skip to content

Commit

Permalink
Merge pull request #2508 from DamnClin/migrate-jib
Browse files Browse the repository at this point in the history
Migrate docker plugins
  • Loading branch information
pascalgrimaud authored Jul 12, 2022
2 parents 500e85b + 3b43fc5 commit fb0d12e
Show file tree
Hide file tree
Showing 36 changed files with 329 additions and 1,057 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -56,15 +56,6 @@ public void addDependencyManagement(Project project, Dependency dependency) {
}
}

@Override
public void addPlugin(Project project, Plugin plugin) {
if (project.isMavenProject()) {
mavenService.addPlugin(project, plugin);
} else {
throw new GeneratorException(EXCEPTION_NO_BUILD_TOOL);
}
}

@Override
public void addProperty(Project project, String key, String value) {
if (project.isMavenProject()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ public interface BuildToolService {
void addDependency(Project project, Dependency dependency);
void addDependency(Project project, Dependency dependency, List<Dependency> exclusions);
void addDependencyManagement(Project project, Dependency dependency);
void addPlugin(Project project, Plugin plugin);
void addProperty(Project project, String key, String value);
void addVersionPropertyAndDependency(Project project, String versionProperty, Dependency dependency);

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
import java.util.List;
import org.springframework.stereotype.Service;
import tech.jhipster.lite.generator.buildtool.generic.domain.Dependency;
import tech.jhipster.lite.generator.buildtool.generic.domain.Plugin;
import tech.jhipster.lite.generator.buildtool.maven.domain.MavenModuleFactory;
import tech.jhipster.lite.generator.buildtool.maven.domain.MavenService;
import tech.jhipster.lite.generator.project.domain.Project;
Expand Down Expand Up @@ -38,10 +37,6 @@ public void addDependencyManagement(Project project, Dependency dependency) {
mavenService.addDependencyManagement(project, dependency);
}

public void addPlugin(Project project, Plugin plugin) {
mavenService.addPlugin(project, plugin);
}

public void addProperty(Project project, String key, String version) {
mavenService.addProperty(project, key, version);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import java.util.List;
import java.util.stream.Collectors;
import tech.jhipster.lite.generator.buildtool.generic.domain.Dependency;
import tech.jhipster.lite.generator.buildtool.generic.domain.Plugin;

public class Maven {

Expand Down Expand Up @@ -149,37 +148,6 @@ public static String getExclusions(List<Dependency> exclusions, int indentation)
return begin + body + EXCLUSIONS_END;
}

public static String getPluginHeader(Plugin plugin, int indentation) {
String begin = PLUGIN_BEGIN + LF;

String content = new StringBuilder()
.append(GROUP_ID_BEGIN)
.append(plugin.getGroupId())
.append(GROUP_ID_END)
.append(LF)
.append(ARTIFACT_ID_BEGIN)
.append(plugin.getArtifactId())
.append(ARTIFACT_ID_END)
.toString()
.indent(indentation);

return begin + content;
}

public static String getPlugin(Plugin plugin, int indentation) {
String header = getPluginHeader(plugin, indentation);

StringBuilder additionalBodyBuilder = new StringBuilder();

plugin.getVersion().ifPresent(version -> additionalBodyBuilder.append(VERSION_BEGIN).append(version).append(VERSION_END).append(LF));

plugin.getAdditionalElements().ifPresent(additionalBodyBuilder::append);

String additionalBody = additionalBodyBuilder.toString().indent(indentation);

return header + additionalBody + PLUGIN_END;
}

public static String getProperty(String key, String value) {
return new StringBuilder().append("<").append(key).append(">").append(value).append("</").append(key).append(">").toString();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,8 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import tech.jhipster.lite.common.domain.FileUtils;
import tech.jhipster.lite.common.domain.Generated;
import tech.jhipster.lite.error.domain.Assert;
import tech.jhipster.lite.generator.buildtool.generic.domain.Dependency;
import tech.jhipster.lite.generator.buildtool.generic.domain.Plugin;
import tech.jhipster.lite.generator.project.domain.Project;
import tech.jhipster.lite.generator.project.domain.ProjectRepository;

Expand Down Expand Up @@ -66,48 +64,6 @@ private void addDependency(Project project, Dependency dependency, List<Dependen
}
}

@Override
public void addPlugin(Project project, Plugin plugin) {
addPlugin(project, plugin, NEEDLE_PLUGIN);
}

@Generated(reason = "Soon to be deleted")
private void addPlugin(Project project, Plugin plugin, String needle) {
project.addDefaultConfig(PRETTIER_DEFAULT_INDENT);

int indent = (Integer) project.getConfig(PRETTIER_DEFAULT_INDENT).orElse(DEFAULT_INDENTATION);

int level = NEEDLE_PLUGIN_MANAGEMENT.equals(needle) ? 4 : 3;

String pluginNode = Maven.getPluginHeader(plugin, indent).indent(level * indent);

String pluginRegexp;
if (NEEDLE_PLUGIN_MANAGEMENT.equals(needle)) {
// Checking for plugin declaration in <pluginManagement> section
pluginRegexp =
(
FileUtils.REGEXP_PREFIX_DOTALL +
PLUGIN_MANAGEMENT_BEGIN +
FileUtils.REGEXP_DOT_STAR +
pluginNode +
FileUtils.REGEXP_DOT_STAR +
PLUGIN_MANAGEMENT_END
);
} else {
// Checking for plugin declaration between <plugin> section and needle (not </plugin> as it can conflict with
// <plugin> section in <pluginManagement>)
pluginRegexp =
FileUtils.REGEXP_PREFIX_DOTALL + PLUGIN_BEGIN + FileUtils.REGEXP_DOT_STAR + pluginNode + FileUtils.REGEXP_DOT_STAR + NEEDLE_PLUGIN;
}

if (!projectRepository.containsRegexp(project, "", POM_XML, pluginRegexp)) {
String newPluginNode = Maven.getPlugin(plugin, indent).indent(level * indent);
String pluginWithNeedle = (newPluginNode + indent(level, indent) + needle);

projectRepository.replaceText(project, "", POM_XML, REGEXP_SPACE_STAR + needle, pluginWithNeedle);
}
}

@Override
public void addProperty(Project project, String key, String value) {
project.addDefaultConfig(PRETTIER_DEFAULT_INDENT);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,12 @@
import java.util.List;
import java.util.Optional;
import tech.jhipster.lite.generator.buildtool.generic.domain.Dependency;
import tech.jhipster.lite.generator.buildtool.generic.domain.Plugin;
import tech.jhipster.lite.generator.project.domain.Project;

public interface MavenService {
void addDependency(Project project, Dependency dependency);
void addDependency(Project project, Dependency dependency, List<Dependency> exclusions);
void addDependencyManagement(Project project, Dependency dependency);
void addPlugin(Project project, Plugin plugin);
void addProperty(Project project, String key, String value);
void deleteProperty(Project project, String key);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ private GeneratorAction() {}
public static final String EHCACHE_WITH_JAVA_CONFIG = "ehcache-with-java-config";
public static final String EHCACHE_WITH_XML_CONFIG = "ehcache-with-xml-config";

public static final String ANGULAR = "angular";
public static final String ANGULAR_JWT = "angular-jwt";
public static final String ANGULAR_OAUTH2 = "angular-oauth2";
public static final String ANGULAR_HEALTH = "angular-health";
Expand Down Expand Up @@ -69,9 +68,6 @@ private GeneratorAction() {}

public static final String SPRINGBOOT_PULSAR = "springboot-pulsar";

public static final String JIB = "jib";
public static final String DOCKERFILE = "dockerfile";

public static final String SPRINGBOOT_WEBFLUX_NETTY = "springboot-webflux-netty";

public static final String CLIENT_COMMON_PLAYWRIGHT = "client-common-playwright";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,31 +1,24 @@
package tech.jhipster.lite.generator.server.springboot.docker.application;

import org.springframework.stereotype.Service;
import tech.jhipster.lite.generator.project.domain.Project;
import tech.jhipster.lite.generator.server.springboot.docker.domain.SpringBootDockerService;
import tech.jhipster.lite.generator.server.springboot.docker.domain.SpringBootDockerModuleFactory;
import tech.jhipster.lite.module.domain.JHipsterModule;
import tech.jhipster.lite.module.domain.properties.JHipsterModuleProperties;

@Service
public class SpringBootDockerApplicationService {

private final SpringBootDockerService springBootDockerService;
private final SpringBootDockerModuleFactory factory;

public SpringBootDockerApplicationService(SpringBootDockerService springBootDockerService) {
this.springBootDockerService = springBootDockerService;
public SpringBootDockerApplicationService() {
factory = new SpringBootDockerModuleFactory();
}

public void addJib(Project project) {
this.springBootDockerService.addJib(project);
public JHipsterModule buildJibModule(JHipsterModuleProperties properties) {
return factory.buildJibModule(properties);
}

public void addDockerfile(Project project) {
this.springBootDockerService.addDockerfile(project);
}

public void addJibPlugin(Project project) {
this.springBootDockerService.addJibPlugin(project);
}

public void addJibFiles(Project project) {
this.springBootDockerService.addJibFiles(project);
public JHipsterModule buildDockerFileModule(JHipsterModuleProperties properties) {
return factory.buildDockerFileModule(properties);
}
}

This file was deleted.

Loading

0 comments on commit fb0d12e

Please sign in to comment.