Building a PeopleSoft Image – OCI Marketplace

In this video we will build a new PeopleSoft Image to check out some of the newer features. We will use OCI to host our image because the PeopleSoft team provides us with images that are ready to build. We just need to provide some passwords and away we go.

YouTube player

OCI Marketplace Images

The OCI Marketplace is where you can find pre-packaged software ready to deploy on OCI. Each new image release, the PeopleSoft team pushes a new build for each application. For this demo, we will use Finance Image 46.

There are a few benefits to the OCI Marketplace-based PeopleSoft Images over other methods.

  • No need to download DPK files to a server
  • They come with Elasticsearch and Kibana pre-packaged
  • They are updated each release and easy to build for developers
  • Doesn’t require Cloud Manager or MOS Download rights

There are a few drawbacks to using these images though.

  • They don’t support the new VM.Standard Flex shapes
  • You need an OCI account and privileges to create a new instance (and virtual cloud network)

Boot Volume

When building a Marketplace-based Image, you must increase the boot volume to at least 200GB. This will ensure there is plenty of space to extract the DPK files and install PeopleSoft.

Generate Passwords

You can enter these by hand – it’s a JSON string – but there are different requirements for each password. You can use the sample JSON below for reference, but let’s take a quick tangent and I’ll show you how I generated my passwords.

The secret is psst

To run psst, you need Python and Git installed:

For Windows you can use Powershell and Chocolatey to install these:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; 
iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

choco install python3 -y
choco install git -y

For Linux and macOS:

yum install git -y
yum install python3 -y

The psst tool is hosted on Github and you can clone the code to run it:

git clone https://github.com/psadmin-io/psst.git

cd psst
pip install .
psst secrets generate -oci

{
    "connect_pwd": "eu9P3HCj6WwI95vj498JX6Yzjk6VGS",
    "access_pwd": "hsRqmDFjyrntMEJ74fMBBwMKi",
    "admin_pwd": "0WkAoB531GXr#2AtvpNo9SZ5u-_gEh",
    "weblogic_admin_pwd": "#ma1Q4%7SrIyKmpfIT3iS!&1Q22o$x",
    "webprofile_user_pwd": "xSFb74gd2YeyvkXjh1s9tI7wDK9Dew",
    "gw_user_pwd": "xtc4IxtBkDiNpJCMT04wRXGUNHG4bQ",
    "domain_conn_pwd": "G2rxzYThC2BTKq5DfHc",
    "opr_pwd": "78rN8StJt8rvSaUwB1FAWgEMK"
}

You can copy the JSON and paste it directly into the OCI Console’s “cloud-init” section.

Host File

Our instance is created with a public IP address, but the DNS name is private to your OCI Cloud Network. To translate between the two, we will add a hosts entry to our computer. Grab both the Public IP and Internal FQDN values from the Instances page.

For Linux and macOS

echo "<ip address> <fqdn>" | sudo tee -a /etc/hosts

For Windows, add this line to the end of the file c:\Windows\System32\drivers\etc\hosts

<ip address> <fqdn>

For example, my hosts entry looks like this:

129.213.146.185 fscm046.subnet12081732.vcn12081732.oraclevcn.com

SSH Key

Linux, macOS, and WSL Users:

chmod 600 ~/Downloads/ssh-key-2022-12-08.key 
ssh -i ~/Downloads/ssh-key-2022-12-08.key opc@<IP>

PuTTY for Windows

  • Convert SSH Key to Putty Format with PuTTYGen
  • Connect with PuTTY

Ingress Rules in OCI

  1. PIA Rule

    • CIDR Block: 0.0.0.0/0
    • Destination Port: 8000
  2. Kibana Rule

    • CIDR Block: 0.0.0.0/0
    • Destination Port: 5601
  3. TNS Rule (Optional – Required for App Designer or SQL access)

    • CIDR Block: 0.0.0.0/0
    • Destination Port: 1521

(Optional) Add firewalld Rule for TNS

sudo firewall-cmd --permanent --zone=public --add-port=1521/tcp
sudo firewall-cmd --reload

#331 – psst

Dan and Kyle are back and this week they discuss SSH tips, playing Minecraft, and Kyle’s new PeopleSoft Secrets Tool (psst).

The PeopleSoft Administrator Podcast is hosted by Dan Iverson and Kyle Benson.

Show Notes


#326 – Portal Registry Migration Fixes

The PeopleSoft Administrator Podcast hosted by Dan Iverson and Kyle Benson

This week on the podcast, Kyle and Dan talk about what they learned about migrating PeopleTools Portal Registry objects.

Show Notes

Portal Registry Migration Fix

Sometimes when migrating Portal Registry objects I find that they do not show up in the Navigator, or even Structure and Content, until I clear cache, run VERSION, or even make a nominal change to the Portal Registry. We talked about this on the podcast in episode #303. I took Kyle’s idea of adding a sibling record in Structure and Content and traced what SQL was changing when saving the sibling record. There were INSERT statements for the new CREF, but there are also some important VERSION updates.

  1. Update overall VERSION to track the new changes
  2. Update the VERSION specifically for the Portal Registry object types
  3. Update the VERSION for the parent Portal Registry folder (in my case, the Root folder)

Below is a script I use with Phire; we execute this script after the object migration to make sure our new CREFs are visible.

-- Update overall VERSION for SYS and PRSM types
update PSVERSION set VERSION = VERSION + 1 where OBJECTTYPENAME in ('SYS','PRSM');

-- Update VERSION for Portal Registry objects
UPDATE PSLOCK SET VERSION = VERSION + 1 WHERE OBJECTTYPENAME = 'PRDM';
UPDATE PSLOCK SET VERSION = VERSION + 1 WHERE OBJECTTYPENAME = 'PRSM';

