-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Issue_183][WFLY-19397] Add a Jakarta Data TCK runner
- Loading branch information
1 parent
4a88ca4
commit 993b3a6
Showing
26 changed files
with
3,102 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -52,3 +52,6 @@ build.metadata | |
# Derby logs | ||
derby.log | ||
/bin/ | ||
|
||
# Jakarta Data TCK logs | ||
*DataTCK*.log |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
# Jakarta Data TCK Runner for WildFly | ||
|
||
This project is a Jakarta Data TCK runner for WildFly. It allows execution of | ||
the Jakarta Data TCK tests against WildFly. | ||
|
||
## Running against a WildFly provisioned by the TCK runner | ||
|
||
By default, the runner will provision a WildFly instance that includes the `jakarta-data` layer. | ||
|
||
Use the `wildfly.feature.pack.artifactId`, `wildfly.feature.pack.artifactId` and `version.org.wildfly.wildfly` system properties to control the GAV of the feature pack used to provision the installation. All have default values; see `wildfly-runner/pom.xml` for the current defaults. | ||
|
||
## Running against an externally provisioned WildFly | ||
|
||
To disable local provisioning and instead run against a WildFly installation that was provisioned externally, use the `jboss-home` system property to point at your installation. | ||
|
||
`mvn clean verify -Djboss.home=/home/developer/my-wildfly` | ||
|
||
The TCK runner will execute a CLI script to attempt to add the `jakarta-data` subsystem if it's not already present in the `standalone.xml` configuration. (If it is present, the script will do nothing.) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,228 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<!-- | ||
~ Copyright (c) 2022,2023 Contributors to the Eclipse Foundation | ||
~ | ||
~ Licensed under the Apache License, Version 2.0 (the "License"); | ||
~ you may not use this file except in compliance with the License. | ||
~ You may obtain a copy of the License at | ||
~ | ||
~ http://www.apache.org/licenses/LICENSE-2.0 | ||
~ | ||
~ Unless required by applicable law or agreed to in writing, software | ||
~ distributed under the License is distributed on an "AS IS" BASIS, | ||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
~ See the License for the specific language governing permissions and | ||
~ limitations under the License. | ||
~ | ||
~ SPDX-License-Identifier: Apache-2.0 | ||
--> | ||
<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> | ||
|
||
<parent> | ||
<groupId>org.jboss</groupId> | ||
<artifactId>jboss-parent</artifactId> | ||
<version>46</version> | ||
</parent> | ||
|
||
<groupId>org.wildfly.data.tck</groupId> | ||
<artifactId>data-tck-parent</artifactId> | ||
<version>1.0.0-SNAPSHOT</version> | ||
<packaging>pom</packaging> | ||
|
||
<name>WildFly Jakarta Data TCK Runner Parent</name> | ||
|
||
<properties> | ||
|
||
<version.jakarta.data.jakarta-data-api>1.0.0</version.jakarta.data.jakarta-data-api> | ||
<version.jakarta.data.tck>1.0.0</version.jakarta.data.tck> | ||
<version.jakarta.enterprise>4.1.0</version.jakarta.enterprise> | ||
<version.jakarta.servlet.jakarta-servlet-api>6.1.0</version.jakarta.servlet.jakarta-servlet-api> | ||
<version.jakarta.validation.jakarta-validation-api>3.1.0</version.jakarta.validation.jakarta-validation-api> | ||
<version.org.hibernate.orm>6.6.1.Final</version.org.hibernate.orm> | ||
<version.org.jboss.arquillian.core>1.9.1.Final</version.org.jboss.arquillian.core> | ||
<version.org.jboss.arquillian.jakarta>10.0.0.Final</version.org.jboss.arquillian.jakarta> | ||
<version.org.jboss.logging.jboss-logging>3.6.1.Final</version.org.jboss.logging.jboss-logging> | ||
<version.org.jboss.shrinkwrap.shrinkwrap>1.2.6</version.org.jboss.shrinkwrap.shrinkwrap> | ||
<version.org.junit>5.10.2</version.org.junit> | ||
|
||
<required.java.build.version>[17,)</required.java.build.version> | ||
<jboss.home>${project.build.directory}/wildfly</jboss.home> | ||
<wildfly.feature.pack.artifactId>wildfly-preview-feature-pack</wildfly.feature.pack.artifactId> | ||
<embedded.server.stability>preview</embedded.server.stability> | ||
</properties> | ||
|
||
<!-- The Junit5 test frameworks --> | ||
<dependencyManagement> | ||
<dependencies> | ||
<dependency> | ||
<groupId>org.junit</groupId> | ||
<artifactId>junit-bom</artifactId> | ||
<version>${version.org.junit}</version> | ||
<type>pom</type> | ||
<scope>import</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.jboss.arquillian</groupId> | ||
<artifactId>arquillian-bom</artifactId> | ||
<version>${version.org.jboss.arquillian.core}</version> | ||
<type>pom</type> | ||
<scope>import</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.jboss.arquillian.jakarta</groupId> | ||
<artifactId>arquillian-jakarta-bom</artifactId> | ||
<version>${version.org.jboss.arquillian.jakarta}</version> | ||
<type>pom</type> | ||
<scope>import</scope> | ||
</dependency> | ||
|
||
<!-- The API --> | ||
<dependency> | ||
<groupId>jakarta.data</groupId> | ||
<artifactId>jakarta.data-api</artifactId> | ||
<version>${version.jakarta.data.jakarta-data-api}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>jakarta.servlet</groupId> | ||
<artifactId>jakarta.servlet-api</artifactId> | ||
<version>${version.jakarta.servlet.jakarta-servlet-api}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>jakarta.enterprise</groupId> | ||
<artifactId>jakarta.enterprise.cdi-api</artifactId> | ||
<version>${version.jakarta.enterprise}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>jakarta.validation</groupId> | ||
<artifactId>jakarta.validation-api</artifactId> | ||
<version>${version.jakarta.validation.jakarta-validation-api}</version> | ||
<scope>provided</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.jboss.logging</groupId> | ||
<artifactId>jboss-logging</artifactId> | ||
<version>${version.org.jboss.logging.jboss-logging}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>org.jboss.shrinkwrap</groupId> | ||
<artifactId>shrinkwrap-api</artifactId> | ||
<version>${version.org.jboss.shrinkwrap.shrinkwrap}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>hibernate-data-tck-tests</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>jakarta.data</groupId> | ||
<artifactId>jakarta.data-tools</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
</dependencies> | ||
</dependencyManagement> | ||
|
||
<dependencies> | ||
<dependency> | ||
<groupId>org.jboss.shrinkwrap</groupId> | ||
<artifactId>shrinkwrap-api</artifactId> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.jboss.arquillian.junit5</groupId> | ||
<artifactId>arquillian-junit5-core</artifactId> | ||
</dependency> | ||
</dependencies> | ||
|
||
<modules> | ||
<module>tools</module> | ||
<module>testjar</module> | ||
<module>wildfly-runner</module> | ||
</modules> | ||
|
||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-deploy-plugin</artifactId> | ||
<configuration> | ||
<!-- We don't control the 'tools' module GAV. | ||
DO NOT DEPLOY IT! | ||
There's no need to deploy the other modules either, | ||
so turn of deploy at this parent level. | ||
--> | ||
<skip>true</skip> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-compiler-plugin</artifactId> | ||
<configuration> | ||
<release>17</release> | ||
</configuration> | ||
</plugin> | ||
<!-- Require Java 17+ --> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-enforcer-plugin</artifactId> | ||
<version>${version.enforcer.plugin}</version> | ||
<executions> | ||
<execution> | ||
<id>require-java17-build</id> | ||
<goals> | ||
<goal>enforce</goal> | ||
</goals> | ||
<phase>compile</phase> | ||
<configuration> | ||
<rules> | ||
<requireJavaVersion> | ||
<version>${required.java.build.version}</version> | ||
</requireJavaVersion> | ||
</rules> | ||
</configuration> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
|
||
<profiles> | ||
<!-- This profile enables consuming artifacts from the Jakarta staging repository --> | ||
<profile> | ||
<id>staging</id> | ||
<activation> | ||
<activeByDefault>false</activeByDefault> | ||
</activation> | ||
<repositories> | ||
<repository> | ||
<id>sonatype-nexus-staging</id> | ||
<name>Sonatype Nexus Staging</name> | ||
<url>https://jakarta.oss.sonatype.org/content/repositories/staging/</url> | ||
<releases> | ||
<enabled>true</enabled> | ||
</releases> | ||
<snapshots> | ||
<enabled>false</enabled> | ||
</snapshots> | ||
</repository> | ||
</repositories> | ||
<pluginRepositories> | ||
<pluginRepository> | ||
<id>sonatype-nexus-staging</id> | ||
<name>Sonatype Nexus Staging</name> | ||
<url>https://jakarta.oss.sonatype.org/content/repositories/staging/</url> | ||
<releases> | ||
<enabled>true</enabled> | ||
</releases> | ||
<snapshots> | ||
<enabled>false</enabled> | ||
</snapshots> | ||
</pluginRepository> | ||
</pluginRepositories> | ||
</profile> | ||
</profiles> | ||
</project> |
Oops, something went wrong.