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

tuhaihe pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudberry.git


The following commit(s) were added to refs/heads/main by this push:
     new 476527f3b85 Drop the prebuilt gppkg samples and widen the binary check
476527f3b85 is described below

commit 476527f3b85af355da5e77ee96a30fe3f7b4461d
Author: Dianjin Wang <[email protected]>
AuthorDate: Tue Sep 22 16:27:19 2026 +0800

    Drop the prebuilt gppkg samples and widen the binary check
    
    The Incubator releasecheck tool reports binary files in the 2.2.0-rc1
    source archive.  Looking at each one, only two are avoidable.
    
    gpMgmt/demo/gppkg/data/ held a .deb and an .rpm, and they are output of
    the script sitting beside them: generate_sample_gppkg.sh writes them
    there in buildNative and reads them back in buildGppkg.  Anyone who needs
    them can run the first step, which is what its README already describes,
    so they go.
    
    The rest stay and are recorded instead:
    
      - the sample.gppkg the gppkg behave suite installs, which has to be a
        real package because the tests exercise package handling
      - src/bin/pgevent/MSG00001.bin, which comes from PostgreSQL, is
        referenced by pgmsgevent.rc, and is described by the README next to
        it.  Cloudberry never builds it: src/bin/Makefile only adds pgevent
        to SUBDIRS when PORTNAME is win32
    
    Widening the check matters as much as the deletion.  It looked at class,
    jar, tar, tgz, zip, exe, dll, so, gz and bz2, so none of the files the
    tool found would have tripped it, including the two removed here.  It now
    covers deb, rpm, gppkg and bin as well, with the two kept files
    allowlisted.
    
    README.apache.md gains a section giving the reason for each allowlisted
    file, and records the PAX Python API test data
    (contrib/pax_storage/src/api/python3/test/test.file*).  Those are
    PAX-format fixtures read by paxpy_test.py, one per set of column types.
    Their names carry no extension the check can match, so documenting them
    is all that is possible; they are listed so the set is not invisible.
    
    Checked by running the workflow's allowlist logic over the tree: with deb,
    rpm, gppkg and bin added, every matching file is accounted for, and every
    allowlist entry still exists.
    
    Assisted-by: Claude Code
    Backpatch-through: REL_2_STABLE
---
 .github/workflows/apache-rat-audit.yml             |   6 +++--
 README.apache.md                                   |  28 +++++++++++++++++++++
 gpMgmt/demo/gppkg/data/sample-0.0-1.amd64.deb      | Bin 888 -> 0 bytes
 .../demo/gppkg/data/sample-0.0.1-noop.x86_64.rpm   | Bin 2484 -> 0 bytes
 4 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/apache-rat-audit.yml 
b/.github/workflows/apache-rat-audit.yml
index 53df0a40b40..6cecf9dbabb 100644
--- a/.github/workflows/apache-rat-audit.yml
+++ b/.github/workflows/apache-rat-audit.yml
@@ -115,7 +115,7 @@ jobs:
       - name: Check for binary files
         run: |
           echo "Checking for binary files..."
-          echo "Checking extensions: class, jar, tar, tgz, zip, exe, dll, so, 
gz, bz2"
+          echo "Checking extensions: class, jar, tar, tgz, zip, exe, dll, so, 
gz, bz2, deb, rpm, gppkg, bin"
           echo 
"----------------------------------------------------------------------"
           
           # Binary file allowlist, see README.apache.md
@@ -127,10 +127,12 @@ jobs:
             "src/bin/gpfdist/regress/data/gpfdist2/gz_multi_chunk_2.tbl.gz"
             "src/bin/gpfdist/regress/data/gpfdist2/lineitem.tbl.bz2"
             "src/bin/gpfdist/regress/data/gpfdist2/lineitem.tbl.gz"
+            "gpMgmt/test/behave/mgmt_utils/steps/data/sample.gppkg"
+            "src/bin/pgevent/MSG00001.bin"
           )
           
           # Check for specific binary file extensions
-          binary_extensions="class jar tar tgz zip exe dll so gz bz2"
+          binary_extensions="class jar tar tgz zip exe dll so gz bz2 deb rpm 
gppkg bin"
           echo "BINARY_EXTENSIONS=${binary_extensions}" >> $GITHUB_ENV
           binary_results=""
           binaryfiles_found=false
diff --git a/README.apache.md b/README.apache.md
index e99f2b2328f..adeedace124 100644
--- a/README.apache.md
+++ b/README.apache.md
@@ -50,3 +50,31 @@ The following compressed files are included in the source 
tree. These files are
 - src/bin/gpfdist/regress/data/gpfdist2/gz_multi_chunk_2.tbl.gz
 - src/bin/gpfdist/regress/data/gpfdist2/lineitem.tbl.bz2
 - src/bin/gpfdist/regress/data/gpfdist2/lineitem.tbl.gz
+
+## Binary Files in Source
+
+A source release should not carry compiled artifacts, so the licence audit
+workflow fails on binary file extensions unless the file is allowlisted. The
+following are allowed, with the reason for each.
+
+- gpMgmt/test/behave/mgmt_utils/steps/data/sample.gppkg
+
+  A small sample package that the `gppkg` behave suite installs and removes.
+  The tests exercise package handling itself, so the fixture has to be a real
+  package.
+
+- src/bin/pgevent/MSG00001.bin
+
+  Inherited from PostgreSQL, where it is also shipped. It is the output of the
+  Microsoft Message Compiler and is referenced from `pgmsgevent.rc` when
+  building the Windows event log DLL; `src/bin/pgevent/README` describes how it
+  is produced. Cloudberry does not build it: `src/bin/Makefile` only puts
+  `pgevent` in `SUBDIRS` when `PORTNAME` is `win32`.
+
+The PAX Python API test data under
+`contrib/pax_storage/src/api/python3/test/` (`test.file1` through `test.file9`,
+plus `test.file3.vm1`, `test.file3.vm2` and `test.file7.toast`) is also binary:
+each file is a PAX-format data file covering a particular set of column types,
+read by `paxpy_test.py`. These names carry no recognised extension, so the
+workflow's extension-based check does not see them; they are recorded here so
+the set is documented rather than invisible.
diff --git a/gpMgmt/demo/gppkg/data/sample-0.0-1.amd64.deb 
b/gpMgmt/demo/gppkg/data/sample-0.0-1.amd64.deb
deleted file mode 100644
index 729515c6593..00000000000
Binary files a/gpMgmt/demo/gppkg/data/sample-0.0-1.amd64.deb and /dev/null 
differ
diff --git a/gpMgmt/demo/gppkg/data/sample-0.0.1-noop.x86_64.rpm 
b/gpMgmt/demo/gppkg/data/sample-0.0.1-noop.x86_64.rpm
deleted file mode 100644
index ab635f140a3..00000000000
Binary files a/gpMgmt/demo/gppkg/data/sample-0.0.1-noop.x86_64.rpm and 
/dev/null differ


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to