org.hl7.fhir.core/pom.xml

798 lines
33 KiB
XML
Raw Normal View History

2019-01-13 15:33:14 -05:00
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2019-11-07 15:09:21 -05:00
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>
2019-01-13 15:33:14 -05:00
2019-11-07 15:09:21 -05:00
<parent>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-deployable-pom</artifactId>
<version>6.4.1</version>
2019-11-07 15:09:21 -05:00
</parent>
2019-01-29 16:56:18 -05:00
2019-11-07 15:09:21 -05:00
<!--
Note: Version of this project and the version of HAPI FHIR are not locked to
each other. It is fine to bump the point version of this POM without affecting
2020-12-01 05:18:07 -05:00
HAPI FHIR
2019-11-07 15:09:21 -05:00
-->
<artifactId>org.hl7.fhir.core</artifactId>
<version>6.1.10-SNAPSHOT</version>
<packaging>pom</packaging>
2019-01-29 16:56:18 -05:00
2019-11-07 15:09:21 -05:00
<properties>
<guava_version>32.0.1-jre</guava_version>
<hapi_fhir_version>6.4.1</hapi_fhir_version>
<validator_test_case_version>1.4.6</validator_test_case_version>
<jackson_version>2.15.2</jackson_version>
<junit_jupiter_version>5.9.2</junit_jupiter_version>
Feature - run JUnit tests from validator_cli (#835) * WIP add initial test running code * Importing test modules fix breaking tests 1 * Clean up pom dependencies, move execution before context load * Re-org and document cli pom * Set more dependencies to compile. Print entries in classpath * Try running via internal Executors * Clearer class names + provide clear output * Clean up test summarys and output + update class regex to junit default * Refactor to avoid having to extend class * Trim down dependency additions in pom + javadoc * Add the rest of the modules to TestExecutor * Parse additional params for classname filter and module * Add experimental JUnit 4 runner in case JUnit 5 hates us. * Include JUnit4 tests via adapters. Need to refactor for better naming. * Update LoadIgTests to JUnit 5 * Gentle refactor, print execution time * Remove unnecessary interface, organize packages * Remove cached resources (need to fix this) * Allow setting of txCache globally for tests + fix r5 tests * Mild refactor of TestExecutor + Reorder test execution * Add fhirTestCasesDirectory to testConfig + get r4 tests working * Add dstu2016may and dstu3 tests * Add dstu2 tests * Add convertors tests * Refactor resourceNameForFile + don't copy existing files * Get all txCache directories centrally and allow all to live in same dir * Start extracting txCache resources * Finish extracting txCache resources * Fix failing GraphQLEngineTest * Try an mvn install for the pull pipeline * Clean and refactor * Test coverage * Fix GraphQLEngineTests for local jar run * More refactoring, more tests * Add bare test for TxCacheResourceExtractor Co-authored-by: dotasek <david.otasek@smilecdr.com>
2022-06-14 17:04:00 -04:00
<junit_platform_launcher_version>1.8.2</junit_platform_launcher_version>
<maven_surefire_version>3.0.0-M5</maven_surefire_version>
<maven_clean_version>3.1.0</maven_clean_version>
<okhttp.version>4.11.0</okhttp.version>
<jacoco_version>0.8.9</jacoco_version>
<lombok_version>1.18.22</lombok_version>
<byte_buddy_version>1.12.14</byte_buddy_version>
<apache_poi_version>5.2.1</apache_poi_version>
<saxon_he_version>9.8.0-15</saxon_he_version>
<maven.compiler.release>11</maven.compiler.release>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.testRelease>11</maven.compiler.testRelease>
<maven.compiler.testSource>11</maven.compiler.testSource>
<maven.compiler.testTarget>11</maven.compiler.testTarget>
<maven-jar-plugin.version>3.2.2</maven-jar-plugin.version>
<checkstyle_config_location>${project.basedir}</checkstyle_config_location>
2019-11-07 15:09:21 -05:00
</properties>
2019-01-13 15:33:14 -05:00
2019-11-07 15:09:21 -05:00
<name>HL7 Core Artifacts</name>
2019-01-13 15:33:14 -05:00
2019-11-07 15:09:21 -05:00
<organization>
<name>Health Level 7</name>
<url>http://hl7.org</url>
</organization>
2019-01-13 15:33:14 -05:00
2020-06-03 13:33:12 -04:00
<modules>
<module>org.hl7.fhir.utilities</module>
<module>org.hl7.fhir.dstu2</module>
<module>org.hl7.fhir.dstu2016may</module>
<module>org.hl7.fhir.dstu3</module>
<module>org.hl7.fhir.r4</module>
<module>org.hl7.fhir.r4b</module>
2020-06-03 13:33:12 -04:00
<module>org.hl7.fhir.r5</module>
<module>org.hl7.fhir.convertors</module>
<module>org.hl7.fhir.validation</module>
<module>org.hl7.fhir.validation.cli</module>
<!-- The report project exists only to aggregate the test results from the other projects into a central report. -->
<module>org.hl7.fhir.report</module>
</modules>
2019-11-07 15:09:21 -05:00
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>github-releases</id>
<url>https://maven.pkg.github.com/FHIR/fhir-test-cases/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
2019-11-07 15:09:21 -05:00
</repositories>
2019-01-13 17:02:28 -05:00
2019-11-07 15:09:21 -05:00
<dependencies>
<!-- Use logback for tests -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
2023-04-21 00:26:44 -04:00
<version>1.2.3</version>
2019-11-07 15:09:21 -05:00
<scope>test</scope>
</dependency>
<!-- Use saxon for xml processing -->
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
</dependency>
2019-11-07 15:09:21 -05:00
</dependencies>
2019-01-13 15:33:14 -05:00
2019-11-07 15:09:21 -05:00
<dependencyManagement>
<dependencies>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-base</artifactId>
<version>${hapi_fhir_version}</version>
<exclusions>
<exclusion>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-utilities</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>org.hl7.fhir.utilities</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-structures-r4</artifactId>
<version>${hapi_fhir_version}</version>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-validation-resources-r4</artifactId>
<version>${hapi_fhir_version}</version>
</dependency>
<dependency>
<groupId>com.atlassian.commonmark</groupId>
<artifactId>commonmark</artifactId>
2022-09-20 04:52:20 -04:00
<version>0.17.0</version>
2019-11-07 15:09:21 -05:00
</dependency>
<dependency>
<groupId>com.atlassian.commonmark</groupId>
<artifactId>commonmark-ext-gfm-tables</artifactId>
2022-09-20 04:52:20 -04:00
<version>0.17.0</version>
2019-11-07 15:09:21 -05:00
</dependency>
<dependency>
<groupId>com.github.rjeschke</groupId>
<artifactId>txtmark</artifactId>
<version>0.13</version>
</dependency>
2021-03-02 16:34:46 -05:00
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-launcher</artifactId>
<version>${junit_platform_launcher_version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
2021-05-19 12:51:51 -04:00
<version>${junit_jupiter_version}</version>
<type>pom</type>
2021-03-02 16:34:46 -05:00
<scope>test</scope>
</dependency>
2022-02-10 13:45:45 -05:00
<dependency>
<groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy</artifactId>
<version>${byte_buddy_version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
<version>${saxon_he_version}</version>
</dependency>
2023-08-14 14:18:33 -04:00
<dependency>
<groupId>org.fhir</groupId>
<artifactId>ucum</artifactId>
2023-08-21 13:22:17 -04:00
<version>1.0.8</version>
2023-08-14 14:18:33 -04:00
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
<!-- Apache POI -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>${apache_poi_version}</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>${apache_poi_version}</version>
<exclusions>
<!-- exclude this because it collides with the needed poi-ooxml-full-->
<exclusion>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-lite</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- include this to replace poi-ooxml-lite in poi-ooxml -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-full</artifactId>
<version>${apache_poi_version}</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>${okhttp.version}</version>
<exclusions>
<!-- Exclude this because older jetbrains pom contains an insecure pom definition-->
<exclusion>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
</exclusion>
<exclusion>
<groupId>com.squareup.okio</groupId>
<artifactId>okio</artifactId>
</exclusion>
<!-- Excluding brotli impl until https://github.com/square/okhttp/issues/7738 is resolved -->
<exclusion>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp-brotli</artifactId>
</exclusion>
<exclusion>
<groupId>com.squareup.okio</groupId>
<artifactId>okio-jvm</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Included because okttp3 used vulnerable versions -->
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>16.0.1</version>
</dependency>
<dependency>
<groupId>com.squareup.okio</groupId>
<artifactId>okio</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>com.squareup.okio</groupId>
<artifactId>okio-jvm</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>logging-interceptor</artifactId>
<version>${okhttp.version}</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>mockwebserver</artifactId>
<version>${okhttp.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava_version}</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok_version}</version>
</dependency>
2023-07-18 11:47:06 -04:00
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson_version}</version>
</dependency>
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf</artifactId>
<version>3.1.2.RELEASE</version>
</dependency>
2023-08-23 12:05:58 -04:00
<dependency>
<groupId>org.ogce</groupId>
<artifactId>xpp3</artifactId>
<version>1.1.6</version>
</dependency>
2023-09-02 12:21:32 -04:00
<dependency>
<groupId>com.nimbusds</groupId>
<artifactId>nimbus-jose-jwt</artifactId>
<version>9.30.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc -->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.43.0.0</version>
</dependency>
2019-11-07 15:09:21 -05:00
</dependencies>
</dependencyManagement>
2019-01-13 15:33:14 -05:00
2019-11-07 15:09:21 -05:00
<build>
Refactor Pull Request Pipeline (#1273) * Try multiple module target directories * Try different format * Try displaying cache task name + multiple caches * Name the maven artifact cache step + add all modules * Start consuming cached builds + targets * Fix job list * Fix other bad params * Fix bad indent * Try test task * Try different value syntax * Add all modules * See if cacheing works from linux to windows * Refactor as testUnits * Trim tested modules * missing colon * It's not an image anymore, it's a unit * Test exec * Test exec for real * Fix parameters format * Fix r5 url for package fetch (#1260) * Fix r5 url for package fetch * Revert previous commit * Make r6 the only packages fetched from build.fhir.org * Update RELEASE_NOTES.md * Update RELEASE_NOTES.md * Release: v6.0.6 ## Validator Changes * no changes ## Other code changes * Update R6 package tgz fetching ***NO_CI*** * Updating version to: 6.0.7-SNAPSHOT and incrementing test cases dependency. * Try using parameters * Try another way * Try third way * Try fourth way * Try fifth way * Try 6 * Try 7 * Apply refactor * Try iterating over images * Try iterating over images 2 * Test all images * Conditionally test multiplatform modules * Test JDKs too * Fix and() * Add JDK image to job names + test JDKs for exec * Better job name for setup * Fix names * more granular test configs * fix repeated jobs * name for exec jobs * fix missing s * Add placeholder Codecov job * Fix complaint about job name * Try moving codecov to test template * Add explicit module for test * Try setting up job name * Try setting up job name * Change job names to use underscore and alphanum * Move codecov job back to master-branch * Fix condition to match ubuntu_java_11 * Publish test reports * Publish test reports * use value for artifact name * Use variable for skipJaCoCo conditions * Skip validation temporarily * Change artifact names. * add jacoco:report-aggregate task * remove leftover cut and paste line * Improve test job display name * Add jacoco results + codecov upload * Fix accidental inclusions in module loop * Remove JaCoCo coverage condition * Bump down JaCoCo plugin * Rearrange JaCoCo plugin * Fix surefire and jacoco output * Add jacoco to pipeline * Try skipping maven cache step * Add codecov token * Add missing MAVEN_CACHE_FOLDER * Change variable syntax * Move setup to own template * Change setup template * rearrange pipeline yml, re-enable validation test module * Update core version bumps * Temporarily disable tests * Move to PR pipeline + Fix unused pool declaration * Disable some more. * Restore disabled and ignored tests * Fix task name + clean up old prototype --------- Co-authored-by: markiantorno <markiantorno@gmail.com>
2023-05-24 13:09:13 -04:00
<pluginManagement>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco_version}</version>
<configuration>
<excludes>
<!-- These are auto-generated files that will exceed the JVM limit on file size.
If these are not excluded Jacoco complains and won't run the validator tests. -->
<exclude>org/hl7/fhir/r5/terminologies/JurisdictionUtilities</exclude>
<exclude>org/hl7/fhir/r5/formats/JsonParser</exclude>
<exclude>org/hl7/fhir/r5/formats/XmlParser</exclude>
<exclude>org/hl7/fhir/r4b/formats/JsonParser</exclude>
<exclude>org/hl7/fhir/r4b/formats/XmlParser</exclude>
<exclude>org/hl7/fhir/r4/formats/JsonParser</exclude>
<exclude>org/hl7/fhir/r4/formats/XmlParser</exclude>
<exclude>org/hl7/fhir/r4/**/*</exclude>
<exclude>org/hl7/fhir/dstu3/**/*</exclude>
<exclude>org/hl7/fhir/dstu2/**/*</exclude>
<exclude>org/hl7/fhir/dstu2016may/**/*</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven_surefire_version}</version>
<configuration>
<forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>
<forkCount>1</forkCount>
<reuseForks>true</reuseForks>
<parallel>classes</parallel>
<trimStackTrace>false</trimStackTrace>
<testFailureIgnore>false</testFailureIgnore>
<!-- We need to include the ${argLine} here so the Jacoco test arguments are included in the
Surefire testing run. This may appear as an error in some IDEs, but it will run regardless.
-->
<argLine>@{argLine} -Xmx5632m</argLine>
<systemPropertyVariables>
<java.locale.providers>COMPAT</java.locale.providers>
</systemPropertyVariables>
<redirectTestOutputToFile>false</redirectTestOutputToFile>
</configuration>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<version>8.2.1</version>
<configuration>
<suppressionFiles>
<suppressionFile>cve-suppression.xml</suppressionFile>
</suppressionFiles>
<formats>sarif,html</formats>
</configuration>
</plugin>
Refactor Pull Request Pipeline (#1273) * Try multiple module target directories * Try different format * Try displaying cache task name + multiple caches * Name the maven artifact cache step + add all modules * Start consuming cached builds + targets * Fix job list * Fix other bad params * Fix bad indent * Try test task * Try different value syntax * Add all modules * See if cacheing works from linux to windows * Refactor as testUnits * Trim tested modules * missing colon * It's not an image anymore, it's a unit * Test exec * Test exec for real * Fix parameters format * Fix r5 url for package fetch (#1260) * Fix r5 url for package fetch * Revert previous commit * Make r6 the only packages fetched from build.fhir.org * Update RELEASE_NOTES.md * Update RELEASE_NOTES.md * Release: v6.0.6 ## Validator Changes * no changes ## Other code changes * Update R6 package tgz fetching ***NO_CI*** * Updating version to: 6.0.7-SNAPSHOT and incrementing test cases dependency. * Try using parameters * Try another way * Try third way * Try fourth way * Try fifth way * Try 6 * Try 7 * Apply refactor * Try iterating over images * Try iterating over images 2 * Test all images * Conditionally test multiplatform modules * Test JDKs too * Fix and() * Add JDK image to job names + test JDKs for exec * Better job name for setup * Fix names * more granular test configs * fix repeated jobs * name for exec jobs * fix missing s * Add placeholder Codecov job * Fix complaint about job name * Try moving codecov to test template * Add explicit module for test * Try setting up job name * Try setting up job name * Change job names to use underscore and alphanum * Move codecov job back to master-branch * Fix condition to match ubuntu_java_11 * Publish test reports * Publish test reports * use value for artifact name * Use variable for skipJaCoCo conditions * Skip validation temporarily * Change artifact names. * add jacoco:report-aggregate task * remove leftover cut and paste line * Improve test job display name * Add jacoco results + codecov upload * Fix accidental inclusions in module loop * Remove JaCoCo coverage condition * Bump down JaCoCo plugin * Rearrange JaCoCo plugin * Fix surefire and jacoco output * Add jacoco to pipeline * Try skipping maven cache step * Add codecov token * Add missing MAVEN_CACHE_FOLDER * Change variable syntax * Move setup to own template * Change setup template * rearrange pipeline yml, re-enable validation test module * Update core version bumps * Temporarily disable tests * Move to PR pipeline + Fix unused pool declaration * Disable some more. * Restore disabled and ignored tests * Fix task name + clean up old prototype --------- Co-authored-by: markiantorno <markiantorno@gmail.com>
2023-05-24 13:09:13 -04:00
</plugins>
</pluginManagement>
2019-11-07 15:09:21 -05:00
<plugins>
2020-08-12 05:40:38 -04:00
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<executions>
<execution>
<phase>process-sources</phase>
<goals>
<goal>checkstyle</goal>
</goals>
<configuration>
<failsOnError>true</failsOnError>
<suppressionsLocation>${project.basedir}/checkstyle_suppressions.xml</suppressionsLocation>
<enableRulesSummary>true</enableRulesSummary>
<enableSeveritySummary>true</enableSeveritySummary>
<consoleOutput>true</consoleOutput>
<configLocation>${checkstyle_config_location}/checkstyle.xml</configLocation>
</configuration>
</execution>
</executions>
</plugin>
2019-11-07 15:09:21 -05:00
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
2019-11-07 15:09:21 -05:00
<configuration>
<release>11</release>
2019-11-07 15:09:21 -05:00
<forceJavacCompilerUse>false</forceJavacCompilerUse>
<encoding>UTF-8</encoding>
2020-06-03 19:18:13 -04:00
<!-- Allows running the compiler in a separate process. If false it uses the built in compiler,
while if true it will use an executable. -->
<fork>true</fork>
2019-11-07 15:09:21 -05:00
<meminitial>512m</meminitial>
<maxmem>4000m</maxmem>
<debug>true</debug>
</configuration>
<executions>
<!-- Replacing default-compile as it is treated specially by maven -->
<execution>
<id>default-compile</id>
<phase>none</phase>
</execution>
<!-- Replacing default-testCompile as it is treated specially by maven -->
<execution>
<id>default-testCompile</id>
<phase>none</phase>
</execution>
<execution>
<id>java-compile</id>
<phase>compile</phase>
<goals> <goal>compile</goal> </goals>
</execution>
<execution>
<id>java-test-compile</id>
<phase>test-compile</phase>
<goals> <goal>testCompile</goal> </goals>
</execution>
</executions>
Feature - run JUnit tests from validator_cli (#835) * WIP add initial test running code * Importing test modules fix breaking tests 1 * Clean up pom dependencies, move execution before context load * Re-org and document cli pom * Set more dependencies to compile. Print entries in classpath * Try running via internal Executors * Clearer class names + provide clear output * Clean up test summarys and output + update class regex to junit default * Refactor to avoid having to extend class * Trim down dependency additions in pom + javadoc * Add the rest of the modules to TestExecutor * Parse additional params for classname filter and module * Add experimental JUnit 4 runner in case JUnit 5 hates us. * Include JUnit4 tests via adapters. Need to refactor for better naming. * Update LoadIgTests to JUnit 5 * Gentle refactor, print execution time * Remove unnecessary interface, organize packages * Remove cached resources (need to fix this) * Allow setting of txCache globally for tests + fix r5 tests * Mild refactor of TestExecutor + Reorder test execution * Add fhirTestCasesDirectory to testConfig + get r4 tests working * Add dstu2016may and dstu3 tests * Add dstu2 tests * Add convertors tests * Refactor resourceNameForFile + don't copy existing files * Get all txCache directories centrally and allow all to live in same dir * Start extracting txCache resources * Finish extracting txCache resources * Fix failing GraphQLEngineTest * Try an mvn install for the pull pipeline * Clean and refactor * Test coverage * Fix GraphQLEngineTests for local jar run * More refactoring, more tests * Add bare test for TxCacheResourceExtractor Co-authored-by: dotasek <david.otasek@smilecdr.com>
2022-06-14 17:04:00 -04:00
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven-jar-plugin.version}</version>
Feature - run JUnit tests from validator_cli (#835) * WIP add initial test running code * Importing test modules fix breaking tests 1 * Clean up pom dependencies, move execution before context load * Re-org and document cli pom * Set more dependencies to compile. Print entries in classpath * Try running via internal Executors * Clearer class names + provide clear output * Clean up test summarys and output + update class regex to junit default * Refactor to avoid having to extend class * Trim down dependency additions in pom + javadoc * Add the rest of the modules to TestExecutor * Parse additional params for classname filter and module * Add experimental JUnit 4 runner in case JUnit 5 hates us. * Include JUnit4 tests via adapters. Need to refactor for better naming. * Update LoadIgTests to JUnit 5 * Gentle refactor, print execution time * Remove unnecessary interface, organize packages * Remove cached resources (need to fix this) * Allow setting of txCache globally for tests + fix r5 tests * Mild refactor of TestExecutor + Reorder test execution * Add fhirTestCasesDirectory to testConfig + get r4 tests working * Add dstu2016may and dstu3 tests * Add dstu2 tests * Add convertors tests * Refactor resourceNameForFile + don't copy existing files * Get all txCache directories centrally and allow all to live in same dir * Start extracting txCache resources * Finish extracting txCache resources * Fix failing GraphQLEngineTest * Try an mvn install for the pull pipeline * Clean and refactor * Test coverage * Fix GraphQLEngineTests for local jar run * More refactoring, more tests * Add bare test for TxCacheResourceExtractor Co-authored-by: dotasek <david.otasek@smilecdr.com>
2022-06-14 17:04:00 -04:00
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
2019-11-07 15:09:21 -05:00
</plugin>
<plugin>
<groupId>org.basepom.maven</groupId>
<artifactId>duplicate-finder-maven-plugin</artifactId>
<executions>
<execution>
<id>default</id>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
<inherited>true</inherited>
</execution>
</executions>
<configuration>
<printEqualFiles>false</printEqualFiles>
<failBuildInCaseOfDifferentContentConflict>true</failBuildInCaseOfDifferentContentConflict>
<failBuildInCaseOfEqualContentConflict>true</failBuildInCaseOfEqualContentConflict>
<failBuildInCaseOfConflict>true</failBuildInCaseOfConflict>
<checkCompileClasspath>true</checkCompileClasspath>
<checkRuntimeClasspath>false</checkRuntimeClasspath>
<checkTestClasspath>false</checkTestClasspath>
<skip>false</skip>
<quiet>false</quiet>
<preferLocal>true</preferLocal>
<useResultFile>true</useResultFile>
<resultFileMinClasspathCount>2</resultFileMinClasspathCount>
<resultFile>${project.build.directory}/duplicate-finder-result.xml</resultFile>
<ignoredDependencies>
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>javax.activation-api</artifactId>
</dependency>
<dependency>
<groupId>com.helger</groupId>
<artifactId>ph-schematron</artifactId>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
<dependency>
<groupId>org.jscience</groupId>
<artifactId>jscience</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jcl</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jcl</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>annotations</artifactId>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derbyclient</artifactId>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derbynet</artifactId>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derbyclient</artifactId>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>ooxml-schemas</artifactId>
</dependency>
</ignoredDependencies>
<ignoredResourcePatterns>
<ignoredResourcePattern>changelog.txt</ignoredResourcePattern>
<ignoredResource>javac.bat</ignoredResource>
<ignoredResource>javac.sh</ignoredResource>
2019-11-07 15:09:21 -05:00
<ignoredResource>about.html</ignoredResource>
<ignoredResource>changelog.xml</ignoredResource>
</ignoredResourcePatterns>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
2021-02-08 10:40:11 -05:00
<_nouses>true</_nouses>
<_removeheaders>Built-By, Include-Resource, Private-Package, Require-Capability</_removeheaders>
<!-- No need to disable normal OSGi class loading
<Fragment-Host>
ca.uhn.hapi.fhir.hapi-fhir-base
</Fragment-Host>
-->
2019-11-07 15:09:21 -05:00
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<configuration>
<skipUpdateLicense>true</skipUpdateLicense>
</configuration>
</plugin>
Refactor Pull Request Pipeline (#1273) * Try multiple module target directories * Try different format * Try displaying cache task name + multiple caches * Name the maven artifact cache step + add all modules * Start consuming cached builds + targets * Fix job list * Fix other bad params * Fix bad indent * Try test task * Try different value syntax * Add all modules * See if cacheing works from linux to windows * Refactor as testUnits * Trim tested modules * missing colon * It's not an image anymore, it's a unit * Test exec * Test exec for real * Fix parameters format * Fix r5 url for package fetch (#1260) * Fix r5 url for package fetch * Revert previous commit * Make r6 the only packages fetched from build.fhir.org * Update RELEASE_NOTES.md * Update RELEASE_NOTES.md * Release: v6.0.6 ## Validator Changes * no changes ## Other code changes * Update R6 package tgz fetching ***NO_CI*** * Updating version to: 6.0.7-SNAPSHOT and incrementing test cases dependency. * Try using parameters * Try another way * Try third way * Try fourth way * Try fifth way * Try 6 * Try 7 * Apply refactor * Try iterating over images * Try iterating over images 2 * Test all images * Conditionally test multiplatform modules * Test JDKs too * Fix and() * Add JDK image to job names + test JDKs for exec * Better job name for setup * Fix names * more granular test configs * fix repeated jobs * name for exec jobs * fix missing s * Add placeholder Codecov job * Fix complaint about job name * Try moving codecov to test template * Add explicit module for test * Try setting up job name * Try setting up job name * Change job names to use underscore and alphanum * Move codecov job back to master-branch * Fix condition to match ubuntu_java_11 * Publish test reports * Publish test reports * use value for artifact name * Use variable for skipJaCoCo conditions * Skip validation temporarily * Change artifact names. * add jacoco:report-aggregate task * remove leftover cut and paste line * Improve test job display name * Add jacoco results + codecov upload * Fix accidental inclusions in module loop * Remove JaCoCo coverage condition * Bump down JaCoCo plugin * Rearrange JaCoCo plugin * Fix surefire and jacoco output * Add jacoco to pipeline * Try skipping maven cache step * Add codecov token * Add missing MAVEN_CACHE_FOLDER * Change variable syntax * Move setup to own template * Change setup template * rearrange pipeline yml, re-enable validation test module * Update core version bumps * Temporarily disable tests * Move to PR pipeline + Fix unused pool declaration * Disable some more. * Restore disabled and ignored tests * Fix task name + clean up old prototype --------- Co-authored-by: markiantorno <markiantorno@gmail.com>
2023-05-24 13:09:13 -04:00
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
<version>1.22</version>
<configuration>
<signature>
<groupId>net.sf.androidscents.signature</groupId>
<artifactId>android-api-level-26</artifactId>
<version>8.0.0_r2</version>
</signature>
<failOnError>false</failOnError>
</configuration>
<executions>
<execution>
<id>check-android-26-compliance</id>
<phase>test</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
2019-11-07 15:09:21 -05:00
</plugins>
2019-11-07 15:09:21 -05:00
</build>
<profiles>
Refactor Pull Request Pipeline (#1273) * Try multiple module target directories * Try different format * Try displaying cache task name + multiple caches * Name the maven artifact cache step + add all modules * Start consuming cached builds + targets * Fix job list * Fix other bad params * Fix bad indent * Try test task * Try different value syntax * Add all modules * See if cacheing works from linux to windows * Refactor as testUnits * Trim tested modules * missing colon * It's not an image anymore, it's a unit * Test exec * Test exec for real * Fix parameters format * Fix r5 url for package fetch (#1260) * Fix r5 url for package fetch * Revert previous commit * Make r6 the only packages fetched from build.fhir.org * Update RELEASE_NOTES.md * Update RELEASE_NOTES.md * Release: v6.0.6 ## Validator Changes * no changes ## Other code changes * Update R6 package tgz fetching ***NO_CI*** * Updating version to: 6.0.7-SNAPSHOT and incrementing test cases dependency. * Try using parameters * Try another way * Try third way * Try fourth way * Try fifth way * Try 6 * Try 7 * Apply refactor * Try iterating over images * Try iterating over images 2 * Test all images * Conditionally test multiplatform modules * Test JDKs too * Fix and() * Add JDK image to job names + test JDKs for exec * Better job name for setup * Fix names * more granular test configs * fix repeated jobs * name for exec jobs * fix missing s * Add placeholder Codecov job * Fix complaint about job name * Try moving codecov to test template * Add explicit module for test * Try setting up job name * Try setting up job name * Change job names to use underscore and alphanum * Move codecov job back to master-branch * Fix condition to match ubuntu_java_11 * Publish test reports * Publish test reports * use value for artifact name * Use variable for skipJaCoCo conditions * Skip validation temporarily * Change artifact names. * add jacoco:report-aggregate task * remove leftover cut and paste line * Improve test job display name * Add jacoco results + codecov upload * Fix accidental inclusions in module loop * Remove JaCoCo coverage condition * Bump down JaCoCo plugin * Rearrange JaCoCo plugin * Fix surefire and jacoco output * Add jacoco to pipeline * Try skipping maven cache step * Add codecov token * Add missing MAVEN_CACHE_FOLDER * Change variable syntax * Move setup to own template * Change setup template * rearrange pipeline yml, re-enable validation test module * Update core version bumps * Temporarily disable tests * Move to PR pipeline + Fix unused pool declaration * Disable some more. * Restore disabled and ignored tests * Fix task name + clean up old prototype --------- Co-authored-by: markiantorno <markiantorno@gmail.com>
2023-05-24 13:09:13 -04:00
<profile>
<id>JACOCO</id>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<dumpOnExit>true</dumpOnExit>
</configuration>
<executions>
<execution>
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>surefire-java-9-plus</id>
<activation>
<jdk>[9,)</jdk>
</activation>
<build>
<plugins>
<plugin>
Refactor Pull Request Pipeline (#1273) * Try multiple module target directories * Try different format * Try displaying cache task name + multiple caches * Name the maven artifact cache step + add all modules * Start consuming cached builds + targets * Fix job list * Fix other bad params * Fix bad indent * Try test task * Try different value syntax * Add all modules * See if cacheing works from linux to windows * Refactor as testUnits * Trim tested modules * missing colon * It's not an image anymore, it's a unit * Test exec * Test exec for real * Fix parameters format * Fix r5 url for package fetch (#1260) * Fix r5 url for package fetch * Revert previous commit * Make r6 the only packages fetched from build.fhir.org * Update RELEASE_NOTES.md * Update RELEASE_NOTES.md * Release: v6.0.6 ## Validator Changes * no changes ## Other code changes * Update R6 package tgz fetching ***NO_CI*** * Updating version to: 6.0.7-SNAPSHOT and incrementing test cases dependency. * Try using parameters * Try another way * Try third way * Try fourth way * Try fifth way * Try 6 * Try 7 * Apply refactor * Try iterating over images * Try iterating over images 2 * Test all images * Conditionally test multiplatform modules * Test JDKs too * Fix and() * Add JDK image to job names + test JDKs for exec * Better job name for setup * Fix names * more granular test configs * fix repeated jobs * name for exec jobs * fix missing s * Add placeholder Codecov job * Fix complaint about job name * Try moving codecov to test template * Add explicit module for test * Try setting up job name * Try setting up job name * Change job names to use underscore and alphanum * Move codecov job back to master-branch * Fix condition to match ubuntu_java_11 * Publish test reports * Publish test reports * use value for artifact name * Use variable for skipJaCoCo conditions * Skip validation temporarily * Change artifact names. * add jacoco:report-aggregate task * remove leftover cut and paste line * Improve test job display name * Add jacoco results + codecov upload * Fix accidental inclusions in module loop * Remove JaCoCo coverage condition * Bump down JaCoCo plugin * Rearrange JaCoCo plugin * Fix surefire and jacoco output * Add jacoco to pipeline * Try skipping maven cache step * Add codecov token * Add missing MAVEN_CACHE_FOLDER * Change variable syntax * Move setup to own template * Change setup template * rearrange pipeline yml, re-enable validation test module * Update core version bumps * Temporarily disable tests * Move to PR pipeline + Fix unused pool declaration * Disable some more. * Restore disabled and ignored tests * Fix task name + clean up old prototype --------- Co-authored-by: markiantorno <markiantorno@gmail.com>
2023-05-24 13:09:13 -04:00
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
Refactor Pull Request Pipeline (#1273) * Try multiple module target directories * Try different format * Try displaying cache task name + multiple caches * Name the maven artifact cache step + add all modules * Start consuming cached builds + targets * Fix job list * Fix other bad params * Fix bad indent * Try test task * Try different value syntax * Add all modules * See if cacheing works from linux to windows * Refactor as testUnits * Trim tested modules * missing colon * It's not an image anymore, it's a unit * Test exec * Test exec for real * Fix parameters format * Fix r5 url for package fetch (#1260) * Fix r5 url for package fetch * Revert previous commit * Make r6 the only packages fetched from build.fhir.org * Update RELEASE_NOTES.md * Update RELEASE_NOTES.md * Release: v6.0.6 ## Validator Changes * no changes ## Other code changes * Update R6 package tgz fetching ***NO_CI*** * Updating version to: 6.0.7-SNAPSHOT and incrementing test cases dependency. * Try using parameters * Try another way * Try third way * Try fourth way * Try fifth way * Try 6 * Try 7 * Apply refactor * Try iterating over images * Try iterating over images 2 * Test all images * Conditionally test multiplatform modules * Test JDKs too * Fix and() * Add JDK image to job names + test JDKs for exec * Better job name for setup * Fix names * more granular test configs * fix repeated jobs * name for exec jobs * fix missing s * Add placeholder Codecov job * Fix complaint about job name * Try moving codecov to test template * Add explicit module for test * Try setting up job name * Try setting up job name * Change job names to use underscore and alphanum * Move codecov job back to master-branch * Fix condition to match ubuntu_java_11 * Publish test reports * Publish test reports * use value for artifact name * Use variable for skipJaCoCo conditions * Skip validation temporarily * Change artifact names. * add jacoco:report-aggregate task * remove leftover cut and paste line * Improve test job display name * Add jacoco results + codecov upload * Fix accidental inclusions in module loop * Remove JaCoCo coverage condition * Bump down JaCoCo plugin * Rearrange JaCoCo plugin * Fix surefire and jacoco output * Add jacoco to pipeline * Try skipping maven cache step * Add codecov token * Add missing MAVEN_CACHE_FOLDER * Change variable syntax * Move setup to own template * Change setup template * rearrange pipeline yml, re-enable validation test module * Update core version bumps * Temporarily disable tests * Move to PR pipeline + Fix unused pool declaration * Disable some more. * Restore disabled and ignored tests * Fix task name + clean up old prototype --------- Co-authored-by: markiantorno <markiantorno@gmail.com>
2023-05-24 13:09:13 -04:00
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>github-repo</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>deployToGitHub</name>
</property>
</activation>
<distributionManagement>
<snapshotRepository>
<id>github</id>
<url>https://maven.pkg.github.com/hapifhir/org.hl7.fhir.core</url>
</snapshotRepository>
<repository>
<id>github</id>
<url>https://maven.pkg.github.com/hapifhir/org.hl7.fhir.core</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<keyname>${gpg.keyname}</keyname>
<passphraseServerId>${gpg.keyname}</passphraseServerId>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>ossrh-repo</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>deployToSonatype</name>
</property>
</activation>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
2021-12-13 18:28:41 -05:00
<version>1.6.8</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<keyname>${gpg.keyname}</keyname>
<passphraseServerId>${gpg.keyname}</passphraseServerId>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>cleanTxCache</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>fhir.txcache.clean</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>${maven_clean_version}</version>
<configuration>
<filesets>
<fileset>
<directory>src/test/resources/txCache</directory>
<includes>
<include>**/*</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>OWASP_CHECK</id>
<build>
<plugins>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
2023-08-01 14:03:40 -04:00
<configuration>
<suppressionFiles>
<suppressionFile>owasp-suppression-file.xml</suppressionFile>
</suppressionFiles>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
<configuration>
<failBuildOnCVSS>10</failBuildOnCVSS>
<skipTestScope>true</skipTestScope>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<reportSets>
<reportSet>
<reports>
<report>aggregate</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
2020-08-11 17:39:26 -04:00
</project>