diff --git a/release/artifact-install.pom b/release/artifact-install.pom index 7ecc495901..72c62d3ba4 100644 --- a/release/artifact-install.pom +++ b/release/artifact-install.pom @@ -27,6 +27,22 @@ maven-install-plugin 3.1.3 + + install-tck-bom + package + + install-file + + + jakarta.tck + artifacts-bom + ${project.version} + pom + artifacts-bom-${project.version}.pom + false + + + install-tck-parent package diff --git a/release/artifacts-bom.xml b/release/artifacts-bom.xml new file mode 100644 index 0000000000..68f4ef9117 --- /dev/null +++ b/release/artifacts-bom.xml @@ -0,0 +1,175 @@ + + + + + + 4.0.0 + jakarta.tck + artifacts-bom + ${project.version} + pom + + + + + + + jakarta.tck + websocket-tck-common + ${project.version} + + + jakarta.tck + cdi-tck-ee-impl + ${project.version} + + + jakarta.tck + jsonb-platform-tck + ${project.version} + + + jakarta.tck + websocket-docs + ${project.version} + + + jakarta.tck + persistence-platform-tck-tests + ${project.version} + + + jakarta.tck + assembly-tck + ${project.version} + + + jakarta.tck + rest-platform-tck + ${project.version} + + + jakarta.tck + tags-tck + ${project.version} + + + jakarta.tck + websocket-tck-platform-tests + ${project.version} + + + jakarta.tck + connector + ${project.version} + + + jakarta.tck + el-platform-tck + ${project.version} + + + jakarta.tck + ejb32 + ${project.version} + + + jakarta.tck + xa + ${project.version} + + + jakarta.tck + samples + ${project.version} + + + jakarta.tck + persistence-platform-tck-dbprocedures + ${project.version} + + + jakarta.tck + project + ${project.version} + + + jakarta.tck + transactions-tck + ${project.version} + + + jakarta.tck + persistence-platform-tck + ${project.version} + + + jakarta.tck + ejb30 + ${project.version} + + + jakarta.tck + pages-platform-tck + ${project.version} + + + jakarta.tck + integration + ${project.version} + + + jakarta.tck + jdbc + ${project.version} + + + jakarta.tck + jsonp-platform-tck + ${project.version} + + + jakarta.tck + appclient + ${project.version} + + + jakarta.tck + javamail + ${project.version} + + + jakarta.tck + persistence-platform-tck-common + ${project.version} + + + jakarta.tck + jms-platform-tck + ${project.version} + + + jakarta.tck + javaee-tck + ${project.version} + + + + diff --git a/release/src/main/assembly/assembly.xml b/release/src/main/assembly/assembly.xml index 575b26f7ab..08a2193f37 100644 --- a/release/src/main/assembly/assembly.xml +++ b/release/src/main/assembly/assembly.xml @@ -19,6 +19,12 @@ ../LICENSE_EFTL.adoc LICENSE.adoc + + artifacts-bom.xml + artifacts + artifacts-bom-${project.version}.xml + true + artifact-install.pom artifacts diff --git a/tcks/apis/websocket/docs/parent/pom.xml b/tcks/apis/websocket/docs/parent/pom.xml index e44c4dc41e..0a79dec921 100644 --- a/tcks/apis/websocket/docs/parent/pom.xml +++ b/tcks/apis/websocket/docs/parent/pom.xml @@ -105,39 +105,16 @@ - + - org.apache.maven.plugins - maven-assembly-plugin - 3.6.0 - - - build-dist - - single - - none - - - ${project.build.commonResourcesDirectory}/assembly/dist.xml - - false - - - - build-resources - - single - - none - false - - - src/main/assembly/resources.xml - - - - + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.13 + + false + + true + @@ -208,16 +185,7 @@ - - org.apache.maven.plugins - maven-clean-plugin - - - clean-toc - clean - - - + org.apache.maven.plugins @@ -253,28 +221,7 @@ - - org.apache.maven.plugins - maven-resources-plugin - 3.3.1 - - - copy-resources - generate-resources - - - - - org.apache.maven.plugins - maven-scm-publish-plugin - - - deploy-site - deploy - - - diff --git a/tools/version/src/main/java/ee/tck/versions/TestArtifact.java b/tools/version/src/main/java/ee/tck/versions/TestArtifact.java index 0ba41aced8..fdf8b272a4 100644 --- a/tools/version/src/main/java/ee/tck/versions/TestArtifact.java +++ b/tools/version/src/main/java/ee/tck/versions/TestArtifact.java @@ -20,6 +20,7 @@ public String toString() { } public String getPomDir() { - return pomXml.getParentFile().getAbsolutePath(); + File parent = pomXml.getParentFile(); + return parent == null ? "." : parent.getAbsolutePath(); } } diff --git a/tools/version/src/main/java/ee/tck/versions/VersionRelease.java b/tools/version/src/main/java/ee/tck/versions/VersionRelease.java index a4bf5150de..45186cec85 100644 --- a/tools/version/src/main/java/ee/tck/versions/VersionRelease.java +++ b/tools/version/src/main/java/ee/tck/versions/VersionRelease.java @@ -4,11 +4,14 @@ import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.Node; +import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; +import org.dom4j.io.XMLWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; +import java.io.InputStream; import java.util.HashSet; import java.util.List; @@ -55,6 +58,7 @@ private void run(String version) throws Exception{ // Update the submodule versions updateModules(null, project, version); + artifacts.add(new TestArtifact(getGroupId(project), project.element("artifactId").getText(), version, pomFile)); // Update the release module File releaseModule = new File("release/pom.xml"); @@ -69,6 +73,7 @@ private void run(String version) throws Exception{ // Write a release script for deploying the artifacts writeReleaseScript(version); // Write a bom for the artifacts + writeReleaseBom(version); } void updateModules(File projectDir, Element project, String version) throws Exception { @@ -135,6 +140,31 @@ void writeReleaseScript(String version) throws IOException { writer.write(String.format("cd %s\n", root.getAbsolutePath())); writer.close(); } + void writeReleaseBom(String version) throws Exception { + System.out.println("Write release bom"); + Document bom = null; + try(InputStream is = VersionRelease.class.getResourceAsStream("/artifacts-bom.xml")) { + SAXReader reader = new SAXReader(); + Document document = reader.read(is); + Element project = document.getRootElement(); + setVersion(project, version); + Element dependencies = project.element("dependencyManagement").element("dependencies"); + for(TestArtifact artifact : artifacts) { + Element dependency = dependencies.addElement("dependency"); + dependency.addElement("groupId").setText(artifact.groupId()); + dependency.addElement("artifactId").setText(artifact.artifactId()); + dependency.addElement("version").setText(version); + } + bom = document; + } + + OutputFormat format = OutputFormat.createPrettyPrint(); + FileWriter writer = new FileWriter("artifacts-bom.xml"); + XMLWriter xmlWriter = new XMLWriter( writer, format ); + xmlWriter.write(bom); + xmlWriter.close(); + + } String getVersion(Element root) { return getInfo(root, "version"); }