Deployment scripts

A description of each deployment script is found below.

The deployment script jboss_config_all.py no longer makes a backup of the WildFly configuration files. For safety reasons, we have chosen not to automatically remove the old backup directory, but should you want to, you can remove it manually. Old backups can be found in the <WildFly>/standalone/backup directory. 

pre_deploy_config_all.py

This script performs deployment operations that need to be done before the JBoss server is running. Its primary job is to create the databases and the database users.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-r

Specifies if the script shall be executed on a remote machine or not

post_deploy_config_all.py

This script performs deployment operations that need to be done after the JBoss server has been started and everything has been deployed.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-r

Specifies if the script shall be executed on a remote machine or not

remote_copy.py

This can be used to copy files and folders from the machine the script is executed on to the machine specified by the profile.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-s [source]

Specifies the files to copy to the remote machine

-t [target]

Specifies the destination on the remote machine to copy the files to

remote_execute.py

This can be used to remotely execute commands on the machine specified by the profile.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-c [command]

Specifies the command to run on the remote machine

start_jboss.py

This script will attempt to start the JBoss server. Before starting, it will also remove the JBoss data and tmp folders and remove any old deployment status files. The script will wait until all components have been successfully deployed.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-r

Specifies if the script shall be executed on a remote machine or not

stop_jboss.py

This script will attempt to stop the JBoss server. It will wait until the JBoss is no longer running.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-r

Specifies if the script shall be executed on a remote machine or not

deploy_all.py

This script will deploy all the artefacts needed by the specified distribution. It will copy the artefacts from the specified folder to the JBoss deployment folder specified by profile.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-a [artifactspath]

Specifies the path where the artifacts to deploy can be found

-r

Specifies if the script shall be executed on a remote machine or not

generate_configuration.py

This script will generate a new configuration file for the specified profile suited for the specified distribution.

When you are satisfied with the generated configuration file, name it config.properties and place it in a folder of your choice. The config.properties file has to be loaded at server startup and needs to be specified as a java option. Add or update the JAVA_OPTS variable in jbossas.conf accordingly:

-Dconfig.path=<path-to-folder-with-config-file>

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-f [filename]

Save the configuration as this file name

-r

Specifies if the script shall be executed on a remote machine or not

jboss_config_all.py

This script will change the necessary configuration for JBoss. Most changes will be done to standalone.xml. We do this through the JBoss CLI so the JBoss server must be running before you run this script.

The script installs the JDBC driver in order to configure the datasources properly. To manually install a driver, see instructions how to manually configure your application server.

Limitations

It is also worth mentioning that the JBoss CLI tool, which is what this script is using to update the JBoss configuration, does not report errors very well. So if something fails or if a dependency is missing, you will not get notified about this and the generated configuration will be incomplete. For example, if the certificateKeyFile which is specified in your profile cannot be found, the HTTPS/SSL connectors will not be created. So it is always recommended to review the generated standalone.xml and make thorough testing to make sure it is working properly.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-r

Specifies if the script shall be executed on a remote machine or not

upgrade_pre_deploy_config_all.py

This script performs upgrade deployment operations that need to be done before the JBoss server is running. Its primary job is to create the databases and the database users for new components.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-r

Specifies if the script shall be executed on a remote machine or not

upgrade_post_deploy_config_all.py

This script performs upgrade deployment operations that need to be done after the JBoss server has been started and everything has been deployed.

Argument

Description

Argument

Description

-p [profile]

Specifies which configuration profile* to use

-d [distribution]

Specifies which distribution** to use

-r

Specifies if the script shall be executed on a remote machine or not

* Read more about profiles in the platform Installation and Upgrade instructions.

** A distribution is a release of a certain set of components. It specifies which components shall be included when running some of the deployment scripts, so it is necessary to specify this when needed. A distribution is represented by a folder and the name of the distribution is the name of the folder. The distributions can be found in the distributions folder in the deployment script folder. It is possible that you only have one distribution in your release, but you still need to specify which distribution to use when running some of the scripts. Usually the distribution is -d lequinox.

Copyright © 2021–2024 Lequa Net AB – a subsidiary of Extracticon AB (publ). All rights reserved.