-- Update CREF Parent - Change PORTAL_OBJNAME as needed
UPDATE PSPRSMDEFN SET VERSION = (select VERSION from PSLOCK where OBJECTTYPENAME = 'PRSM'),  LASTUPDDTTM = TO_TIMESTAMP(sysdate,'YYYY-MM-DD-HH24.MI.SS.FF')  WHERE PORTAL_NAME = 'EMPLOYEE' AND PORTAL_REFTYPE = 'F' AND PORTAL_OBJNAME = 'PORTAL_ROOT_OBJECT';

commit;

Thanks for Andy Dorfman for catching a change in my original SQL. The first statement should include both the SYS and PRSM types.

#325 – psadmin.io Themes

The PeopleSoft Administrator Podcast hosted by Dan Iverson and Kyle Benson

This week on the podcast, Kyle and Dan talk about the new psadmin.io Themes for PeopleTools 8.59 (and 8.58), using the OCI Auto Scale project to save money on OCI, and the benefits of blogging.

Show Notes

psadmin.io Themes for PeopleTools 8.59

We are releasing our newest version of our Themes for PeopleSoft 8.59 (and 8.58). We use these stylesheets on our non-production environments so that users can easily recognize which environment they are in, and most important, know they aren’t in production.

The Themes are released as an Application Data Set that you can easiliy import into your applications. The ADS project includes stylesheets and Branding Themes.

Importing Themes

Download the new themes from the Github respository. Under the Releases, you can download the lastest IO_STYLE_859.zip release. Unpack the zip file to your Data Migration File Location.

You use the Data Migration Workbench’s “Load Project From File” feature to import the themes and stylesheets.

Assigning Themes

To set the main theme for your system,

  1. Navigate to PeopleTools > Portal > Branding > Branding System Options
  2. Select the IO_ theme of your choice.
  3. You will also need to add a stylesheet for Classic Plus. Add the cooresponding IO_<color>_859_PTCP_SS as an additional stylesheet.

  1. If you have set Theme Assignments, you can update those as well under PeopleTools > Portal > Branding > Assign Branding Themes

SQL for Refreshes

Typically, the IO_STYLE_859 is load into production but not used. During your refresh, you can use the following SQL to configure your new environment to use a theme.

UPDATE sysadm.psoptions
SET
    ptbrandtheme = 'IO_GREEN_859_THEME',
    themestyletype = 'PTCP';

TRUNCATE TABLE sysadm.psoptionsaddl;

INSERT INTO sysadm.psoptionsaddl 
VALUES (
    'C',
    'CSS',
    'IO_GREEN_859_PTCP_SS',
    0
);

Colors

If you are just starting these stylesheets for your non-production environments, here is a suggestion for how to color code environments. This is how I use the colors:

Environment Color
Development 1 Green
Development 2 Teal
Development 3 Blue
Test Red
UAT/QA Grey
Sandbox Brown
Project 1 Purple
Project 2 Pink
Project 3 Yellow

I used https://colordesigner.io/ to help build the color schemes.

Orange

Primary Dark Light Accent
#FF8100 #FF5100 #FFAA00 #004757

Red

Primary Dark Light Accent
#94090D #5C0002 #D40D12 #1dfff9

Green

Primary Dark Light Accent
#097609 #075807 #70AF1A #591aaf

Purple

Primary Dark Light Accent
#553285 #36175E #9768D1 #a2d168

Blue

Primary Dark Light Accent
#0074D9 #00448D #7ABAF2 #f2b27a

Teal

Primary Dark Light Accent
#009798 #227273 #9DF3F4 #f49e9d

Yellow

Primary Dark Light Accent
#CCCC04 #8d8d03 #FFFF52 #5252ff

Brown

Primary Dark Light Accent
#A36F44 #6B4732 #F7DEB2 #b2cbf7

Pink

Primary Dark Light Accent
#AA3366 #552233 #CC5599 #55cc88

Grey

Primary Dark Light Accent
#707070 #3B3B3B #BABABA #FD7400

#322 – Control Groups

The PeopleSoft Administrator Podcast hosted by Dan Iverson and Kyle Benson

This week on the podcast, Dan shares some follow-up on the PeopleTools 8.59 Infrastructure DPK and its advantages, and then Kyle and Dan talk about using Control Groups on Linux.

Show Notes

#318 – Open Source w/ Tim Slater

The PeopleSoft Administrator Podcast hosted by Dan Iverson and Kyle Benson

This week on the podcast, Tim Slater joins us to talk about his open source PeopleSoft projects: TraceWizard, DMS-Viewer, ProjectViewer, and Pivet.

Show Notes

#313 – ACM Execution

The PeopleSoft Administrator Podcast hosted by Dan Iverson and Kyle Benson

This week on the podcast, Dan shares some recent bash tips he learned, and Kyle and Dan discuss different ways to execute PeopleSoft ACM and their pros and cons.

Show Notes

#312 – Stalling at 30%

The PeopleSoft Administrator Podcast hosted by Dan Iverson and Kyle Benson

This week on the podcast, Kyle and Dan talk about the new Rundeck Cloud product, working with the PeopleSoft DDDAudit report, preventing App Designer from stalling at 30%, and updating the ACM with SQL.

Show Notes

  • Rundeck Cloud @ 4:15
    • Rundeck and OCI MySQL Service
  • DDDAudit Table Output @ 15:00
  • App Designer Stalling at 30% @ 18:45
  • Working with ACM via SQL @ 25:30