From 27f641435c862522443a98a7c1ddd102fe2e72ee Mon Sep 17 00:00:00 2001 From: Elena Parovyshnaia Date: Tue, 27 Jul 2021 11:20:12 +0300 Subject: [PATCH 1/5] Bug 553630 invent a way to publish general purpose passage bundles reworked draft of foreign publishing procedure Signed-off-by: eparovyshnaya --- .../ci-job/maven-job-description.html | 43 +++++ .../ci-job/mvn-prepare.sh | 158 ++++++++++++++++++ .../ci-job/pgp-connect.sh | 16 ++ .../plugin.properties | 3 + .../publish/.gitignore | 3 + .../Build Passage Maven Publish.launch | 16 ++ .../publish/README.md | 25 +++ .../publish/aggr/passage.aggr | 36 ++++ .../publish/build.properties | 1 + .../publish/feature.xml | 19 +++ .../publish/pom.xml | 117 +++++++++++++ .../publish/pommod/.classpath | 29 ++++ .../publish/pommod/.gitignore | 2 + .../publish/pommod/.project | 23 +++ .../pommod/Build Passage POM Mod.launch | 16 ++ .../publish/pommod/Run Passage POM Mod.launch | 9 + .../publish/pommod/pom.xml | 83 +++++++++ .../passage/releng/maven/CompletePom.java | 0 .../org.eclipse.passage.releng/src/.gitkeep | 0 19 files changed, 599 insertions(+) create mode 100644 releng/org.eclipse.passage.releng/ci-job/maven-job-description.html create mode 100644 releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh create mode 100644 releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh create mode 100644 releng/org.eclipse.passage.releng/plugin.properties create mode 100644 releng/org.eclipse.passage.releng/publish/.gitignore create mode 100644 releng/org.eclipse.passage.releng/publish/Build Passage Maven Publish.launch create mode 100644 releng/org.eclipse.passage.releng/publish/README.md create mode 100644 releng/org.eclipse.passage.releng/publish/aggr/passage.aggr create mode 100644 releng/org.eclipse.passage.releng/publish/build.properties create mode 100644 releng/org.eclipse.passage.releng/publish/feature.xml create mode 100644 releng/org.eclipse.passage.releng/publish/pom.xml create mode 100644 releng/org.eclipse.passage.releng/publish/pommod/.classpath create mode 100644 releng/org.eclipse.passage.releng/publish/pommod/.gitignore create mode 100644 releng/org.eclipse.passage.releng/publish/pommod/.project create mode 100644 releng/org.eclipse.passage.releng/publish/pommod/Build Passage POM Mod.launch create mode 100644 releng/org.eclipse.passage.releng/publish/pommod/Run Passage POM Mod.launch create mode 100644 releng/org.eclipse.passage.releng/publish/pommod/pom.xml rename releng/org.eclipse.passage.releng/{src => publish/pommod/src/main/java}/org/eclipse/passage/releng/maven/CompletePom.java (100%) create mode 100644 releng/org.eclipse.passage.releng/src/.gitkeep diff --git a/releng/org.eclipse.passage.releng/ci-job/maven-job-description.html b/releng/org.eclipse.passage.releng/ci-job/maven-job-description.html new file mode 100644 index 000000000..c8ad30203 --- /dev/null +++ b/releng/org.eclipse.passage.releng/ci-job/maven-job-description.html @@ -0,0 +1,43 @@ + + +

Repackages the Passage Runtime artifacts of an existing release + as Maven artifacts and optionally publishes them to Maven Central.

+

This job uses the CBI aggregator to materialize the p2 artifacts + to deploy into a Maven-style repository.

+

+ For publishing to OSSRH, some information is missing: +

+
    +
  1. The POM files are missing some required information.
  2. +
  3. The required Javadoc jars need to be generated.
  4. +
+ +

+ To complete the POM files, a small utility, pommod, is + contained in the releng project in form of a Maven Java project. This + tool is first built via Maven and is later used to modify the POM + files. +

+ +

The missing Javadocs are also automatically produced from the p2 + source bundles by this job.

+ +

After these preparations for publishing are done:

+
    +
  1. The POM files will have been enriched with the required + information by the pommod utility. +
  2. +
  3. The jars, including sources and javadocs, will have been + added to the local Maven repository
  4. +
+ +

+ Finally, the shell script optionally deploys the jars, their sources, + and their javadocs to OSSRH into a staging + repository. After uploading, the new staging repository must be + closed and then released. +

