Converting the INFINIDAT ODM RPM to an AIX Fileset package

Follow

Converting the INFINIDAT ODM RPM to an AIX Fileset package is needed when you build an AIX package to install our ODM settings using the AIX packaging system.

Before you begin

  1. The following commands are to be executed using root on a AIX 7.1 under a kshbash or zsh shell
  2. This guide converts version 2.2.3.2 of the ODM RPM package; you can change the version number if needed

Creating the package

  1. Make sure you have the infinidat odm RPM package installed:

    rpm -Uvh http://repo.infinidat.com/packages/main-stable/index/packages/infinidat-odm/releases/2.2.3.2/distributions/aix-5.3/architectures/powerpc/extensions/rpm/infinidat-odm-2.2.3.2-aix-5.3-powerpc.rpm
  2. Make sure you have the bos.adt.insttools installed

    # lslpp -l bos.adt.insttools
      Fileset                      Level  State      Description
      ----------------------------------------------------------------------------
    Path: /usr/lib/objrepos
      bos.adt.insttools          7.1.4.0  COMMITTED  Tool to Create installp
                                                     Packages
    
    
    Path: /etc/objrepos
      bos.adt.insttools          7.1.4.0  COMMITTED  Tool to Create installp
                                                     Packages
  3. Prepare the package files

    cd ~
    rm -rf build/infinidat/odm
    mkdir -p build/infinidat/odm
    cd build/infinidat/odm
    cat <<EOF > infinidat.odm.template
    Package Name: infinidat.odm
    Package VRMF: 2.2.3.2
    Update: n
    Fileset
      Fileset Name: infinidat.odm.rte
      Fileset VRMF: 2.2.3.2
      Fileset Description: Delivers the Infinibox ODM packages.
      Copyright file path: /root/build/infinidat/odm/infinidat.odm.copyright
      USRLIBLPPFiles
      Unconfiguration Script: /root/build/infinidat/odm/infinidat.odm.unconfig
      EOUSRLIBLPPFiles
      Bosboot required: y
      License agreement acceptance required: n
      Include license files in this package: n
      Requisites:
      USRFiles
      /etc/methods/NFINIDAT.cat
      /usr/lpp/infinidat.odm
      /usr/lpp/infinidat.odm/infinidat.odm.rte.odmadd
      /usr/lpp/infinidat.odm/infinidat.odm.rte.odmdel
      /usr/lpp/infinidat.odm/infinidat.odm.rte.unodmadd
      EOUSRFiles
      ROOT Part: N
      ROOTFiles
      EOROOTFiles
      Relocatable: y
      Requisites_r:
    EOFileset
    EOF
    
    mkdir -p usr/lpp/infinidat.odm etc/methods
    cp -f /opt/infinidat/odm/infinidat.odm usr/lpp/infinidat.odm/infinidat.odm.rte.odmadd
    grep odmdelete /opt/infinidat/odm/infinidat_clean_odm > usr/lpp/infinidat.odm/infinidat.odm.rte.odmdel
    cp -f usr/lpp/infinidat.odm/infinidat.odm.rte.odmdel usr/lpp/infinidat.odm/infinidat.odm.rte.unodmadd
    gencat etc/methods/NFINIDAT.cat /opt/infinidat/odm/NFINIDAT.msg
     
    cat <<EOF > infinidat.odm.unconfig
    #!/bin/ksh
    # Make sure we remove the catalog file that we put on the system
    # It needs to be remove on uninstall
    rm -f /etc/methods/NFINIDAT.cat 2>&1 >/dev/null
    exit 0
    EOF
     
    touch usr/lpp/infinidat.odm/infinidat.odm.rte.unodmadd usr/lpp/infinidat.odm/infinidat.odm.unconfig infinidat.odm.copyright
     
  4. Generate the package:

    # rm -rf .info tmp; LANG=C LC_ALL=C mkinstallp -d /root/build/infinidat/odm -T /root/build/infinidat/odm/infinidat.odm.template
    Using /root/build/infinidat/odm as the base package directory.
    Cannot find /root/build/infinidat/odm/.info. Attempting to create.
    Using /root/build/infinidat/odm/.info to store package control files.
    Cleaning intermediate files from /root/build/infinidat/odm/.info.
    Using /root/build/infinidat/odm/infinidat.odm.template as the template file.
    0503-880 mkinstallp: Warning: /etc/methods/NFINIDAT.cat exists in another fileset on the system.
    0503-880 mkinstallp: Warning: /usr/lpp/infinidat.odm/infinidat.odm.rte.odmadd exists in another fileset on the system.
    0503-880 mkinstallp: Warning: /usr/lpp/infinidat.odm/infinidat.odm.rte.odmdel exists in another fileset on the system.
    0503-880 mkinstallp: Warning: /usr/lpp/infinidat.odm/infinidat.odm.rte.unodmadd exists in another fileset on the system.
    processing infinidat.odm 2.2.3.2 I package
    processing infinidat.odm.rte 2.2.3.2 fileset
    creating ./usr/lpp/infinidat.odm/liblpp.a
    creating ./tmp/infinidat.odm.2.2.3.2.bff
     

    You now have the fileset saves as /root/build/infinidat/odm/tmp/infinidat.odm.2.2.3.2.bff

    The warnings shown in the example above can be safely ignored

 

