Managing site-specific Perl modules

You can use the ActiveState Perl Package Manager (PPM) to manage your site-specific Perl modules. You must install your site-specific Perl modules outside the OnCommand Workflow Automation (WFA) installation directory to avoid deletion of your Perl modules during a WFA upgrade.

About this task

Using the PERL5LIB environment variable, you can configure the Perl interpreter installed on the WFA server to use your Perl modules.

Installation of the Try-Tiny Perl module in the user area at c:\Perl is used as an example in this procedure. This user area is not deleted when you uninstall WFA, and you can reuse the area after WFA is reinstalled or upgraded.

Procedure

  1. Set the PERL5LIB environment variable to the location where you want to install your Perl modules.
    c:\>echo %PERL5LIB%c:\Perl
  2. Optional: Verify that the Perl module area is not initialized by using ppm area list.
    c:\Program Files\NetApp\WFA\Perl64\bin>ppm area list
    ┌────────┬──────┬───────────────────────────────────────────────────┐
    │ name   │ pkgs │ lib                                               │
    ├────────┼──────┼───────────────────────────────────────────────────┤
    │ (user) │  n/a │ C:/Perl                                           │
    │  site* │  0   │ C:/Program Files/NetApp/WFA/Perl64/site/lib       │
    │  perl  │  229 │ C:/Program Files/NetAPP/WFA/Perl64/lib            │
    └────────┴──────┴───────────────────────────────────────────────────┘
    
  3. Initialize the Perl module area by using ppm area init user.
    c:\Program Files\NetApp\WFA\Perl64\bin>ppm area init user
    Syncing user PPM database with .packlists...done
  4. Optional: Verify that the Perl module area is initialized by using ppm area list.
    c:\Program Files\NetApp\WFA\Perl64\bin>ppm area list
    ┌────────┬──────┬───────────────────────────────────────────────────┐
    │ name   │ pkgs │ lib                                               │
    ├────────┼──────┼───────────────────────────────────────────────────┤
    │  user  │  0   │ C:/Perl                                           │
    │  site* │  0   │ C:/Program Files/NetApp/WFA/Perl64/site/lib       │
    │  perl  │  229 │ C:/Program Files/NetAPP/WFA/Perl64/lib            │
    └────────┴──────┴───────────────────────────────────────────────────┘
    
  5. Add the required repositories and install the required packages.
    1. Add the required repository by using ppm repo add.
      c:\Program Files\NetApp\WFA\Perl64\bin>ppm repo add http://ppm4.activestate.com/MSWin32-x64/5.16/1600/package.xml
      Downloading ppm4.activestate.com packlist...done
      Updating ppm4.activestate.com database...done
      Repo 1 added.
    2. Optional: Verify that the required repository is added by using ppm repo list.
      c:\Program Files\NetApp\WFA\Perl64\bin>ppm repo list
      ┌────────┬──────┬────────────────────────────────────────────────┐
      │ id     │ pkgs │ name                                           │
      ├────────┼──────┼────────────────────────────────────────────────┤
      │  1     │17180 │ ppmr.activestate.com                           │
      └────────┴──────┴────────────────────────────────────────────────┘
       (1 enabled repository)
    3. Install the required Perl module by using ppm install.
      c:\Program Files\NetApp\WFA\Perl64\bin>ppm install Try-Tiny --area user
      Downloading ppm4.activestate.com packlist...done
      Updating ppm4.activestate.com database...done
      Downloading Try-Tiny-0.18...done
      Unpacking Try-Tiny-0.18...done
      Generating HTML for Try-Tiny-0.18...done
      Updating files in user area...done
         2 files installed
    4. Optional: Verify that the required Perl module is installed by using ppm area list.
      c:\Program Files\NetApp\WFA\Perl64\bin>ppm area list
      ┌────────┬──────┬────────────────────────────────────────────────┐
      │ name   │ pkgs │ lib                                            │
      ├────────┼──────┼────────────────────────────────────────────────┤
      │  user  │  1   │ C:/Perl                                        │
      │  site* │  0   │ C:/Program Files/NetApp/WFA/Perl64/site/lib    │
      │  perl  │  229 │ C:/Program Files/NetAPP/WFA/Perl64/lib         │
      └────────┴──────┴────────────────────────────────────────────────┘