+ + \ No newline at end of file diff --git a/releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh b/releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh new file mode 100644 index 000000000..cf33bedfa --- /dev/null +++ b/releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh @@ -0,0 +1,158 @@ +set +e + + +MVN_CMD=/opt/tools/apache-maven/latest/bin/mvn +MVN_SETTINGS=/home/jenkins/.m2/settings.xml +JAVA_HOME=/opt/tools/java/oracle/jdk-8/latest + +REPO_PATH=releng/org.eclipse.passage.releng/publish/target/repository/final +REPO_ID=ossrh +REPO_URL=https://oss.sonatype.org/service/local/staging/deploy/maven2 + +$MVN_CMD -version + + +##################################### +## FUNCTION create_javadoc +##################################### +# $1: source jar path +# $2: javadoc jar path +# $3: javadoc window title +# $4: javadoc doc title +# $5: javadoc header +# $6: javadoc bottom +create_javadoc () { + pushd $(pwd) + + mkdir -p $WORKSPACE/.create_javadoc/src + cd $WORKSPACE/.create_javadoc/src + + # extract to src dir + jar -xf $1 + + # go one level up to invoke javadoc + cd .. + + echo "Creating Javadoc..." + echo " Window Title: $3" + echo " Doc Title: $4" + echo " Header: $5" + echo " Botton: $6" + + # produce javadoc from 'src' dir to 'target' dir + $JAVA_HOME/bin/javadoc -sourcepath src \ + -d target \ + -use \ + -splitIndex \ + -windowtitle "$3" \ + -doctitle "$4" \ + -header "$5" \ + -bottom "$6" \ + -quiet \ + -J-Xmx180m \ + -Xdoclint:none \ + -subpackages org 2>&1 | tail -n 2 + + # package javadocs + cd target + $JAVA_HOME/bin/jar -cf $2 * + + popd + # clean temp dir + rm -rf $WORKSPACE/.create_javadoc +} + +##################################### +## MAIN SCRIPT +##################################### + +# Enhance generated POMs by mandatory information (name, SCM, license, developers) +$JAVA_HOME/bin/java \ + -jar releng/org.eclipse.emf.releng/publish/pommod/target/pommod.jar \ + -dir $REPO_PATH/org + +find $REPO_PATH/org -name "*.pom" | while read fname; do + sed "/^<\/project>/d" "$fname" > "$fname".new + cat >> "$fname".new < + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + sign-artifacts + verify + + sign + + + + --pinentry-mode + loopback + + + + + + + + +EOL + mv "$fname".new "$fname" +done + +# loop over the aggregated repository and call the GPG plugin with 'sign-and-deploy-file' goal +# http://maven.apache.org/plugins/maven-gpg-plugin/sign-and-deploy-file-mojo.html +# append /org to REPO_PATH to avoid match of artifacts.jar/content.jar +# use string replacement to replace the file extension for the .pom file for each jar +find $REPO_PATH/org -name "*.jar" | while read fname; do + # only take action for the non-source bundles + if [[ ! "$fname" =~ ".*-sources.jar" ]]; then + POM_FILE="${fname/%.jar/.pom}" + SOURCES_JAR="${fname/%.jar/-sources.jar}" + JAVADOC_JAR="${fname/%.jar/-javadoc.jar}" + PUBLISH_FILE="${fname/%.jar/.publish}" + + if [ -f $SOURCES_JAR -a ! -f $PUBLISH_FILE ]; then + echo "Artifact already published" + fi + + if [ -f $SOURCES_JAR -a -f $PUBLISH_FILE ]; then + JAVADOC_TITLE=`sed '1q;d' $PUBLISH_FILE` + JAVADOC_FOOTER=`sed '2q;d' $PUBLISH_FILE` + create_javadoc \ + $WORKSPACE/$SOURCES_JAR \ + $WORKSPACE/$JAVADOC_JAR \ + "$JAVADOC_TITLE" \ + "$JAVADOC_TITLE" \ + "$JAVADOC_TITLE" \ + "$JAVADOC_FOOTER" + + if [[ $PUBLISH_REPOSITORY == "true" ]] + then + cat $POM_FILE + $MVN_CMD -B -DinteractiveMode=false org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file \ + -Dfile=$fname \ + -DpomFile=$POM_FILE \ + -DrepositoryId=$REPO_ID \ + -Durl=$REPO_URL + + $MVN_CMD -B -DinteractiveMode=false org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file \ + -Dfile=$SOURCES_JAR \ + -DpomFile=$POM_FILE \ + -DrepositoryId=$REPO_ID \ + -Durl=$REPO_URL \ + -Dclassifier=sources + + $MVN_CMD -B -DinteractiveMode=false org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file \ + -Dfile=$JAVADOC_JAR \ + -DpomFile=$POM_FILE \ + -DrepositoryId=$REPO_ID \ + -Durl=$REPO_URL \ + -Dclassifier=javadoc + fi + fi + fi +done diff --git a/releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh b/releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh new file mode 100644 index 000000000..466a5022c --- /dev/null +++ b/releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh @@ -0,0 +1,16 @@ +gpg --batch --import "${KEYRING}" +for fpr in $(gpg --list-keys --with-colons | awk -F: '/fpr:/ {print $10}' | sort -u); +do + echo -e "5\ny\n" | gpg --batch --command-fd 0 --expert --edit-key $fpr trust; +done + +# https://bugs.eclipse.org/bugs/show_bug.cgi?id=573866 +mkdir -p ~/.gnupg +cat >> ~/.gnupg/gpg.conf <> ~/.gnupg/gpg-agent.conf < + + + + + + + + + + + + + + + diff --git a/releng/org.eclipse.passage.releng/publish/README.md b/releng/org.eclipse.passage.releng/publish/README.md new file mode 100644 index 000000000..457705407 --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/README.md @@ -0,0 +1,25 @@ +# How to build? + +Run `mvn`. + +The pom.xml is configured to execute the default goals `clean resources:resources verify`. + +# pommod + +The directory `pommod` contains a small Maven based project that contains a small utility to +enrich the POM files produced by the CBI aggregator by mandatory information for upload to Maven Central. + + +# OSSRH + +* Deploy snapshot artifacts into repository https://oss.sonatype.org/content/repositories/snapshots +* Deploy release artifacts into the staging repository https://oss.sonatype.org/service/local/staging/deploy/maven2 +* Promote staged artifacts into repository 'Releases' +* Download snapshot and release artifacts from group https://oss.sonatype.org/content/groups/public +* Download snapshot, release and staged artifacts from staging group https://oss.sonatype.org/content/groups/staging + +# Q & A + +## Why is there a feature.xml? + +This project must be of a type recognized by Tycho. It contains an empty feature.xml and is declared as packaging-type 'eclipse-feature' for that sake. diff --git a/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr b/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr new file mode 100644 index 000000000..f08368264 --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/releng/org.eclipse.passage.releng/publish/build.properties b/releng/org.eclipse.passage.releng/publish/build.properties new file mode 100644 index 000000000..64f93a9f0 --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/build.properties @@ -0,0 +1 @@ +bin.includes = feature.xml diff --git a/releng/org.eclipse.passage.releng/publish/feature.xml b/releng/org.eclipse.passage.releng/publish/feature.xml new file mode 100644 index 000000000..7c90ee628 --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/feature.xml @@ -0,0 +1,19 @@ + + + + + Dummy feature. Required for the Tycho build in order to be able to configure the project with packaging type 'eclipse-feature' to build it. + + + + [Enter Copyright Description here.] + + + + [Enter License Description here.] + + + diff --git a/releng/org.eclipse.passage.releng/publish/pom.xml b/releng/org.eclipse.passage.releng/publish/pom.xml new file mode 100644 index 000000000..8ccf16f86 --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pom.xml @@ -0,0 +1,117 @@ + + + 4.0.0 + + + UTF-8 + 2.3.0 + 2.0.1 + https://download.eclipse.org/passage/updates/release/${version.passage} + + + org.eclipse.passage + org.eclipse.passage.releng.publish + 1.0.0-SNAPSHOT + eclipse-feature + + + clean resources:resources verify + + + aggr + true + + + + + org.eclipse.tycho + tycho-maven-plugin + ${version.tycho} + true + + + org.eclipse.tycho.extras + tycho-eclipserun-plugin + ${version.tycho} + + + + eclipse-run + + package + + + + + -application org.eclipse.cbi.p2repo.cli.headless aggregate --buildModel target/classes/passage.aggr + + + org.eclipse.cbi.p2repo.aggregator.engine.feature + eclipse-feature + + + org.eclipse.equinox.core.feature + eclipse-feature + + + org.eclipse.equinox.p2.core.feature + eclipse-feature + + + + + cbi-aggregator + p2 + https://download.eclipse.org/cbi/updates/aggregator/headless/4.13/I20200625-1232 + + + JavaSE-11 + + + + org.eclipse.tycho + tycho-packaging-plugin + ${version.tycho} + + false + + + + org.eclipse.tycho + target-platform-configuration + ${version.tycho} + + + + win32 + win32 + x86_64 + + + macosx + cocoa + x86_64 + + + linux + gtk + x86_64 + + + + + + + + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots/ + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + diff --git a/releng/org.eclipse.passage.releng/publish/pommod/.classpath b/releng/org.eclipse.passage.releng/publish/pommod/.classpath new file mode 100644 index 000000000..6f1a9f014 --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pommod/.classpath @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/releng/org.eclipse.passage.releng/publish/pommod/.gitignore b/releng/org.eclipse.passage.releng/publish/pommod/.gitignore new file mode 100644 index 000000000..a83d47cad --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pommod/.gitignore @@ -0,0 +1,2 @@ +/build.log +/dependency-reduced-pom.xml diff --git a/releng/org.eclipse.passage.releng/publish/pommod/.project b/releng/org.eclipse.passage.releng/publish/pommod/.project new file mode 100644 index 000000000..ee253f36c --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pommod/.project @@ -0,0 +1,23 @@ + + + org.eclipse.passage.releng.pommod + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/releng/org.eclipse.passage.releng/publish/pommod/Build Passage POM Mod.launch b/releng/org.eclipse.passage.releng/publish/pommod/Build Passage POM Mod.launch new file mode 100644 index 000000000..b23d203cd --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pommod/Build Passage POM Mod.launch @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/releng/org.eclipse.passage.releng/publish/pommod/Run Passage POM Mod.launch b/releng/org.eclipse.passage.releng/publish/pommod/Run Passage POM Mod.launch new file mode 100644 index 000000000..524d8e9ae --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pommod/Run Passage POM Mod.launch @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/releng/org.eclipse.passage.releng/publish/pommod/pom.xml b/releng/org.eclipse.passage.releng/publish/pommod/pom.xml new file mode 100644 index 000000000..99eedc0ec --- /dev/null +++ b/releng/org.eclipse.passage.releng/publish/pommod/pom.xml @@ -0,0 +1,83 @@ + + 4.0.0 + org.eclipse.passage + org.eclipse.passage.releng.pommod + 1.0-SNAPSHOT + + + UTF-8 + 1.8 + + + + + org.apache.maven + maven-model + 3.5.3 + + + org.codehaus.plexus + plexus-utils + 3.1.0 + + + + args4j + args4j + 2.33 + + + + org.eclipse.jdt + org.eclipse.jdt.annotation + 2.1.100 + + + + + clean verify + pommod + + + maven-compiler-plugin + 3.7.0 + + ${java.version} + ${java.version} + + + + + org.apache.maven.plugins + maven-shade-plugin + 3.1.1 + + + package + + shade + + + + + pommod.POMEnhancer + + + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + + + + + + + \ No newline at end of file diff --git a/releng/org.eclipse.passage.releng/src/org/eclipse/passage/releng/maven/CompletePom.java b/releng/org.eclipse.passage.releng/publish/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java similarity index 100% rename from releng/org.eclipse.passage.releng/src/org/eclipse/passage/releng/maven/CompletePom.java rename to releng/org.eclipse.passage.releng/publish/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java diff --git a/releng/org.eclipse.passage.releng/src/.gitkeep b/releng/org.eclipse.passage.releng/src/.gitkeep new file mode 100644 index 000000000..e69de29bb From 4b245a17a304b2bfc21b96b8f25ad49e2022012c Mon Sep 17 00:00:00 2001 From: Elena Parovyshnaia Date: Tue, 27 Jul 2021 20:11:24 +0300 Subject: [PATCH 2/5] Bug 553630 invent a way to publish general purpose passage bundles point correctly the main-class for Pom Modification Util Signed-off-by: eparovyshnaya --- releng/org.eclipse.passage.releng/publish/pommod/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releng/org.eclipse.passage.releng/publish/pommod/pom.xml b/releng/org.eclipse.passage.releng/publish/pommod/pom.xml index 99eedc0ec..62061c292 100644 --- a/releng/org.eclipse.passage.releng/publish/pommod/pom.xml +++ b/releng/org.eclipse.passage.releng/publish/pommod/pom.xml @@ -61,7 +61,7 @@ - pommod.POMEnhancer + org.eclipse.passage.releng.maven.CompletePom From 465207330bf1a98b350c099d5c43bd95bf3c3560 Mon Sep 17 00:00:00 2001 From: Elena Parovyshnaia Date: Fri, 30 Jul 2021 12:09:44 +0300 Subject: [PATCH 3/5] Bug 553630 invent a way to publish general purpose passage bundles fix aggregator: spell `source` packages correctly Signed-off-by: eparovyshnaya --- .../publish/aggr/passage.aggr | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr b/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr index f08368264..b527b767a 100644 --- a/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr +++ b/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr @@ -5,19 +5,19 @@ label="Passage Execute Repository Aggregation" buildRoot="../repository" packedS - + - + - + - + - + - + - + From c0b09747a0688a0cda2c402a1a7fe3de3f67427e Mon Sep 17 00:00:00 2001 From: Elena Parovyshnaia Date: Fri, 30 Jul 2021 12:34:14 +0300 Subject: [PATCH 4/5] Bug 553630 invent a way to publish general purpose passage bundles put passage.releng structure in order and dedicate it to publishing entirely Signed-off-by: eparovyshnaya --- .../.classpath | 0 .../.gitignore | 0 .../.project | 2 +- .../Build Passage Maven Publish.launch | 0 .../README.md | 0 .../aggr/passage.aggr | 0 .../build.properties | 0 .../feature.xml | 0 .../pom.xml | 0 .../pommod/.classpath | 0 .../pommod/.gitignore | 0 .../pommod/.project | 0 .../pommod/Build Passage POM Mod.launch | 0 .../pommod/Run Passage POM Mod.launch | 0 .../pommod/pom.xml | 0 .../passage/releng/maven/CompletePom.java | 0 .../ci-job/maven-job-description.html | 43 -- .../ci-job/mvn-prepare.sh | 158 ----- .../ci-job/pgp-connect.sh | 16 - .../compositeArtifacts.xml | 29 - .../compositeContent.xml | 29 - .../passage-configuration.setup | 51 -- .../org.eclipse.passage.releng/passage.setup | 594 ------------------ .../plugin.properties | 3 - releng/org.eclipse.passage.releng/pom.xml | 96 --- .../org.eclipse.passage.releng/src/.gitkeep | 0 26 files changed, 1 insertion(+), 1020 deletions(-) rename releng/{org.eclipse.passage.releng => org.eclipse.passage.publish}/.classpath (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/.gitignore (100%) rename releng/{org.eclipse.passage.releng => org.eclipse.passage.publish}/.project (92%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/Build Passage Maven Publish.launch (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/README.md (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/aggr/passage.aggr (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/build.properties (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/feature.xml (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pom.xml (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/.classpath (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/.gitignore (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/.project (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/Build Passage POM Mod.launch (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/Run Passage POM Mod.launch (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/pom.xml (100%) rename releng/{org.eclipse.passage.releng/publish => org.eclipse.passage.publish}/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java (100%) delete mode 100644 releng/org.eclipse.passage.releng/ci-job/maven-job-description.html delete mode 100644 releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh delete mode 100644 releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh delete mode 100644 releng/org.eclipse.passage.releng/compositeArtifacts.xml delete mode 100644 releng/org.eclipse.passage.releng/compositeContent.xml delete mode 100644 releng/org.eclipse.passage.releng/passage-configuration.setup delete mode 100644 releng/org.eclipse.passage.releng/passage.setup delete mode 100644 releng/org.eclipse.passage.releng/plugin.properties delete mode 100644 releng/org.eclipse.passage.releng/pom.xml delete mode 100644 releng/org.eclipse.passage.releng/src/.gitkeep diff --git a/releng/org.eclipse.passage.releng/.classpath b/releng/org.eclipse.passage.publish/.classpath similarity index 100% rename from releng/org.eclipse.passage.releng/.classpath rename to releng/org.eclipse.passage.publish/.classpath diff --git a/releng/org.eclipse.passage.releng/publish/.gitignore b/releng/org.eclipse.passage.publish/.gitignore similarity index 100% rename from releng/org.eclipse.passage.releng/publish/.gitignore rename to releng/org.eclipse.passage.publish/.gitignore diff --git a/releng/org.eclipse.passage.releng/.project b/releng/org.eclipse.passage.publish/.project similarity index 92% rename from releng/org.eclipse.passage.releng/.project rename to releng/org.eclipse.passage.publish/.project index 93990d68f..4d50aa812 100644 --- a/releng/org.eclipse.passage.releng/.project +++ b/releng/org.eclipse.passage.publish/.project @@ -1,6 +1,6 @@ - org.eclipse.passage.releng + org.eclipse.passage.publish diff --git a/releng/org.eclipse.passage.releng/publish/Build Passage Maven Publish.launch b/releng/org.eclipse.passage.publish/Build Passage Maven Publish.launch similarity index 100% rename from releng/org.eclipse.passage.releng/publish/Build Passage Maven Publish.launch rename to releng/org.eclipse.passage.publish/Build Passage Maven Publish.launch diff --git a/releng/org.eclipse.passage.releng/publish/README.md b/releng/org.eclipse.passage.publish/README.md similarity index 100% rename from releng/org.eclipse.passage.releng/publish/README.md rename to releng/org.eclipse.passage.publish/README.md diff --git a/releng/org.eclipse.passage.releng/publish/aggr/passage.aggr b/releng/org.eclipse.passage.publish/aggr/passage.aggr similarity index 100% rename from releng/org.eclipse.passage.releng/publish/aggr/passage.aggr rename to releng/org.eclipse.passage.publish/aggr/passage.aggr diff --git a/releng/org.eclipse.passage.releng/publish/build.properties b/releng/org.eclipse.passage.publish/build.properties similarity index 100% rename from releng/org.eclipse.passage.releng/publish/build.properties rename to releng/org.eclipse.passage.publish/build.properties diff --git a/releng/org.eclipse.passage.releng/publish/feature.xml b/releng/org.eclipse.passage.publish/feature.xml similarity index 100% rename from releng/org.eclipse.passage.releng/publish/feature.xml rename to releng/org.eclipse.passage.publish/feature.xml diff --git a/releng/org.eclipse.passage.releng/publish/pom.xml b/releng/org.eclipse.passage.publish/pom.xml similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pom.xml rename to releng/org.eclipse.passage.publish/pom.xml diff --git a/releng/org.eclipse.passage.releng/publish/pommod/.classpath b/releng/org.eclipse.passage.publish/pommod/.classpath similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/.classpath rename to releng/org.eclipse.passage.publish/pommod/.classpath diff --git a/releng/org.eclipse.passage.releng/publish/pommod/.gitignore b/releng/org.eclipse.passage.publish/pommod/.gitignore similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/.gitignore rename to releng/org.eclipse.passage.publish/pommod/.gitignore diff --git a/releng/org.eclipse.passage.releng/publish/pommod/.project b/releng/org.eclipse.passage.publish/pommod/.project similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/.project rename to releng/org.eclipse.passage.publish/pommod/.project diff --git a/releng/org.eclipse.passage.releng/publish/pommod/Build Passage POM Mod.launch b/releng/org.eclipse.passage.publish/pommod/Build Passage POM Mod.launch similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/Build Passage POM Mod.launch rename to releng/org.eclipse.passage.publish/pommod/Build Passage POM Mod.launch diff --git a/releng/org.eclipse.passage.releng/publish/pommod/Run Passage POM Mod.launch b/releng/org.eclipse.passage.publish/pommod/Run Passage POM Mod.launch similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/Run Passage POM Mod.launch rename to releng/org.eclipse.passage.publish/pommod/Run Passage POM Mod.launch diff --git a/releng/org.eclipse.passage.releng/publish/pommod/pom.xml b/releng/org.eclipse.passage.publish/pommod/pom.xml similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/pom.xml rename to releng/org.eclipse.passage.publish/pommod/pom.xml diff --git a/releng/org.eclipse.passage.releng/publish/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java b/releng/org.eclipse.passage.publish/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java similarity index 100% rename from releng/org.eclipse.passage.releng/publish/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java rename to releng/org.eclipse.passage.publish/pommod/src/main/java/org/eclipse/passage/releng/maven/CompletePom.java diff --git a/releng/org.eclipse.passage.releng/ci-job/maven-job-description.html b/releng/org.eclipse.passage.releng/ci-job/maven-job-description.html deleted file mode 100644 index c8ad30203..000000000 --- a/releng/org.eclipse.passage.releng/ci-job/maven-job-description.html +++ /dev/null @@ -1,43 +0,0 @@ - - -

