Install IPLM PiForce

Overview

IPLM PiForce is an application that allows IPLM Web to communicate with a P4 Server.

For Perforce and P4Stream dm types, PiForce lets you:

  • Download and preview file contents from file list releases on the contents page.

  • Access file lists from revision releases on the contents page (as well as download and preview the file contents as with filelist releases).

Considerations

  • PiForce needs to be accessible from IPLM Web, and PiForce needs to have access to the P4 server (this will normally be port 1666 on the machine hosting the (P4D).

  • Before installing IPLM PiForce, ensure that Java 11 is installed as per the Preliminary Steps.

  • If you are installing IPLM PiForce on its own machine, you need to configure the IPLM repositories.

Step 1: Install IPLM PiForce

Run the following command:

Copy
sudo yum install iplm-piforce

By default, IPLM PiForce will run as the mdxadmin user. If you are using an SSL enabled version of P4D, then you will need to set up trust files before IPLM PiForce can be used.

Step 2a: Copy a trust file

If you already have a suitable .p4trust file in an existing environment, the easiest solution may be to simply copy this file into the PiForce environment. If you have used P4. then there is probably a .p4trust file in your home directory.

Run the following command:

Copy
sudo -u mdxadmin -i
cp <my home directory>/.p4trust .p4trust
chown mdxadmin .p4trust

The contents of the file will look something like this:

Copy
10.0.0.42:1666=**++**:6E:3E:00:42:9F:11:38:ED:10:01:10:00:20:DE:52:A8:3D:24:D0:43

Where 10.0.0.42 is the IP address of the P4D server, 1666 is the port it is running on, and the rest is the SSL fingerprint for the server.

Step 2b: Create a trust file

The other alternative is to create a new trust file. This requires using the P4 CLI tool to connect to the server and write out a .p4trust file. p4 can be installed following the P4 installation instructions, but is also included in the iplm-piextras package.

Check out Perforce Packages for more information on installing Perforce products or making product updates.

Run the following command:

Copy
sudo yum install -y iplm-piextras
sudo -u mdxadmin -i
p4 -pssl:perforce:1666 trust -fy

This will create a .p4trust file in the mdxadmin home directory, which by default is /var/lib/run/mdxadmin. Note that this directory will be cleared if the machine is rebooted. It is recommended that the location of the mdxadmin directory is changed to a more permanent location.

Important:  Note that prior to PiForce 2024.1.1, PiForce shipped with a version of p4java that used an old version of TLS that is not supported by modern versions of P4D.

PiForce needs to be configured to talk to the correct P4D. Edit the /etc/mdx/piforce.yml file with the P4PORT of the Helix Core server that is being communicated with. This will normally be the name of the machine that P4D is installed on, running on port 1666.

If you are using SSL, then the uri prefix should be p4javassl:, otherwise it is p4java:

Copy
p4:
    # P4 server
    server:
        # URI (protocol://host:port)
        # Protocols:
        # - p4java
        # - p4javassl
        uri: p4javassl://perforce:1666

Step 3: Start IPLM PiForce

To start PiForce, run the following command:

Copy
sudo systemctl start piforce

To enable PiForce to automatically start on boot, run:

Copy
sudo systemctl enable piforce

Step 4: Test IPLM PiForce

You can test that PiForce is working by running the following command:

Copy
curl http://localhost:8088/p4/server

If it succeeds, then it should return JSON data on the P4D instance that PiForce is connected to.

If you get an error similar to Cannot connect to server at p4java://localhost:1666 then this means the uri that you configured for P4D is wrong, P4D is not running, or that there is a connection problem to P4D.

Step 5: Configure IPLM PiForce

Follow the instructions in PiForce Administration to configure PiForce.

Next steps

Once you have completed the IPLM PiForce installation, follow the instructions to install Redis open source server.