Changes

Change User Description Committed
19696 tjuricek Add predicate option to rmtree(), and use it to ensure we don't delete local p4d config during uninstallation.
19662 swellard Refactor deployment classes to make it easier to cope
with multiple OS
Still needs lots of tidy up
19535 drobins Refactor package names to hws
19467 tjuricek Add basic test to ensure .deb packages can be uninstalled and re-installed without error.
19380 tjuricek Adjust post-install config to handle upgrades better, and a test for debian systems.

- Our default config file has an invalid line to flag that the file has never been touched. It's removed on the first post-install config.
- We guard against overwriting things the next times post-install config is run, like the keystore files.
- There's a "media" setting in the install4j configuration to treat "never override" as config files, which avoid overwriting the config (finally found it), at least on debian.
- Added a new test suite just to ensure the configuration file is not overwritten, only works for .debs at the moment
19277 tjuricek Add self-signed SSL configuration variation (just with the 16.1 p4d) for testing.

No bugs were actually uncovered, though it may be useful to debug environments. (If people don't have a properly patched JVM with the JCE extensions, this test will fail.)
19269 tjuricek Create infrastructure for calling python tests via TestNG, with our first (basic login) test.
19235 tjuricek The server spec crud test didn't run as super (hence a failure) and we needed to wait for buffered reading to finish before moving ahead with background processes.
19204 tjuricek Add StreamReaderThread concept for process launching, and using that by default to interact with background processes.
18905 tjuricek Add Git Fusion environent configuration and testing, and altered the implementation to use the newly defined API.

Note: only runs on linux. We use latest GF production for testing and GF packages are linux only. The "integration" is pretty "light" at this point. This does require the test machine to have our package repository setup.
18467 tjuricek Windows "binary archive" distribution testing (and automation)
18262 tjuricek The dpkg -l call seemed to hang because the process tried to wait before it finished
reading the stream output.
18210 tjuricek Switch to building RPMs via rpmbuild.

The install4j .rpm works, but, doesn't give you access to metadata fields that are pretty important to repository managers. (Their workflow is that the user downloads the rpm and just installs it, which means no "yum install helix-web-services".)
17296 tjuricek Swallow "unsupported operation" when trying to set POSIX permissions, apparently we can't do that on Windows, and, I don't have my dev environment yet.
17240 tjuricek Try to respond with our typical error format as 400 errors if the serverity is 3.
17166 tjuricek File listing and basic "modification" implementations (methods under /p4/api/files)
17140 tjuricek Integrating porting work from development branch.

This work is now ready for testing/CD integration.