Deploy Database Objects and Import Data¶
When running the IFS Cloud Installer with action=install (default setting), and if there exist a middle tier already, the middle tier will be stopped (replicas=0) prior to the db deployment.
Depending on the content of the delivery following will be performed:
1. If <delivery>/database/_utils/prepare.sql exist, and password for SYS user given, the prepare.sql will be executed.
2. If <delivery>/database/install.tem exist (as in all automatically created deliveries), the file will be executed.
3. If <delivery>/server folder contains data to be imported, the import of data will be executed
If prepare step should be excluded, although prepare.sql exists in <delivery> (e.g. prepare step has already been performed separatly) the sysPassword should not be defined.
Example: CMD> cd c:\exampletmp\deliveries\build_home\ifsinstaller CMD> ./installer.cmd ` --set dbInstaller.jdbcUrl="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=126.96.36.199)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=MYSID)))" ` --set dbInstaller.ifsappPassword=example ` --set dbInstaller.sysPassword=example ` --set logFileLocation=..\..\..\logs\ifscloudinstaller ` --set action=dbinstaller ` --set ifscore.passwords.ifsiamPassword.data=example ` --set ifscore.passwords.ifssysPassword.data=example ` --set ifscore.passwords.ifsmonPassword.data=example
Note: All or some of the parameters passed to the installer above can be stored in a values yaml file.
e.g. .\installer.cmd --values values.yaml --set dbInstaller.sysPassword= <password>
Parameters for db_deploy¶
|dbInstaller.deliveryPath||Path to delivery or build_home||defaults to the delivery or build home from where the installer was started.|
|Full jdbc connection string. If the ifscore.secrets.jdbcUrl.data string can't be used (e.g. an Oracle RAC url or DB has different IPs from installer and k8s cluster) the dbInstaller.jdbcUrl can be specified to overide the ifscore.secrets.jdbcUrl.data string.||jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST= <HOST/IP> )(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME= <sid> )))|
|ifscore.passwords.ifsappUser.data||The IFS Cloud application owner Username||defaults to IFSAPP|
|dbInstaller.ifsappPassword||The IFS Cloud application owner password.
Used when creating the application owner in prepares.sql
|dbInstaller.sysPassword||The oracle sys password. If prepare.sql is included in delivery and the sys password is given, the prepare.sql will be executed, otherwise not.|
|dbInstaller.extLogging||Will generate verbose logging of DB deployment.||defaults to "N"
|logFileLocation||Top location for output logs during the execution.||default to the OS temp folder, e.g. windows %TEMP%/ifsinstaller_<namespace>|
|action||If only the db_deploy should be run from the installer, action can be set to "dbinstaller", if a single file is to be executed, then action should be set to "fileexec"||--set action=dbinstaller
If action should be fileexe, read File Executor
|ifscore.passwords.ifsiamPassword.data||Password when creating the user ifsiamsys in prepare.sql||Random value set as fallback in define.tem|
|ifscore.passwords.ifssysPassword.data||Password when creating the user ifssys in prepare.sql||Random value set as fallback in define.tem|
|ifscore.passwords.ifsmonPassword.data||Password when creating the user ifsmonitoring in prepare.sql||Random value set as fallback in define.tem|
Generated deploy files¶
A list of files are generated at the same time as the install.tem is generated. These files, whose purposes are described below, are started from install.tem in every installation, but in many cases they could be empty if no new information is added.
|ActivateComponents.sql||A translation of the solutionset.yaml file into a DB deployable format. It lists the active and inactive components and store this information in the database.|
|CompRegAndDep.sql||Pre registration of all components, as well of all dependencies between them.|
|DeliveryRegistration.sql||If the delivery should be stored in the database, the build process must be fed with information about the delivery ID in a file named deliveryid.txt. Such file is generated by the LE build process.|
|ObsoleteComponents.sql||Components, which have a drop script in the PRIFS components are considered as obsolete. These components are listed in this file and updated in the database.|