CostOS Application Server Unattended Installation

CostOS Application Server Unattended Installation

Overview

This guide describes how to install, configure, and update CostOS Enterprise Server in unattended (silent) mode using command-line operations.

The unattended installation is a three-step process:

  1. Extract - Run the installer to extract application files

  2. Configure - Edit the configuration.properties file with your settings

  3. Apply - Run the configure command to apply the settings

Prerequisites

  • CostOS Enterprise Server installer executable (e.g., CostOS_Server_x64_8.5.200.exe)

  • Administrator privileges on the target machine

  • Target installation directory must be accessible

Step 1: Extract the Installation

Run the installer in unattended mode to extract all application files:

If a configuration.properties file is already present in the target installation directory before extraction, it will be used. If it is not present, an empty configuration.properties will be generated during extraction.

CostOS_Server_x64_8.5.200.exe -q -Vsys.installationDir="C:\apps\CostOS_Server" -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\installation.log" -Dinstall4j.noPermanentLogFile=true

Command Parameters:

Parameter

Description

Parameter

Description

-q

Unattended (silent) mode

-console

Enables console output for progress

-Vsys.installationDir="..."

Target installation directory

-Dinstall4j.alternativeLogfile

Redirects log to a custom file

-Dinstall4j.noPermanentLogFile

Prevents writing to default log location

After extraction, the installation directory will contain all application files including an empty configuration.properties file.

Step 2: Edit configuration.properties

The configuration.properties file is located in the installation directory (e.g., C:\apps\CostOS_Server\configuration.properties).

Edit it with your environment-specific settings before running the configure step.


Database Settings

Property

Required

Description

Property

Required

Description

database.type

Yes

Database server type (MSSQLSERVER)

database.host

Yes

Database server hostname or IP

database.port

(1)

Database server port (default: 1433)

database.instance

(1)

Database instance name

database.master.name

Yes

Master database name

database.project.name

Yes

Project database name

database.username

Yes

Database username

database.password

Yes

Database password

database.createifnotexist

No

Create database if not exists (true/false)

database.trust.server.certificate

Yes

Trust DB server certificate (true/false)

database.use.tls.1.2

Yes

Force TLS 1.2 for DB connections (true/false)

(1) Either database.port or database.instance is required.


Server Settings

Property

Required

Description

Property

Required

Description

server.port

(2)

HTTP port (default: 8080)

server.jmsport

(2)

JMS messaging port (default: 61616)

server.jmsip

Yes

JMS bind address (default: 0.0.0.0)

server.ui.full

No

Enable full server UI (true/false)

server.isConcurrent

No

Enable concurrent licensing (true/false)

server.concurrentLicenseFile

No

Path to concurrent license file

server.EncryptDatabasepassword

No

Encrypt DB password (true/false)

server.security.invalidate-on-ip-change.value

No

Session IP validation policy (DISABLED, NO_X_FORWARD, X_FORWARD, X_FORWARD_CHAIN)

(2) Required unless SSL ports are configured. If either is set, both are required.


SSL/TLS Settings

Property

Required

Description

Property

Required

Description

server.ssl.enable

No

Enable SSL/TLS (true/false)

server.ssl.port

(3)

HTTPS port (default: 443)

server.jms.ssl.port

(3)

JMS SSL port (default: 61613)

server.ssl.keystore.file

(3)

Path to the Java keystore file

server.ssl.keystore.password

No

Keystore password

server.ssl.key.password

No

Private key password

server.ssl.key.alias

No

Certificate alias in the keystore

server.ssl.disablenonssl

No

Disable non-SSL connections (true/false)

(3) Required if any SSL port is configured.


SSO / LDAP Settings

Property

Required

Description

Property

Required

Description

server.sso.basedn

No

LDAP base DN

server.sso.filter

No

LDAP search filter

server.sso.bind.username

No

LDAP bind username

server.sso.bind.password

No

LDAP bind password


Windows Service Settings

Property

Required

Description

Property

Required

Description

service.name

(4)

Windows service name

service.displayName

(4)

Windows service display name

service.create

No

Create Windows service (true/false)

service.startType

No

Service start type (auto/manual/disabled)

service.jvmMs

(4)

JVM minimum heap size (e.g., 512)

service.jvmMx

(4)

JVM maximum heap size (e.g., 2048)

service.jvmSs

(4)

JVM stack size (e.g., 512)

service.createDependency

No

Create service dependency (true/false)

service.dependencyName

No

Name of the dependent service

(4) Required if any service property is set.


Installation Paths

Property

Required

Description

Property

Required

Description

compiler.applicationFullName

No

Application display name