Creating a lpp_source and installing the ODM into a SPOT

  1. Create a installation image format: 

    bffcreate -d $PWD/tmp -t $PWD/lpp_source  infinidat.odm.rte
    
    
    
  2. Define that directory as a lpp_source in NIM: 

    nim -o define -t lpp_source -a server=master -a location=$PWD/lpp_source -a packages=infinidat.odm.rte infinidat-odm
  3. Install the ODM inside the a SPOT: 

    nim -o cust -a lpp_source=infinidat-odm -a filesets=infinidat.odm.rte  <your-spot-name-here>
    
    
    
    

 

Testing the package

  1. Check that INFINIDAT entries exist in the ODM:

    # odmget PdAt | grep -p NFINIDAT | wc -l
    583
  2. Remove the ODM RPM: 

    rpm -e infinidat-odm-2.2.3.2-1
  3. Check that no INFINIDAT entries exist in the ODM: 

    # odmget PdAt | grep -p NFINIDAT | wc -l
    0
    
    
  4. Install the generated package:

    # installp -acXgd tmp infinidat.odm.rte
    +-----------------------------------------------------------------------------+
    		    Pre-installation Verification...
    +-----------------------------------------------------------------------------+
    Verifying selections...done
    Verifying requisites...done
    Results...
    SUCCESSES
    ---------
      Filesets listed in this section passed pre-installation verification
      and will be installed.
      Selected Filesets
      -----------------
      infinidat.odm.rte 2.2.3.2                   # Delivers the Infinibox ODM p...
      << End of Success Section >>
    +-----------------------------------------------------------------------------+
    		   BUILDDATE Verification ...
    +-----------------------------------------------------------------------------+
    Verifying build dates...done
    FILESET STATISTICS
    ------------------
        1  Selected to be installed, of which:
            1  Passed pre-installation verification
      ----
        1  Total to be installed
    installp:  bosboot verification starting...
    installp:  bosboot verification completed.
    +-----------------------------------------------------------------------------+
    			 Installing Software...
    +-----------------------------------------------------------------------------+
    installp: APPLYING software for:
    	infinidat.odm.rte 2.2.3.2
    
    . . . . . << Copyright notice for infinidat.odm >> . . . . . . .
    . . . . . << End of copyright notice for infinidat.odm >>. . . .
    Finished processing all filesets.  (Total time:  2 secs).
    installp:  bosboot verification starting...
    installp:  bosboot verification completed.
    installp:  bosboot process starting...
    bosboot: Boot image is 51228 512 byte blocks.
    0503-292 This update will not fully take effect until after a
    	system reboot.
        * * *  A T T E N T I O N  * * *
        System boot image has been updated. You should reboot the
        system as soon as possible to properly integrate the changes
        and to avoid disruption of current functionality.
    installp:  bosboot process completed.
    +-----------------------------------------------------------------------------+
    				Summaries:
    +-----------------------------------------------------------------------------+
    Installation Summary
    --------------------
    Name                        Level           Part        Event       Result
    -------------------------------------------------------------------------------
    infinidat.odm.rte           2.2.3.2         USR         APPLY       SUCCESS
  5. Check that INFINIDAT entries exist in the ODM: 

    # odmget PdAt | grep -p NFINIDAT | wc -l
    583
    # lslpp -l | grep infin | wc -l
    1
  6. Remove the package: 

    # installp -u infinidat.odm.rte
    +-----------------------------------------------------------------------------+
    		    Pre-deinstall Verification...
    +-----------------------------------------------------------------------------+
    Verifying selections...done
    Verifying requisites...done
    Results...
    SUCCESSES
    ---------
      Filesets listed in this section passed pre-deinstall verification
      and will be removed.
      Selected Filesets
      -----------------
      infinidat.odm.rte 2.2.3.2                   # Delivers the Infinibox ODM p...
      << End of Success Section >>
    FILESET STATISTICS
    ------------------
        1  Selected to be deinstalled, of which:
            1  Passed pre-deinstall verification
      ----
        1  Total to be deinstalled
    installp:  bosboot verification starting...
    installp:  bosboot verification completed.
    +-----------------------------------------------------------------------------+
    			   Deinstalling Software...
    +-----------------------------------------------------------------------------+
    installp: DEINSTALLING software for:
    	infinidat.odm.rte 2.2.3.2
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    0518-307 odmdelete: 0 objects deleted.
    Finished processing all filesets.  (Total time:  3 secs).
    installp:  bosboot verification starting...
    installp:  bosboot verification completed.
    installp:  bosboot process starting...
    bosboot: Boot image is 51228 512 byte blocks.
    0503-292 This update will not fully take effect until after a
    	system reboot.
        * * *  A T T E N T I O N  * * *
        System boot image has been updated. You should reboot the
        system as soon as possible to properly integrate the changes
        and to avoid disruption of current functionality.
    installp:  bosboot process completed.
    +-----------------------------------------------------------------------------+
    				Summaries:
    +-----------------------------------------------------------------------------+
    Installation Summary
    --------------------
    Name                        Level           Part        Event       Result
    -------------------------------------------------------------------------------
    infinidat.odm.rte           2.2.3.2         USR         DEINSTALL   SUCCESS
  7. Check that no INFINIDAT entries exist in the ODM:

    # odmget PdAt | grep -p NFINIDAT | wc -l
    0
    # lslpp -l | grep infin | wc -l
    0
    
    

 


Comments