Python script used to update many Plone Sites within one Plone application at once.

It can work properly only when ran as a Plone instance's script. Its available features are:
- Reinstalling the products (matched by exact name or regular expression).
- Updating the JavaScript and CSS merged compositions (useful after modification of some of the CSS or JS files).
- Rebuilding portal_catalog.
- Updating workflow settings.
- Importing specified steps for the profile.

Example usage:
$ ./bin/instance run multi_sites_update_tool.py -u reinstall,catalog,workflow -p my.product.

usage: interpreter [-h] [-t TOOLS] [-p PRODUCTS] [-r PRODUCTS_REGEX]
                   [-s IMPORT_STEPS] [-n]

optional arguments:
  -h, --help            show this help message and exit
  -t TOOLS, --tools TOOLS
                        Enter the elements to be updated (separated by coma).
                        Available forms are: all, workflow, javascript,
                        catalog, reinstall, css
  -p PRODUCTS, --products PRODUCTS
                        Choose the product IDs to be reinstalled (separated by
                        coma).
  -r PRODUCTS_REGEX, --products-regex PRODUCTS_REGEX
                        Enter the python regexp to match multiple product IDs.
  -s IMPORT_STEPS, --import-steps IMPORT_STEPS
                        Enter the IDs of the steps to import for the given
                        products.
  -n, --no-log          Use this option if you don't want to have the log file
                        created.



Options "-p" ("--products") and "-r" ("--products-regex") will be ignored if the "reinstall" or "all" option is not used within the --tools ('-t') parameter.

If wanted, use this script at your own risk. No warranty!