installation.ces.path

Yes

CES application path

installation.jre.path

No

Bundled JRE path

installation.tmpfolder.path

No

Temporary files path

installation.defaultCurrency

No

Default currency (EMPTY, USD, EUR, etc.)


Encryption Settings

Property

Required

Description

Property

Required

Description

installation.use.custom.encryption.algorithm

No

Use custom encryption (true/false)

installation.encryption.algorithm

(5)

Encryption algorithm (STATIC_3DES)

installation.encryption.key

(5)

Custom encryption key

(5) Required if installation.use.custom.encryption.algorithm is true.


Example configuration.properties

database.createifnotexist=true database.host=127.0.0.1 database.instance= database.master.name=unatended database.password=encV2\:14-1D0366-5E61-244B database.port=1433 database.project.name=unatendedProjectDatabase database.trust.server.certificate=true database.type=MSSQLSERVER database.use.tls.1.2=false database.username=admin compiler.applicationFullName=CostOS Enterprise Server installation.ces.path=C\:\\costos_servers\\Unatended\\ces installation.defaultCurrency=EMPTY installation.encryption.algorithm=STATIC_3DES installation.encryption.key= installation.jre.path=C\:\\costos_servers\\Unatended\\Rjre installation.tmpfolder.path=C\:\\costos_servers\\Unatended\\temp files installation.use.custom.encryption.algorithm=false server.EncryptDatabasepassword=true server.concurrentLicenseFile= server.isConcurrent=false server.jmsip=0.0.0.0 server.jmsport=61616 server.port=8080 server.security.invalidate-on-ip-change.value=DISABLED server.ssl.enable=false server.ssl.port=443 server.jms.ssl.port=61613 server.ssl.keystore.file= server.ssl.keystore.password= server.ssl.key.password= server.ssl.key.alias= server.ssl.disablenonssl=false service.name= service.displayName= service.create=true service.startType=auto service.jvmMs=512 service.jvmMx=2048 service.jvmSs=512 service.createDependency=false service.dependencyName= server.sso.basedn= server.sso.bind.password= server.sso.bind.username= server.sso.filter= server.ui.full=true

Paths in .properties files require escaped backslashes (\\), and colons must be escaped with a backslash (\:).


Step 3: Run the Configure Command

After editing configuration.properties, run the configure command from the installation directory to apply the settings:

configure.exe -q -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\configure.log" -Dinstall4j.noPermanentLogFile=true

This will:

  • Create and configure the database(s)

  • Apply server settings

  • Set up the Windows service (if applicable)

  • Apply SSL/TLS configuration

Reconfiguration

To change any settings after the initial installation:

  1. Edit configuration.properties in the installation directory

  2. Run the configure command again:

configure.exe -q -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\configure.log" -Dinstall4j.noPermanentLogFile=true

Updating an Existing Installation

To update an existing installation to a new version:

CostOS_Server_x64_8.5.200.exe -q -Vsys.installationDir="C:\apps\CostOS_Server" -VinstallerState=update -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\update.log" -Dinstall4j.noPermanentLogFile=true

Additional Update Parameters:

Parameter

Description

Parameter

Description

-VinstallerState=update

Sets installer to update mode

After the update, you may want to run the configure command again to apply any new configuration options introduced in the new version.

Troubleshooting

Log Files

Step

Log File

Step

Log File

Extract

C:\apps\CostOS_Server\installation.log

Configure

C:\apps\CostOS_Server\configure.log

Update

C:\apps\CostOS_Server\update.log

Common Issues

Issue

Solution

Issue

Solution

Installer hangs at "Finishing installation..."

Ensure you are using -q flag. Do not use -console without -q.

Database connection fails during configure

Verify database.host, database.port, and credentials in configuration.properties.

Permission denied errors

Run commands with Administrator privileges.

Configuration changes not applied

After editing configuration.properties, re-run the configure command.

Quick Reference

  1. Fresh installation - Extract files

    CostOS_Server_x64_8.5.200.exe -q -Vsys.installationDir="C:\apps\CostOS_Server" -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\installation.log" -Dinstall4j.noPermanentLogFile=true
  2. Edit configuration.properties with your settings (located in the installation directory)

  3. Apply configuration

    configure.exe -q -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\configure.log" -Dinstall4j.noPermanentLogFile=true
  4. Update existing installation (when new version is available)

    CostOS_Server_x64_8.5.200.exe -q -Vsys.installationDir="C:\apps\CostOS_Server" -VinstallerState=update -Dinstall4j.alternativeLogfile="C:\apps\CostOS_Server\update.log" -Dinstall4j.noPermanentLogFile=true