mirror of
https://github.com/Kingsrook/qqq.git
synced 2025-07-17 20:50:44 +00:00
270 lines
10 KiB
XML
270 lines
10 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
~ QQQ - Low-code Application Framework for Engineers.
|
|
~ Copyright (C) 2021-2022. Kingsrook, LLC
|
|
~ 651 N Broad St Ste 205 # 6917 | Middletown DE 19709 | United States
|
|
~ contact@kingsrook.com
|
|
~ https://github.com/Kingsrook/
|
|
~
|
|
~ This program is free software: you can redistribute it and/or modify
|
|
~ it under the terms of the GNU Affero General Public License as
|
|
~ published by the Free Software Foundation, either version 3 of the
|
|
~ License, or (at your option) any later version.
|
|
~
|
|
~ This program is distributed in the hope that it will be useful,
|
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
~ GNU Affero General Public License for more details.
|
|
~
|
|
~ You should have received a copy of the GNU Affero General Public License
|
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
-->
|
|
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-sample-project</artifactId>
|
|
<version>0.2.0-SNAPSHOT</version>
|
|
|
|
<properties>
|
|
<!-- props specifically to this module -->
|
|
<!-- none at this time -->
|
|
|
|
<!-- Common props for all qqq modules -->
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
<maven.compiler.source>17</maven.compiler.source>
|
|
<maven.compiler.target>17</maven.compiler.target>
|
|
<maven.compiler.showDeprecation>true</maven.compiler.showDeprecation>
|
|
<maven.compiler.showWarnings>true</maven.compiler.showWarnings>
|
|
<coverage.haltOnFailure>true</coverage.haltOnFailure>
|
|
<coverage.instructionCoveredRatioMinimum>0.75</coverage.instructionCoveredRatioMinimum>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<!-- other qqq modules deps -->
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-core</artifactId>
|
|
<version>0.2.0-20220726.214150-15</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-module-rdbms</artifactId>
|
|
<version>0.2.0-20220726.214633-12</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-module-filesystem</artifactId>
|
|
<version>0.2.0-20220726.215110-8</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-middleware-javalin</artifactId>
|
|
<version>0.2.0-20220726.215233-6</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-middleware-picocli</artifactId>
|
|
<version>0.2.0-20220726.215232-6</version>
|
|
</dependency>
|
|
|
|
<!-- 3rd party deps specifically for this module -->
|
|
|
|
<!-- Common deps for all qqq modules -->
|
|
<dependency>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>3.1.2</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-api</artifactId>
|
|
<version>2.17.2</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-core</artifactId>
|
|
<version>2.17.2</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-engine</artifactId>
|
|
<version>5.8.2</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<!-- plugins specifically for this module -->
|
|
<plugin>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<configuration>
|
|
<descriptorRefs>
|
|
<descriptorRef>jar-with-dependencies</descriptorRef>
|
|
</descriptorRefs>
|
|
<archive>
|
|
<manifest>
|
|
<mainClass>com.kingsrook.sampleapp.SampleCli</mainClass>
|
|
</manifest>
|
|
</archive>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>3.2.0</version>
|
|
</plugin>
|
|
|
|
<!-- Common plugins for all qqq modules -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.8.1</version>
|
|
<configuration>
|
|
<compilerArgument>-Xlint:unchecked</compilerArgument>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.0.0-M5</version>
|
|
<configuration>
|
|
<argLine>@{jaCoCoArgLine}</argLine>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>3.1.2</version>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>9.0</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<executions>
|
|
<execution>
|
|
<id>validate</id>
|
|
<phase>validate</phase>
|
|
<configuration>
|
|
<configLocation>checkstyle.xml</configLocation>
|
|
<!-- <suppressionsLocation>checkstyle-suppressions.xml</suppressionsLocation> -->
|
|
<encoding>UTF-8</encoding>
|
|
<consoleOutput>true</consoleOutput>
|
|
<failsOnError>false</failsOnError>
|
|
<failOnViolation>true</failOnViolation>
|
|
<violationSeverity>warning</violationSeverity>
|
|
<excludes>**/target/generated-sources/*.*</excludes>
|
|
<!-- <linkXRef>false</linkXRef> -->
|
|
</configuration>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>0.8.8</version>
|
|
<executions>
|
|
<execution>
|
|
<id>pre-unit-test</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
<configuration>
|
|
<propertyName>jaCoCoArgLine</propertyName>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>unit-test-check</id>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
<configuration>
|
|
<!-- Gives us the ability to pass a parameter to not fail due to coverage E.g. -Dcoverage.haltOnFailure=false -->
|
|
<haltOnFailure>${coverage.haltOnFailure}</haltOnFailure>
|
|
<rules>
|
|
<rule>
|
|
<element>BUNDLE</element>
|
|
<limits>
|
|
<limit>
|
|
<counter>INSTRUCTION</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${coverage.instructionCoveredRatioMinimum}</minimum>
|
|
</limit>
|
|
</limits>
|
|
</rule>
|
|
</rules>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>post-unit-test</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<version>3.0.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>test-coverage-summary</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>exec</goal>
|
|
</goals>
|
|
<configuration>
|
|
<executable>sh</executable>
|
|
<arguments>
|
|
<argument>-c</argument>
|
|
<argument>
|
|
<![CDATA[
|
|
echo "Element\nInstructions Missed\nInstruction Coverage\nBranches Missed\nBranch Coverage\nComplexity Missed\nComplexity Hit\nLines Missed\nLines Hit\nMethods Missed\nMethods Hit\nClasses Missed\nClasses Hit\n" > /tmp/$$.headers
|
|
xpath -q -e '/html/body/table/tfoot/tr[1]/td/text()' target/site/jacoco/index.html > /tmp/$$.values
|
|
echo
|
|
echo "Jacoco coverage summary report:"
|
|
echo " See also target/site/jacoco/index.html"
|
|
echo " and https://www.jacoco.org/jacoco/trunk/doc/counters.html"
|
|
echo "------------------------------------------------------------"
|
|
paste /tmp/$$.headers /tmp/$$.values | tail +2 | awk -v FS='\t' '{printf("%-20s %s\n",$1,$2)}'
|
|
rm /tmp/$$.headers /tmp/$$.values
|
|
]]>
|
|
</argument>
|
|
</arguments>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>github-qqq-maven-registry</id>
|
|
<name>GitHub QQQ Maven Registry</name>
|
|
<url>https://maven.pkg.github.com/Kingsrook/qqq-maven-registry</url>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<distributionManagement>
|
|
<repository>
|
|
<id>github-qqq-maven-registry</id>
|
|
<name>GitHub QQQ Maven Registry</name>
|
|
<url>https://maven.pkg.github.com/Kingsrook/qqq-maven-registry</url>
|
|
</repository>
|
|
</distributionManagement>
|
|
|
|
</project>
|