Creating a ship list filter file

The ship list filter file is mandatory for Linux and UNIX, and optional for z/OS® and IBM® i. The ship list filter file specifies which build files you want to include or exclude in your package archive.

About this task

Before you run a packaging build, you must create a ship list filter file on the Linux or UNIX build machine where your packaging build will run. The ship list filter file is a text file you create. It contains a list of file specifiers that identify the contents produced by the build that you want to save in the package archive. You must modify the Ship List File property in your package definition to point to the ship list filter file on your build or packaging machine. This file is optional for z/OS and IBM i.

Procedure

  1. On the Linux/UNIX Packaging tab of the Package Definition editor, enter the file path to your ship list file in the Ship list file field. If you use z/OS or IBM i, you can specify your ship list filter file from either the IBM i or z/OS Packaging tab of the Package Definition editor. Click Add next to the Include field on the Package tab, and the Ship List Manager opens. You can add the ship list filter property on the Properties tab of your IBM i or z/OS package definition.
  2. Create your ship list filter file based on your build machine file system type, and according to the following examples. Because different file systems have different syntax formats for specifying resources, this syntax is different for each file system.
    • On AIX®, the ship list file filter uses a directory container type and a file resource type to package directory-based resources. To specify all files in the directory bin and all recursive subdirectory contents of the directory lib, the ship list file contents would be:
      <?xml version="1.0"?>
      <manifest type="MANIFEST_SHIPLIST">
         <container name="lib" type="directory">
            <resource name="**" type="file"/>
         </container>
         <container name="bin" type="directory">
            <resource name="*" type="file"/>
         </container>
      </manifest>
      In other words, this ship list file indicates that files in the directory bin should be packaged, and all recursive subdirectory contents of the directory lib should also be packaged.
    • On IBM i, the ship list file filter uses an IBMiLibrary container type and an IBMiObject resource type to package library-based resources. If you want to archive all the members in an object to a package, you can use an asterisk * in the resource name clause; for example, your ship list file for IBM i might be similar to this sample:
      <?xml version="1.0"?>  
      <manifest type="MANIFEST_SHIPLIST">
      <container name="RMOBJ*" type="IBMiLibrary">
      <resource name="*" type="IBMiObject" IBMiType="*"/>
      </container>
      </manifest>
      In the example above, the ship list filter file indicates that all members (regardless of type) in every library that satisfy the RMOBJ* filter should be packaged.

      You can create a text file for the ship list filter file and save it to a path on the IBM i system, such as: /QIBM/HOME/LYDIAD/TESTPKG.TXT.

      Example 1
      To specify a ship list filter that includes program object MAILLIST, all service programs and display files that start with ML*, all physical files, and all logical files in library MLBUILD, your ship list file would be:
      <?xml version="1.0"?>
      <manifest type="MANIFEST_SHIPLIST">
         <container name="MLBUILD" type="IBMiLibrary">
            <resource name="MAILLIST" type="IBMiObject" IBMiType="*PGM"/>
            <resource name="ML*" type="IBMiObject" IBMiType="*SRVPGM"/>
            <resource name="*" type="IBMiObject" IBMiType="*PF"/>
            <resource name="*" type="IBMiObject" IBMiType="*LF"/>
            <resource name="ML*" type="IBMiObject" IBMiType="*DSPF"/>
         </container>
      </manifest>
      Example 2
      To include all objects in library MLBUILD, excluding all *MODULE type objects, your ship list file would be:
      <?xml version="1.0"?>
      <manifest type="MANIFEST_SHIPLIST">
         <container name="MLBUILD" type="IBMiLibrary">
            <resource name="*" type="IBMiObject" IBMiType="*"/>
         </container>
      </manifest>
      And your exclude file would be:
      <?xml version="1.0"?>
      <manifest type="MANIFEST_SHIPLIST">
      <container name="MLBUILD" type="IBMiLibrary">
      <resource name="*" type="IBMiObject" IBMiType="*MODULE"/>
      </container>
      </manifest>
      For more information about how to create an exclude file, refer to this topic: Creating an include or exclude file (optional).
    • On z/OS, the ship list file filter uses a PDS container type and a PDSmember resource type to package PDS-based resources. If you want all members in a partitioned data set (PDS) to be archived to a package, you can use an asterisk * in the resource name clause; for example, to package member BLZCPBTK from PDS BLD.JCL , and all members in the PDS BLD.LOAD1 , and members ORDRSET and RDBKC01 from PDS BLD.LOAD2 , your ship list file would be similar to this sample:
      <?xml version="1.0"?>
      <manifest type="MANIFEST_SHIPLIST">
         <container name="BLD.JCL" type="PDS">
            <resource name="BLZCPBTK" type="PDSMember"/>
         </container>
         <container name="BLD.LOAD1" type="PDS">
            <resource name="*" type="PDSMember"/>
         </container>
         <container name="BLD.LOAD2" type="PDS">
            <resource name="ORDRSET" type="PDSMember"/?
            <resource name="RDBKC01" type="PDSMember"/>
         </container>
      </manifest>
  3. Enter the absolute path to your ship list file in the Ship List File field on the Linux/UNIX Packaging tab of the package definition.
  4. Click Save on the Package Definition editor.

video icon Video

Jazz.net channel
Software Education channel

learn icon Courses

IoT Academy
Skills Gateway

ask icon Community

Jazz.net
Jazz.net forums
Jazz.net library

support icon Support

IBM Support Community
Deployment wiki