Skip to content

ICAM Installer Plugin Actions

ICAM Fetch

icamfetch is a tool utilized to download the RU, SU, and customization packages from the IFS Cloud JFrog instance. Before using it, ensure that the buildHome or Delivery directory contains the icam/metadata directory along with manifest files that specify which artifacts need to be downloaded.

Example - manifest file

Below is a sample manifest file used to download the artifacts.

icam:
  mtxDatabaseUpgradeInfo:
    groupId: and
    id: ifs-and-report-import
    description: IFS Maintenix  Jasper report import tool
    version: 24.2.0
    type: zip
    explode: true
    extractpath: icam/mx-database/reportimport

Inputs

icamfetch:
  host: <host>
  username: 
  password: 
  coreRepository: <specify which repository to check for vanilla upgrade binaries>
  custRepositroy: <specify the repo contains customizations. This is a customer specific repo. This can be null as well.>

The following values need to be in values.yaml file for execution..

Installer action

installer.cmd --values values.yaml 
   --set dbInstaller.deliveryPath=<Delivery Path location> 
    --set action=icamfetch 
    --set logFileLocation=<log file location>

If you omit the icamfetch details from the values.yaml file, you can still provide the values during the installer call. Please see the example below for clarification.

installer.cmd --values C:\Development\InstallerTest\values.yaml 
  --set dbInstaller.deliveryPath=C:\Development\InstallerTest\Delivery 
  --set action=icamfetch 
  --set logFileLocation=C:\Development\InstallerTest 
  --set icamfetch.host=ifsclouddev.jfrog.io 
  --set icamfetch.username=automation 
  --set icamfetch.password=automationpw 
  --set icamfetch.coreRepository=ifs-deployments 
  --set icamfetch.custRepositroy=<ICAM custom artifact repositry>

Storing artifacts in Jfrog

icamfetchJfrog client logic uses the below way to construct the artifact URL to download.

<jfrog-url>/<repositry>/<groupId>/<id>/<id>-<version>.<type>

It is essential to adhere to the same format when uploading artifacts to a local Artifactory or any other JFrog cloud instance.

Based on the manifest sample provided above, the artifact URL should be structured as follows:
<jfrog-url>/<repository>/and/ifs-and-report-import/ifs-and-report-import-25.1E.0.zip

MTXDBUPGRADE

This process executes essential upgrades for the Maintenix database. Before proceeding, ensure that the required Maintenix DB upgrade package is located in <Delivery Location>\icam\mx-database\mtxdbupgrade. You can retrieve the package by using icamfetch.

Example - mtxdbupgrade manifest file.

icam:
  mtxDatabaseUpgradeInfo:
    groupId: and
    id: ifs-and-maintenix-upgrade
    description: IFS Maintenix Application Database Upgrade
    version: 24.2.0
    type: zip
    explode: true 
    extractpath: icam/mx-database/mtxdbupgrade

Inputs

installer.cmd 
  --values D:\ifs\IFS_CLOUD\environment\values.yaml 
  --set action=mtxdbupgrade 
  --set dbInstaller.sysPassword=<SYS password> 
  --set dbInstaller.deliveryPath=<Delivery path>  

Additionally, Maintenix DB credentials need to be added in values.yaml or passed during plugin execution as below.

installer.cmd
--set action=mtxdbupgrade
--set dbInstaller.deliveryPath=<Delivery path> 
--set logFileLocation=${LOGS_DIR}
--set dbInstaller.jdbcUrl=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xx.xx.xx.xx)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=XXXX)))
--set dbInstaller.ifsmtxappPassword=MTX_APP_PASSWORD

MTXJASPERDBUPGRADE

This process involves executing the Jasper SU/RU upgrade. Additionally, the Jasper upgrade package must be located at <Delivery Location>\icam\mx-database\jasperdbupgrade. You can retrieve the package using the icamfetch command.

Example - mtxjasperdbupgrade manifest file

icam:
  jasperDatabaseUpgradeInfo:
    groupId: and
    id: ifs-and-jasper-upgrade
    description: IFS Maintenix Jasper Report Database Upgrade
    version: 24.2.0
    type: zip
    explode: true
    extractpath: icam/mx-database/jasperdbupgrade

Inputs

installer.cmd 
   --values D:\ifs\IFS_CLOUD\environment\values.yaml 
   --set action=mtxjasperupgrade 
   --set dbInstaller.sysPassword=<SYS password> 
   --set dbInstaller.deliveryPath=<Delivery path>

Additionally, Jasper DB credentials need to be added in values.yaml or passed during plugin execution as shown below.

installer.cmd
--set action=mtxjasperdbupgrade 
--set dbInstaller.deliveryPath=<Delivery path> 
--set logFileLocation=${LOGS_DIR}
--set dbInstaller.jdbcUrl=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xx.xx.xx.xx)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=XXXX)))
--set dbInstaller.ifsmtxreportPassword=JASPER_PASSWORD

MTXDBCUSTOMIZE

This process will deploy the customizations for the Maintenix database. The database customizations package must be located at <Delivery Location>\icam\mx-database\mtxdbcustomize. You can retrieve the package using the icamfetch command.

Example - manifest file

icam:
  mtxDatabaseCustomizeInfo:
    groupId: and
    id: ifs-and-maintenix-customize
    description: IFS Maintenix Application Database Customization
    version: 24.2.0
    type: zip
    explode: true 
    extractpath: icam/mx-database/mtxdbcustomize
    liquibase: true

Inputs

installer.cmd
--set action=mtxdbcustomize
--set dbInstaller.deliveryPath=<Delivery path>

Additionally, Maintenix DB credentials need to be added in values.yaml or passed during plugin execution as shown below.

installer.cmd
--set action=mtxdbcustomize
--set dbInstaller.deliveryPath="${ICAM_CUST_DELIVERY}"
--set logFileLocation=${LOGS_DIR}
--set dbInstaller.jdbcUrl=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xx.xx.xx.xx)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=XXXX)))
--set dbInstaller.ifsmtxappPassword=${MTX_APP_PASSWORD}