Script Provisioning Addon

Script Provisioning Addon



Script provisioning addon is a plugin for Script Provisioning module - please refer to the module's documentation first.

The addon is available in Settings → Products & Services → Product Addons → Script Provisioning Addon (and duplicated for each new addon needed)

Configuring the addon

  • The plugin is shipped with Script Provisioning module, and once this module is activated, Script Provisioning plugin is available in Product Addons section. 

  • Proceed to the Connect with App section and configure the settings:

    • Check which events should execute a script (ie. terminate/create etc.)

    • From dropdown list select which script to execute (you should create scripts first)

    • Provide arguments that script should be executed with, here you can use variables (up-to-date list is available in product configuration):

Note about arguments: 
All arguments will be escaped before execution for additional security. 

System requirements & security precautions

Precautions below are for enterprise version installed using auto-install script. If your HostBill is installed on different user/paths - refer also to section Non-enterprise install

  • Make sure that /home/hostbill/scripts directory exists, and belongs to user hostbill

  • This module relies on php proc_open and exec functions, that are by default disabled in php.ini's disable_functions directive, to use it:

    • Use HostBill Queue module that runs tasks in background/trough cron, and with that can make use of different php settings, or

    • (not advised) remove proc_open and exec functions from php.ini disable_functions directive

  • Its not advised to use this module on shared environment.

Scripts requirements

  • Scripts should be placed in /home/hostbill/scripts 

  • Script should be made executable for hostbill user (chmod u+x)

  • If possible, use hashbang in your custom scripts 

  • On success your script should return 0 exit code.

  • On failure return any other exit code

  • Any script output is logged in related account log on error/success 

  • Before executing any script, module changes working directory (cwd) to main HostBill scripts directory

Non-Enterise install

By default scripts should be located in /home/hostbill/scripts directory, to use custom dir on other installations, edit includes/config.php file and add lines:

$config array();

$config['ScriptsDirectory'] = "/path/to/your/scripts/dir";

Make sure that this directory is not accessible from web (outside of public_html or similar folders)