Repackages the Passage Runtime artifacts of an existing release - as Maven artifacts and optionally publishes them to Maven Central.

-

This job uses the CBI aggregator to materialize the p2 artifacts - to deploy into a Maven-style repository.

-

- For publishing to OSSRH, some information is missing: -

-
    -
  1. The POM files are missing some required information.
  2. -
  3. The required Javadoc jars need to be generated.
  4. -
- -

- To complete the POM files, a small utility, pommod, is - contained in the releng project in form of a Maven Java project. This - tool is first built via Maven and is later used to modify the POM - files. -

- -

The missing Javadocs are also automatically produced from the p2 - source bundles by this job.

- -

After these preparations for publishing are done:

-
    -
  1. The POM files will have been enriched with the required - information by the pommod utility. -
  2. -
  3. The jars, including sources and javadocs, will have been - added to the local Maven repository
  4. -
- -

- Finally, the shell script optionally deploys the jars, their sources, - and their javadocs to OSSRH into a staging - repository. After uploading, the new staging repository must be - closed and then released. -

- - \ No newline at end of file diff --git a/releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh b/releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh deleted file mode 100644 index cf33bedfa..000000000 --- a/releng/org.eclipse.passage.releng/ci-job/mvn-prepare.sh +++ /dev/null @@ -1,158 +0,0 @@ -set +e - - -MVN_CMD=/opt/tools/apache-maven/latest/bin/mvn -MVN_SETTINGS=/home/jenkins/.m2/settings.xml -JAVA_HOME=/opt/tools/java/oracle/jdk-8/latest - -REPO_PATH=releng/org.eclipse.passage.releng/publish/target/repository/final -REPO_ID=ossrh -REPO_URL=https://oss.sonatype.org/service/local/staging/deploy/maven2 - -$MVN_CMD -version - - -##################################### -## FUNCTION create_javadoc -##################################### -# $1: source jar path -# $2: javadoc jar path -# $3: javadoc window title -# $4: javadoc doc title -# $5: javadoc header -# $6: javadoc bottom -create_javadoc () { - pushd $(pwd) - - mkdir -p $WORKSPACE/.create_javadoc/src - cd $WORKSPACE/.create_javadoc/src - - # extract to src dir - jar -xf $1 - - # go one level up to invoke javadoc - cd .. - - echo "Creating Javadoc..." - echo " Window Title: $3" - echo " Doc Title: $4" - echo " Header: $5" - echo " Botton: $6" - - # produce javadoc from 'src' dir to 'target' dir - $JAVA_HOME/bin/javadoc -sourcepath src \ - -d target \ - -use \ - -splitIndex \ - -windowtitle "$3" \ - -doctitle "$4" \ - -header "$5" \ - -bottom "$6" \ - -quiet \ - -J-Xmx180m \ - -Xdoclint:none \ - -subpackages org 2>&1 | tail -n 2 - - # package javadocs - cd target - $JAVA_HOME/bin/jar -cf $2 * - - popd - # clean temp dir - rm -rf $WORKSPACE/.create_javadoc -} - -##################################### -## MAIN SCRIPT -##################################### - -# Enhance generated POMs by mandatory information (name, SCM, license, developers) -$JAVA_HOME/bin/java \ - -jar releng/org.eclipse.emf.releng/publish/pommod/target/pommod.jar \ - -dir $REPO_PATH/org - -find $REPO_PATH/org -name "*.pom" | while read fname; do - sed "/^<\/project>/d" "$fname" > "$fname".new - cat >> "$fname".new < - - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - sign-artifacts - verify - - sign - - - - --pinentry-mode - loopback - - - - - - - - -EOL - mv "$fname".new "$fname" -done - -# loop over the aggregated repository and call the GPG plugin with 'sign-and-deploy-file' goal -# http://maven.apache.org/plugins/maven-gpg-plugin/sign-and-deploy-file-mojo.html -# append /org to REPO_PATH to avoid match of artifacts.jar/content.jar -# use string replacement to replace the file extension for the .pom file for each jar -find $REPO_PATH/org -name "*.jar" | while read fname; do - # only take action for the non-source bundles - if [[ ! "$fname" =~ ".*-sources.jar" ]]; then - POM_FILE="${fname/%.jar/.pom}" - SOURCES_JAR="${fname/%.jar/-sources.jar}" - JAVADOC_JAR="${fname/%.jar/-javadoc.jar}" - PUBLISH_FILE="${fname/%.jar/.publish}" - - if [ -f $SOURCES_JAR -a ! -f $PUBLISH_FILE ]; then - echo "Artifact already published" - fi - - if [ -f $SOURCES_JAR -a -f $PUBLISH_FILE ]; then - JAVADOC_TITLE=`sed '1q;d' $PUBLISH_FILE` - JAVADOC_FOOTER=`sed '2q;d' $PUBLISH_FILE` - create_javadoc \ - $WORKSPACE/$SOURCES_JAR \ - $WORKSPACE/$JAVADOC_JAR \ - "$JAVADOC_TITLE" \ - "$JAVADOC_TITLE" \ - "$JAVADOC_TITLE" \ - "$JAVADOC_FOOTER" - - if [[ $PUBLISH_REPOSITORY == "true" ]] - then - cat $POM_FILE - $MVN_CMD -B -DinteractiveMode=false org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file \ - -Dfile=$fname \ - -DpomFile=$POM_FILE \ - -DrepositoryId=$REPO_ID \ - -Durl=$REPO_URL - - $MVN_CMD -B -DinteractiveMode=false org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file \ - -Dfile=$SOURCES_JAR \ - -DpomFile=$POM_FILE \ - -DrepositoryId=$REPO_ID \ - -Durl=$REPO_URL \ - -Dclassifier=sources - - $MVN_CMD -B -DinteractiveMode=false org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file \ - -Dfile=$JAVADOC_JAR \ - -DpomFile=$POM_FILE \ - -DrepositoryId=$REPO_ID \ - -Durl=$REPO_URL \ - -Dclassifier=javadoc - fi - fi - fi -done diff --git a/releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh b/releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh deleted file mode 100644 index 466a5022c..000000000 --- a/releng/org.eclipse.passage.releng/ci-job/pgp-connect.sh +++ /dev/null @@ -1,16 +0,0 @@ -gpg --batch --import "${KEYRING}" -for fpr in $(gpg --list-keys --with-colons | awk -F: '/fpr:/ {print $10}' | sort -u); -do - echo -e "5\ny\n" | gpg --batch --command-fd 0 --expert --edit-key $fpr trust; -done - -# https://bugs.eclipse.org/bugs/show_bug.cgi?id=573866 -mkdir -p ~/.gnupg -cat >> ~/.gnupg/gpg.conf <> ~/.gnupg/gpg-agent.conf < - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/releng/org.eclipse.passage.releng/compositeContent.xml b/releng/org.eclipse.passage.releng/compositeContent.xml deleted file mode 100644 index 8edfb2005..000000000 --- a/releng/org.eclipse.passage.releng/compositeContent.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/releng/org.eclipse.passage.releng/passage-configuration.setup b/releng/org.eclipse.passage.releng/passage-configuration.setup deleted file mode 100644 index 386ad40b3..000000000 --- a/releng/org.eclipse.passage.releng/passage-configuration.setup +++ /dev/null @@ -1,51 +0,0 @@ - - - - - https://projects.eclipse.org/projects/technology.passage - - - https://raw.githubusercontent.com/eclipse-passage/passage/master/products/org.eclipse.passage.loc.operator.product/ico/48.png - - - - - The Passage Development Environment installation provides a full development environment for working on Passage. - - - - - The Passage Development Environment workspace contains all features and plugins from the Passage GitHub repository. - - - <p> - The <a href="https://projects.eclipse.org/projects/technology.passage"/>Passage</a> Development Environment configuration provisions a dedicated development environment - for the complete set of source projects used by <a href="https://ci.eclipse.org/passage/">Passage's build server</a> - to produce <a href="http://download.eclipse.org/passage/updates/?d">Passage's update sites</a>. - </p> - <p> - All the source projects from <a href="https://github.com/eclipse-passage/passage">Passage's GitHub Repository</a> - are available, organized into working sets, and ready for contribution. - </p> - </p> - Please <a href="https://wiki.eclipse.org/Eclipse_Platform_SDK_Provisioning">read the analogous tutorial instructions</a> for the Eclipse Platform SDK's configuration for more details. - </p> - - diff --git a/releng/org.eclipse.passage.releng/passage.setup b/releng/org.eclipse.passage.releng/passage.setup deleted file mode 100644 index 02485f9a1..000000000 --- a/releng/org.eclipse.passage.releng/passage.setup +++ /dev/null @@ -1,594 +0,0 @@ - - - - - https://projects.eclipse.org/projects/technology.passage - - - https://raw.githubusercontent.com/eclipse-passage/passage/master/products/org.eclipse.passage.loc.operator.product/ico/48.png - - - - - - - Set the heap space needed to work with the projects of ${scope.project.label} - - - Set an Oomph redirection system property to redirect the logical location of this setup to its physical location in the Git clone. - - - Initialize JDT's package explorer to show working sets as its root objects - - <?xml version="1.0" encoding="UTF-8"?> - <section name="Workbench"> - <section name="org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart"> - <item value="true" key="group_libraries"/> - <item value="false" key="linkWithEditor"/> - <item value="2" key="layout"/> - <item value="2" key="rootMode"/> - <item value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#x0D;&#x0A;&lt;packageExplorer configured=&quot;true&quot; group_libraries=&quot;1&quot; layout=&quot;2&quot; linkWithEditor=&quot;0&quot; rootMode=&quot;2&quot; sortWorkingSets=&quot;false&quot; workingSetName=&quot;&quot;&gt;&#x0D;&#x0A;&lt;localWorkingSetManager&gt;&#x0D;&#x0A;&lt;workingSet editPageId=&quot;org.eclipse.jdt.internal.ui.OthersWorkingSet&quot; factoryID=&quot;org.eclipse.ui.internal.WorkingSetFactory&quot; id=&quot;1382792884467_1&quot; label=&quot;Other Projects&quot; name=&quot;Other Projects&quot;/&gt;&#x0D;&#x0A;&lt;/localWorkingSetManager&gt;&#x0D;&#x0A;&lt;activeWorkingSet workingSetName=&quot;Other Projects&quot;/&gt;&#x0D;&#x0A;&lt;allWorkingSets workingSetName=&quot;Other Projects&quot;/&gt;&#x0D;&#x0A;&lt;/packageExplorer&gt;" key="memento"/> - </section> - </section> - - - - - - - - - - - - - - - Install the tools needed in the IDE to work with the source code for ${scope.project.label} - - - - Define the JRE needed to compile and run the Java projects of ${scope.project.label} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - An API baseline based on the target platform named 'Modular API Baseline Target' - - - - - github.remoteURIs - - - ${scope.project.label} GitHub repository protocol - - - remoteURI - - - ${scope.project.label} GitHub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The Eclipse Passage project aims to provide - rich and easily adaptable capabilities - to define and control licensing constraints. - - diff --git a/releng/org.eclipse.passage.releng/plugin.properties b/releng/org.eclipse.passage.releng/plugin.properties deleted file mode 100644 index 990a2008b..000000000 --- a/releng/org.eclipse.passage.releng/plugin.properties +++ /dev/null @@ -1,3 +0,0 @@ - -pluginName=Passage Releng - Passage Release Engineering Infrastructure -providerName=Eclipse Passage diff --git a/releng/org.eclipse.passage.releng/pom.xml b/releng/org.eclipse.passage.releng/pom.xml deleted file mode 100644 index 44aac43cf..000000000 --- a/releng/org.eclipse.passage.releng/pom.xml +++ /dev/null @@ -1,96 +0,0 @@ - - - - 4.0.0 - org.eclipse.passage - org.eclipse.passage.releng.pommod - 1.0-SNAPSHOT - - - UTF-8 - 1.8 - - - - - org.apache.maven - maven-model - 3.5.3 - - - org.codehaus.plexus - plexus-utils - 3.1.0 - - - args4j - args4j - 2.33 - - - org.eclipse.jdt - org.eclipse.jdt.annotation - 2.1.100 - - - - - clean verify - pommod - - - maven-compiler-plugin - 3.7.0 - - ${java.version} - ${java.version} - - - - - org.apache.maven.plugins - maven-shade-plugin - 3.1.1 - - - package - - shade - - - - - org.eclipse.passage.releng.maven.CompletePom - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - - - - - \ No newline at end of file diff --git a/releng/org.eclipse.passage.releng/src/.gitkeep b/releng/org.eclipse.passage.releng/src/.gitkeep deleted file mode 100644 index e69de29bb..000000000 From ff55d87e6a580c92f4320382fc035d27626f43ee Mon Sep 17 00:00:00 2001 From: Elena Parovyshnaia Date: Fri, 30 Jul 2021 15:53:54 +0300 Subject: [PATCH 5/5] Bug 553630 invent a way to publish general purpose passage bundles append license headers Signed-off-by: eparovyshnaya --- .../Build Passage Maven Publish.launch | 4 +- .../aggr/passage.aggr | 95 ++++++---- .../build.properties | 13 ++ .../org.eclipse.passage.publish/feature.xml | 30 +-- releng/org.eclipse.passage.publish/pom.xml | 14 +- .../pommod/pom.xml | 173 ++++++++++-------- 6 files changed, 201 insertions(+), 128 deletions(-) diff --git a/releng/org.eclipse.passage.publish/Build Passage Maven Publish.launch b/releng/org.eclipse.passage.publish/Build Passage Maven Publish.launch index 21f629bf9..1a2d9ff7b 100644 --- a/releng/org.eclipse.passage.publish/Build Passage Maven Publish.launch +++ b/releng/org.eclipse.passage.publish/Build Passage Maven Publish.launch @@ -4,7 +4,7 @@ - + @@ -12,5 +12,5 @@ - + diff --git a/releng/org.eclipse.passage.publish/aggr/passage.aggr b/releng/org.eclipse.passage.publish/aggr/passage.aggr index b527b767a..3ad678ba4 100644 --- a/releng/org.eclipse.passage.publish/aggr/passage.aggr +++ b/releng/org.eclipse.passage.publish/aggr/passage.aggr @@ -1,36 +1,63 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/releng/org.eclipse.passage.publish/build.properties b/releng/org.eclipse.passage.publish/build.properties index 64f93a9f0..490a7945f 100644 --- a/releng/org.eclipse.passage.publish/build.properties +++ b/releng/org.eclipse.passage.publish/build.properties @@ -1 +1,14 @@ +############################################################################### +# Copyright (c) 2021 ArSysOp +# +# This program and the accompanying materials are made available under the +# terms of the Eclipse Public License 2.0 which is available at +# https://www.eclipse.org/legal/epl-2.0/. +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# ArSysOp - initial API and implementation +############################################################################### + bin.includes = feature.xml diff --git a/releng/org.eclipse.passage.publish/feature.xml b/releng/org.eclipse.passage.publish/feature.xml index 7c90ee628..7bd7840a3 100644 --- a/releng/org.eclipse.passage.publish/feature.xml +++ b/releng/org.eclipse.passage.publish/feature.xml @@ -1,19 +1,25 @@ + + id="org.eclipse.passage.releng.publish.feature" + label="%featureName" + version="1.0.0.qualifier" + provider-name="%providerName" + plugin="org.eclipse.passage.publish"> Dummy feature. Required for the Tycho build in order to be able to configure the project with packaging type 'eclipse-feature' to build it. - - - [Enter Copyright Description here.] - - - - [Enter License Description here.] - - + diff --git a/releng/org.eclipse.passage.publish/pom.xml b/releng/org.eclipse.passage.publish/pom.xml index 8ccf16f86..d0fe102bd 100644 --- a/releng/org.eclipse.passage.publish/pom.xml +++ b/releng/org.eclipse.passage.publish/pom.xml @@ -1,4 +1,16 @@ + 4.0.0 @@ -11,7 +23,7 @@ org.eclipse.passage - org.eclipse.passage.releng.publish + org.eclipse.passage.releng.publish.feature 1.0.0-SNAPSHOT eclipse-feature diff --git a/releng/org.eclipse.passage.publish/pommod/pom.xml b/releng/org.eclipse.passage.publish/pommod/pom.xml index 62061c292..1ffe089e9 100644 --- a/releng/org.eclipse.passage.publish/pommod/pom.xml +++ b/releng/org.eclipse.passage.publish/pommod/pom.xml @@ -1,83 +1,98 @@ - - 4.0.0 - org.eclipse.passage - org.eclipse.passage.releng.pommod - 1.0-SNAPSHOT + + - - args4j - args4j - 2.33 - - - - org.eclipse.jdt - org.eclipse.jdt.annotation - 2.1.100 - - + SPDX-License-Identifier: EPL-2.0 - - clean verify - pommod - - - maven-compiler-plugin - 3.7.0 - - ${java.version} - ${java.version} - - - - - org.apache.maven.plugins - maven-shade-plugin - 3.1.1 - - - package - - shade - - - - - org.eclipse.passage.releng.maven.CompletePom - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - - - - + Contributors: + ArSysOp - initial API and implementation +--> + + 4.0.0 + org.eclipse.passage + org.eclipse.passage.releng.pommod + 1.0-SNAPSHOT + + + UTF-8 + 1.8 + + + + + org.apache.maven + maven-model + 3.5.3 + + + org.codehaus.plexus + plexus-utils + 3.1.0 + + + + args4j + args4j + 2.33 + + + + org.eclipse.jdt + org.eclipse.jdt.annotation + 2.1.100 + + + + + clean verify + pommod + + + maven-compiler-plugin + 3.7.0 + + ${java.version} + ${java.version} + + + + + org.apache.maven.plugins + maven-shade-plugin + 3.1.1 + + + package + + shade + + + + + org.eclipse.passage.releng.maven.CompletePom + + + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + + + + + + \ No newline at end of file