Install SCM Server V14.5 component on Redhat Linux 8.x
search cancel

Install SCM Server V14.5 component on Redhat Linux 8.x

book

Article ID: 245001

calendar_today

Updated On:

Products

CA Harvest Software Change Manager CA Harvest Software Change Manager - OpenMake Meister

Issue/Introduction

Can you provide an example script for installing SCM v14.5 Server and the v14.5.01 cumulative patch on Redhat Linux 8.x

Environment

Harvest Software Change Manager v14.5 with cumulative patch 14.5.01

Resolution

This example assumes a new Redhat Linux (or Oracle Linux) image with Oracle v19c server or 64-bit client installed and the TNS Names file already configured to access an empty database.  The SCM install files will be pulled from the ISO disk image, and the Harvest v14.5.01 Cumulative patch can be downloaded from the Support Portal - Broadcom website.  Copy the needed files into a temporary folder used to stage the installation files.  In this example, the temporary folder's name is /tmp/scm.

Perform the first part of this installation while logged in as the “root” user.

  1. Do a yum update and install prerequisite packages

    Example:
    yum update -y
    yum install pam.* -y
    yum install libstdc++.* -y
    yum install libstdc++-devel.* -y
    yum install ncurses.* -y
    yum install ncurses-devel.* -y


  2. Mount the DVD image and copy the server install files to a temp folder.

    Example:
    cd <mount folder location>/SCM_V14_5_0_INSTALL/server/linux_x86_64/
    cp *.gz /tmp/scm


    (The "Linux64.zip" file containing the 14.5.01 cumulative patch will also be copied to this same folder)

  3. Create the “cascm” user and group

    Example:
    umask 0022
    groupadd cascm
    useradd -g cascm cascm
    passwd cascm


  4. Create a script that sets the environment variables and hook that into the “.bash_profile”.
    NOTE: Be sure to update these folder names to conform to your system requirements.  Especially, your ORACLE_HOME environment variable should reflect the home folder for your Oracle installation.  Harvest SCM v14.5 is only available as a 64-bit application, so the 64-bit version of Oracle Client or Server will be needed.

    Example (Copy and paste everything from the "cat >" line to the "EOF" line as one block):
    cat > /home/cascm/set_env.sh <<EOF
    #!/bin/bash

    export CASHCOMP=/opt/CA/SharedComponents
    export CABIN=\$CASHCOMP/bin
    export CALIB=\$CASHCOMP/lib

    export ORACLE_HOME=/app/oracle/product/19.0.0/dbhome_1
    export ORACLE_SID=orcl
    export PATH=\$ORACLE_HOME/bin:\$PATH
    export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:$LD_LIBRARY_PATH

    export CAPKIHOME=\$CASHCOMP/CAPKI
    export PATH=\$CABIN:\$PATH
    export LD_LIBRARY_PATH=\$CALIB:\$LD_LIBRARY_PATH

    export ODBC_HOME=/opt/CA/odbc

    export RTHOME=/opt/CA/pec
    export PATH=\$RTHOME:\$PATH
    export LD_LIBRARY_PATH=\$RTHOME/lib/i86_64_linux24:\$LD_LIBRARY_PATH

    export CA_SCM_HOME=/opt/CA/scm
    export PATH=\$CA_SCM_HOME/bin:\$PATH
    export LD_LIBRARY_PATH=\$CA_SCM_HOME/lib:\$LD_LIBRARY_PATH
    EOF

    # Once you have the new script, you must change ownership and permissions to make it executable

    chown cascm:cascm /home/cascm/set_env.sh
    chmod a+x /home/cascm/set_env.sh

    # After this you will need to add a line to the cascm user's .bash_profile to execute this script at startup.
    # (Copy and paste everything from the "cat >>" line to the "EOF" line as one block)

    cat >> /home/cascm/.bash_profile <<EOF

    . /home/cascm/set_env.sh
    EOF


  5. Create the directories we'll need for installation and set ownership and permissions.

    Example:
    mkdir -p /opt/CA/scm /opt/CA/pec /opt/CA/odbc /opt/CA/SharedComponents/lib /opt/CA/SharedComponents/bin
    chown -R cascm:cascm /opt/CA/scm /opt/CA/pec /opt/CA/odbc /opt/CA/SharedComponents /tmp/scm
    chmod -R 755 /opt/CA/scm /opt/CA/pec /opt/CA/odbc /opt/CA/SharedComponents /tmp/scm


  6. Add a symbolic link from libncurses.so.6 to libncurses.so.5 for each occurrence of “libncurses.so.6”

    Example:
    # Locate all copies of “libncurses.so.6”
    find / -name "libncurses.so.6"

    # Then, for each copy of “libncurses.so.6” that was found, cd to the folder it is in and execute 
    ln -s libncurses.so.6 libncurses.so.5


  7. Install CAPKI

    Example:
    cd /tmp/scm/
    mkdir etpki
    mv etpki.tar.gz etpki
    cd etpki/
    gunzip etpki.tar.gz
    tar xvf etpki.tar
    cd etpki_linux/
    ./setup install caller=SCMSERVER verbose env=all


  8. Install ODBC

    Example:
    # Make sure umask is set correctly and set the needed environment variables.  As with the setEnv.sh script above, 
    # ensure that the folder names for these variables are correct for your environment.

    umask 0022
    export ODBC_HOME=/opt/CA/odbc
    export ORACLE_HOME=/app/oracle/product/19.0.0/dbhome_1
    export ORACLE_SID=orcl

    # This step is different from installations of prior versions of Harvest.  You will ocpy the odbc.tar.gz file to the folder that
    # you want to become the parent of the new "odbc" folder, extract it there, and then run the installation.

    cd /tmp/scm
    mv odbc.tar.gz /opt/CA
    cd /opt/CA
    gunzip odbc.tar.gz
    tar xvf odbc.tar
    cd odbc
    ./install.sh
    chown -R cascm:cascm /opt/CA/odbc


    Perform the rest of this installation as the “cascm” user

  9. Switch to the “cascm” user

    Example:
    su - cascm
    umask 0022


  10. Check to make sure Oracle database is accessible via TNS

    Example:
    sqlplus <userid>@<tns service name>


  11. Install PEC

    Example:
    cd /tmp/scm/
    mkdir pec
    mv pec474_64.tar.gz pec
    cd pec/
    gunzip pec474_64.tar.gz
    tar xvf pec474_64.tar

    # This next step fixes a glitch in the INSTALL.SH so that it runs under c-shell instead of korn shell.
    sed -i 's/ksh/sh/g' INSTALL.SH

    ./INSTALL.SH configure_rtserver=false


  12. Move the SCM installation tar file to “/opt/CA/scm”, unzip and install.  At the end of the installation, answer "N" (no) to the question of whether to automatically start the hdbsetup utility.

    Example:
    cd /tmp/scm/
    mv scm.tar.gz /opt/CA/scm
    cd /opt/CA/scm
    gunzip scm.tar.gz
    tar xvf scm.tar
    cd install/
    ./install.sh


    NOTE: Select option 1 for a new installation

  13. # Unzip the v14.5.01 Cumulative patch zip file.

    Example:
    cd /tmp/scm/
    unzip Linux64.zip


  14. Install the v14.5.01 Cumulative patch Server Module 

    Example:
    tar xvf CAHarvestSCMV145_01Patch_Server.tar
    cd CAHarvestSCMV145_01Patch_Server/
    umask 0022
    ./ApplyServerPATCH.sh


  15. Now we can run “hdbsetup” to configure the ODBC datasource (options CO, CR, EP, LP, and LF options)

    Example:
    cd /opt/CA/scm/bin/
    ./hdbsetup


  16. Try to start the broker to see if it runs.  Run a command line utility to confirm it can connect.

    Example:
    ./bkrd
    ps -ef | grep "bkrd\|hserver\|rtserver"
    hgetusg -b <broker hostname> -prompt -cu ; cat hgetusg.log


  17. Set up the start and stop scripts

    Example:
    mkdir /home/cascm/scripts

    # Copy all lines from "cat >" to "EOF" and paste as one block.

    cat > /home/cascm/scripts/startup.sh <<EOF
    #!/bin/bash
    /opt/CA/scm/bin/bkrd
    ps -ef | grep "bkrd\|hserver\|rtserver"
    EOF

    # Copy all lines from "cat >" to "EOF" and paste as one block.

    cat > /home/cascm/scripts/shutdown.sh <<EOF
    #!/bin/sh
    . /opt/CA/pec/bin/rtinit.sh
    /opt/CA/pec/bin/i86_64_linux24/rtserver.x -stop_all
    ps -ef | grep "bkrd\|hserver\|rtserver"
    EOF

    chmod -R a+w /home/cascm/scripts
    chmod a+x /home/cascm/scripts/*.sh


    The final step must be performed as root.

  18. Switch back to root user and set up auto-start service 

    Example:
    exit

    # Copy all lines from "cat >" to "EOF" and paste as one block.

    cat > /etc/systemd/system/cascm.service <<EOF
    # Invoking SCM scripts to start/shutdown
    [Unit]
    Description=CA Harvest SCM server
    Requires=network.target
    [Service]
    Type=forking
    Restart=no
    ExecStart=/home/cascm/scripts/startup.sh
    ExecStop=/home/cascm/scripts/shutdown.sh
    User=cascm
    Group=cascm
    RemainAfterExit=yes
    [Install]
    WantedBy=multi-user.target
    EOF

    systemctl daemon-reload
    systemctl status cascm
    systemctl enable cascm


  19. Reboot to check and assure that SCM server is able to start automatically.

    Example:
    reboot
    login as: root
    ps -ef | grep "bkrd\|hserver\|rtserver"
    exit


Additional Information

The Harvest v14.5.01 Cumulative Patch can be downloaded from this location.  (You will need to login to the Support Portal - Broadcom website in order to complete the download): CA HARVEST SCM CUMULATIVE PATCH V14.5.01

If you prefer to use the Oracle InstantClient rather than the traditional full client, this article explains the details needed to correctly install it: Harvest/SCM installation on Linux/Unix using Oracle instant client v19

If you are upgrading Harvest rather than doing a new installation, a best practice is to rename the existing /opt/CA folder, and create a new, identical folder structure for Harvest.  Then do a fresh installation of the new version.