Based on your logs, we can reconstruct the full lifecycle of this deployment. There is a very specific sequence of events here, including a mis-linking risk that you should be aware of.
Step 1: The RPM Installation (The "Expansion")
-
What happened: Ansible executed the
rpm -ivhcommand. -
Source:
/tmp/86-3cf8490.../CPLSEMEA-1.0.0.x86_64.rpm -
Where it expanded: The log explicitly shows
RPM_INSTALL_PREFIX=/opt/CPLSEMEA. -
The Result: The binaries and files were extracted into the permanent system path. Inside the RPM, a
postinstallscript ran, which restricted permissions onkey.datand managed a "live" link. -
Status: SUCCESS. The application is now physically present in
/opt/CPLSEMEA.
Step 2: The Symlink Creation (The "Bridge")
-
What happened: Ansible ran a
filetask withstate: link. -
The Link (Dest):
/opt/CPLS/live -
The Target (Src):
/opt/CPLS/86-3cf8490-leonid-comet-lse-migration - The Warning: Ansible complained about "fs attributes" because it was trying to apply permissions to the target folder while creating the link.
- Status: TECHNICALLY CHANGED, but contains a potential logic error.
Step 3: The Cleanup
-
What happened: Ansible ran a
Delete contenttask withstate: absent. -
Target:
/tmp/86-3cf8490-leonid-comet-lse-migration/ - Status: SUCCESS. The installation artifact was removed to save space.
Is there a mistake? (The "Mis-linking" Detection)
Yes, there is a significant path discrepancy between Step 1 and Step 2 that might cause your application to fail when it tries to run.
| Feature | RPM Installation (Step 1) | Symlink Creation (Step 2) |
|---|---|---|
| Primary Folder | /opt/CPLSEMEA |
/opt/CPLS |
| Sub-folder |
/1.0.0 (implied by version) |
/86-3cf8490... (Migration ID) |
The Issue: The RPM installed the "real" working files into /opt/CPLSEMEA. However, your Ansible symlink task created a "live" pointer in /opt/CPLS pointing to a Migration/Staging folder.
Why this matters:
If your application or service is configured to look for its executable at /opt/CPLS/live/bin/..., it is currently pointing at the Harness Migration/Staging directory, not the actual RPM installation directory. If that migration directory is ever deleted (similar to how you deleted the /tmp folder in Step 3), the live link will break.
Recommendations:
- Align the Path: Ensure the symlink
destis consistent with the RPM prefix. If the app isCPLSEMEA, the link should probably be/opt/CPLSEMEA/live. - Point to the Version, not the Migration: Change the symlink
srcto point to the installed version folder (/opt/CPLSEMEA/1.0.0) instead of the long alphanumeric migration string. - Silence the Warning: In the "Create symlink" task, add
follow: falseto stop the "fs attributes" warning.
Does your application usually run out of /opt/CPLS or the newer /opt/CPLSEMEA path?
Top comments (0)