From 3cdbe583c45e3d33f542380797b1b84d96b588dd Mon Sep 17 00:00:00 2001 From: Miguel Reboiro Jato Date: Thu, 21 Sep 2023 00:58:27 +0200 Subject: [PATCH] Adds test report and first release assembly An HTML report is now generated for the tests and the project can be packaged for the first release using the `mvn package` command. --- .gitignore | 1 + README.md | 15 +++++ pom.xml | 63 +++++++++++++++++++- src/main/assembly/assembly-first-release.xml | 25 ++++++++ 4 files changed, 101 insertions(+), 3 deletions(-) create mode 100644 src/main/assembly/assembly-first-release.xml diff --git a/.gitignore b/.gitignore index 6198db2..319c122 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ target #General bak +*.tar.gz diff --git a/README.md b/README.md index c560029..71595a0 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,21 @@ En el desarrollo de este proyecto debe utilizarse: * Java 11 * MySQL 8+ +* Maven 3.6+ +* Git 2+ (en el caso de querer hacer commits, lo cual es recomendable) + +Es importante que antes de empezar a trabajar se edite el fichero `pom.xml` para: + +* Poner en la propiedad `group.name` el nombre del grupo en Moovi. +* Descomentar y completar la sección `developers` con los datos de los miembros del grupo. + +### Comandos útiles +Algunos comandos Maven que te serán útiles son: + +* `mvn test`: ejecuta los tests y genera un informe en `target/site/surefire-report.html`. +* `mvn exec:java`: ejecuta la aplicación (es decir, ejecuta `Launcher`). +* `mvn exec:java -Dexec.args="arg1 arg2 arg3"`: ejecuta la aplicación con los parámetos `arg1 arg2 arg3`. Por ejemplo, `mvn exec:java -Dexec.args="config.props"` ejecuta `Launcher` pasándole el parámetro `config.props`. +* `mvn package`: empaqueta la aplicación. Generará un fichero `hybrid-server-.r1.tar.gz` en la raíz del proyecto que es el que habrá que entregar en Moovi en la primera entrega. ## Arquitectura diff --git a/pom.xml b/pom.xml index da5ee9a..55fba46 100644 --- a/pom.xml +++ b/pom.xml @@ -30,7 +30,8 @@ [Login el email de la ESEI (p.ej. student@esei.uvigo.es => student)] [xxx@esei.uvigo.es] [Nombre completo] - Escola Superior de Enxeñaría Informática - Universidade de Vigo + Escola Superior de Enxeñaría Informática - Universidade de + Vigo student @@ -39,7 +40,8 @@ [Login el email de la ESEI (p.ej. student@esei.uvigo.es => student)] [xxx@esei.uvigo.es] [Nombre completo] - Escola Superior de Enxeñaría Informática - Universidade de Vigo + Escola Superior de Enxeñaría Informática - Universidade de + Vigo student @@ -47,6 +49,8 @@ + [nombre_del_grupo] + 11 11 UTF-8 @@ -69,6 +73,7 @@ 3.1.0 3.11.0 + 3.3.0 3.1.2 @@ -176,12 +181,64 @@ maven-surefire-plugin ${maven-surefire-plugin.version} + true - es/uvigo/esei/dai/hybridserver/HybridServerFirstReleaseTestSuite.java + es/uvigo/esei/dai/hybridserver/HybridServerFirstReleaseTestSuite.java + + + org.apache.maven.plugins + maven-surefire-report-plugin + ${maven-surefire-plugin.version} + + + test + + report-only + + + + + + org.apache.maven.plugins + maven-assembly-plugin + + + package + + single + + + false + hybrid-server-${group.name}.r1 + ${project.basedir} + + + src/main/assembly/assembly-first-release.xml + + + + + + + + + + + org.apache.maven.plugins + maven-surefire-report-plugin + ${maven-surefire-plugin.version} + + + org.apache.maven.plugins + maven-jxr-plugin + ${maven-jxr-plugin.version} + + + diff --git a/src/main/assembly/assembly-first-release.xml b/src/main/assembly/assembly-first-release.xml new file mode 100644 index 0000000..85b7e4d --- /dev/null +++ b/src/main/assembly/assembly-first-release.xml @@ -0,0 +1,25 @@ + + first-release + + tar.gz + + false + + + ${project.build.sourceDirectory} + src + + + ${project.build.directory}/site + site + + + + + pom.xml + / + + + -- 2.18.1