This is an automated email from the ASF dual-hosted git repository.

jungm pushed a commit to branch ee11
in repository https://gitbox.apache.org/repos/asf/tomee-tck.git

commit 9a893bb6af0d9b7f522775e3de94248789613ed1
Author: Markus Jung <[email protected]>
AuthorDate: Sun Jul 19 23:17:38 2026 +0200

    Build the old-tck bundles without the native zip binary
    
    The CI containers ship no zip executable, so the old-tck source build died
    packaging its bundle. The download step now patches the release build to
    take its portable ant <zip> fallback on every platform, and fixes that
    fallback's includes pattern to recurse into the bundle directory (it
    matched only the directory entry, producing an empty zip). Verified by
    rebuilding the security-old bundle inside the pinned zip-less container:
    21 MB, 1,490 files, same as the native-zip original.
---
 runner-standalone/faces-old/pom.xml    | 16 ++++++++++++++++
 runner-standalone/security-old/pom.xml | 16 ++++++++++++++++
 2 files changed, 32 insertions(+)

diff --git a/runner-standalone/faces-old/pom.xml 
b/runner-standalone/faces-old/pom.xml
index 221fa63..9b9a644 100644
--- a/runner-standalone/faces-old/pom.xml
+++ b/runner-standalone/faces-old/pom.xml
@@ -125,6 +125,22 @@
                 <!-- The build script invokes a bare `mvn`; route it through
                      the repository's Maven wrapper instead. -->
                 <replace file="${oldtck.source.dir}/docker/build_oldtck.sh" 
token="mvn -f" value="&quot;$MVNW&quot; -f"/>
+                <!-- The bundle packaging execs the native zip binary on unix
+                     platforms, and the CI containers ship none. Renaming the
+                     platform condition's property steers the build onto its
+                     portable ant <zip> fallback (-ant-zip). The native path
+                     additionally chmods unix.sh inside the bundle, but the
+                     bundle is consumed via ant <unzip>, which drops
+                     permissions anyway. -->
+                <replaceregexp 
file="${oldtck.source.dir}/release/tools/build.xml"
+                               match="property *=&quot;isUnixPlatform&quot;"
+                               
replace="property=&quot;isUnixPlatformNativeZip&quot;"/>
+                <!-- The fallback's includes pattern matches only the bundle
+                     directory entry itself, producing an empty zip; recurse
+                     into its contents like the native `zip -r` did. -->
+                <replaceregexp 
file="${oldtck.source.dir}/release/tools/build.xml"
+                               match="includes=&quot;(\$\{zip\.name\})&quot;"
+                               replace="includes=&quot;\1/**&quot;"/>
                 <!-- Anchor the wrapper's multi-module root inside the TCK
                      sources so its path properties resolve against the TCK,
                      not this repository. -->
diff --git a/runner-standalone/security-old/pom.xml 
b/runner-standalone/security-old/pom.xml
index add8c72..b38dce0 100644
--- a/runner-standalone/security-old/pom.xml
+++ b/runner-standalone/security-old/pom.xml
@@ -168,6 +168,22 @@
                 <!-- The build script invokes a bare `mvn`; route it through
                      the repository's Maven wrapper instead. -->
                 <replace file="${oldtck.source.dir}/docker/build_oldtck.sh" 
token="mvn -f" value="&quot;$MVNW&quot; -f"/>
+                <!-- The bundle packaging execs the native zip binary on unix
+                     platforms, and the CI containers ship none. Renaming the
+                     platform condition's property steers the build onto its
+                     portable ant <zip> fallback (-ant-zip). The native path
+                     additionally chmods unix.sh inside the bundle, but the
+                     bundle is consumed via ant <unzip>, which drops
+                     permissions anyway. -->
+                <replaceregexp 
file="${oldtck.source.dir}/release/tools/build.xml"
+                               match="property *=&quot;isUnixPlatform&quot;"
+                               
replace="property=&quot;isUnixPlatformNativeZip&quot;"/>
+                <!-- The fallback's includes pattern matches only the bundle
+                     directory entry itself, producing an empty zip; recurse
+                     into its contents like the native `zip -r` did. -->
+                <replaceregexp 
file="${oldtck.source.dir}/release/tools/build.xml"
+                               match="includes=&quot;(\$\{zip\.name\})&quot;"
+                               replace="includes=&quot;\1/**&quot;"/>
                 <!-- Anchor the wrapper's multi-module root inside the TCK
                      sources so its path properties resolve against the TCK,
                      not this repository. -->

Reply via email to