GreenArrow Documentation

Modifications and Customizations

Q. How can I customize GreenArrow?

GreenArrow is a complex application with a number of moving parts installed on your server. Since GreenArrow is built in Unix and uses many open source components, a number of the internal moving parts are visible and accessible to a system administrator or developer on the server.

Modifying these internal moving parts or internal data is, however, not supported and will invalidate support on your entire GreenArrow installation.

We can only support GreenArrow when the two following rules are followed:

  1. You may only use interfaces, configuration files, management methods defined in our documentation or exposed in the web-interface to modify, configure, control, or use the software,
  2. Other than files in /var/hvmail/control (which are configuration files), you may not modify any files in /var/hvmail (unless modification of the file is explicitly allowed in the documentation)

Modifications to the software and internal application data outside of these two rules will render your entire installation of GreenArrow to be considered out of support. If this happens, a system administration fee will be assessed for restoring your software to a supported state and/or auditing to determine whether it is in a supported state.

For example, the following actions would invalidate your support:

  • Deleting files in /var/hvmail/var (except as may be explicitly described in the documentation)
  • Modifying the PostgreSQL database that is a part of GreenArrow, including modifying data in the tables, modifying the schema, or performing database maintenance tasks (except as explicitly described in the documentation)

The reason for this is that if you modify the internals of the software, it’s likely that either: (a) you’ll break something because your modification will conflict with another internal detail of the software that you’re not aware of, or (b) that when the software is upgraded your modification will be overwritten or will cause the software to break then.