Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
Commit 529761d2 authored by Alexandre.B's avatar Alexandre.B
Browse files

ABEC - Mise à jour de l'installation archetype

parent 862e4ac4
No related branches found
No related tags found
No related merge requests found
Showing
with 182 additions and 239 deletions
FROM maven:3-jdk-8-alpine
WORKDIR /usr/src/app
COPY . /usr/src/app
RUN mvn package
ENV PORT 5000
EXPOSE $PORT
CMD [ "sh", "-c", "mvn -Dserver.port=${PORT} spring-boot:run" ]
......@@ -6,11 +6,10 @@
<artifactId>sample-project-archetype</artifactId>
<version>1.0</version>
<packaging>maven-archetype</packaging>
<name>sample-project-template</name>
<description>Archetype to build jar spring boot micro service</description>
<description>Maven archetype for building Java applications</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<archetype-packaging.version>3.2.1</archetype-packaging.version>
<archetype-packaging.version>3.1.2</archetype-packaging.version>
</properties>
<build>
<extensions>
......@@ -29,5 +28,4 @@
</plugins>
</pluginManagement>
</build>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
name="sample-project-archetype">
<requiredProperties>
<requiredProperty key="groupeId">
<defaultValue>com.spring.boot</defaultValue>
</requiredProperty>
<requiredProperty key="version">
<defaultValue>0.1-SNAPSHOT</defaultValue>
</requiredProperty>
<requiredProperty key="package">
<defaultValue>com.spring.boot.dofus</defaultValue>
</requiredProperty>
<requiredProperty key="serviceClassName">
<defaultValue>MyService</defaultValue>
</requiredProperty>
</requiredProperties>
<fileSets>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/test/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory>src/config</directory>
<includes>
<include>**/*.xml</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory>src/assembly</directory>
<includes>
<include>**/*.xml</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory></directory>
<includes>
<include>README.txt</include>
</includes>
</fileSet>
</fileSets>
<module id="${rootArtifactId}-batch" dir="__rootArtifactId__-batch" name="${rootArtifactId}-batch">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-application" dir="__rootArtifactId__-application" name="${rootArtifactId}-application">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-domain" dir="__rootArtifactId__-domain" name="${rootArtifactId}-domain">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-infrastructure" dir="__rootArtifactId__-infrastructure" name="${rootArtifactId}-infrastructure">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-presentation" dir="__rootArtifactId__-presentation" name="${rootArtifactId}-presentation">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
</archetype-descriptor>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
name="sample-project-archetype">
<requiredProperties>
<requiredProperty key="groupId">
<defaultValue>com.spring.boot</defaultValue>
</requiredProperty>
<requiredProperty key="version">
<defaultValue>0.1-SNAPSHOT</defaultValue>
</requiredProperty>
<requiredProperty key="package">
<defaultValue>com.spring.boot.dofus</defaultValue>
</requiredProperty>
<requiredProperty key="serviceClassName">
<defaultValue>MyService</defaultValue>
</requiredProperty>
</requiredProperties>
<fileSets>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/test/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory>src/config</directory>
<includes>
<include>**/*.xml</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory></directory>
<includes>
<include>README.txt</include>
</includes>
</fileSet>
</fileSets>
<module id="${rootArtifactId}-batch" dir="__rootArtifactId__-batch" name="${rootArtifactId}-batch">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-application" dir="__rootArtifactId__-application" name="${rootArtifactId}-application">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-domain" dir="__rootArtifactId__-domain" name="${rootArtifactId}-domain">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-infrastructure" dir="__rootArtifactId__-infrastructure" name="${rootArtifactId}-infrastructure">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="${rootArtifactId}-presentation" dir="__rootArtifactId__-presentation" name="${rootArtifactId}-presentation">
<fileSets>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8" packaged="true">
<directory>src/test/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
</archetype-descriptor>
\ No newline at end of file
dir = new File(new File(request.outputDirectory), request.artifactId)
idea = new File(dir, ".idea")
def run(String cmd) {
def process = cmd.execute(null, dir)
process.waitForProcessOutput((Appendable)System.out, System.err)
if (process.exitValue() != 0) {
throw new Exception("Command '$cmd' exited with code: ${process.exitValue()}")
}
}
def writeCodeStyle() {
def sb = new StringBuilder()
sb.append('<component name="ProjectCodeStyleConfiguration">\n')
new URL(request.properties["intellijCodeStyleUrl"]).eachLine {
sb.append(" " + it + "\n")
}
sb.append("</component>")
xml = sb.toString()
xml = xml.replaceFirst('<code_scheme name="[^"]+"', '<code_scheme name="Project"')
def codeStyles = new File((File) idea, "codeStyles")
def file = new File(codeStyles, "Project.xml")
file.setText(xml, "UTF-8")
}
def writeInspectionProfile() {
def sb = new StringBuilder()
sb.append('<component name="InspectionProjectProfileManager">\n')
def url = request.properties["intellijInspectionProfileUrl"]
new URL(url).eachLine {
sb.append(" " + it + "\n")
}
sb.append("</component>")
xml = sb.toString()
def m = (~/<option name="myName" value="([^"]+)"/).matcher(xml)
if (!m.find()) {
throw new RuntimeException("Unable to find inspection profile name in " + url)
}
def name = m.group(1)
def inspectionProfiles = new File((File) idea, "inspectionProfiles")
def file = new File(inspectionProfiles, name + ".xml")
file.setText(xml, "UTF-8")
def settings = new File(inspectionProfiles, "profiles_settings.xml")
def contents = settings.getText("UTF-8").replaceFirst("@intellijInspectionProfileName@", name)
settings.setText(contents, "UTF-8")
}
run("mvn -N io.takari:maven:wrapper -DskipNotification")
run("./mvnw sortpom:sort -DskipNotification")
run("./mvnw fmt:format -DskipNotification")
writeCodeStyle()
writeInspectionProfile()
\ No newline at end of file
# Getting Started
### Reference Documentation
For further reference, please consider the following sections:
* [Official Apache Maven documentation](https://maven.apache.org/guides/index.html)
* [Spring Boot Maven Plugin Reference Guide](https://docs.spring.io/spring-boot/docs/2.7.2/maven-plugin/reference/html/)
* [Create an OCI image](https://docs.spring.io/spring-boot/docs/2.7.2/maven-plugin/reference/html/#build-image)
......@@ -7,7 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import java.net.UnknownHostException;
@SpringBootApplication(exclude = { COSAutoConfiguration.class })
public class SampleProjectApplication {
public class ${className}{
public static void main(final String[] args) throws UnknownHostException{
......
......@@ -7,7 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import java.net.UnknownHostException;
@SpringBootApplication(exclude = { COSAutoConfiguration.class })
public class SampleProjectApplication {
public class ${className} {
public static void main(final String[] args) throws UnknownHostException{
SpringApplication.run(SampleProjectApplication.class,args).getEnvironment();
......
......@@ -3,7 +3,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<groupId>${groupeId}</groupId>
<groupId>${groupId}</groupId>
<version>${version}</version>
<packaging>pom</packaging>
......
#Wed Aug 10 17:30:25 CEST 2022
artifactId=sample-project-archetype
groupId=com.spring.example
package=com.spring.example
version=1.0
serviceClassName=MyClassName
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment