eg: running "supervisorctl status" returns non zero codes in case
certain processes its running are in failed state. get_cmd_output will
now handle such situations
chore: dropped bench.utils.get_program
* chore: added deepsource config
* chore: updated travis config
* chore: updated travis config
* chore: updated travis tests for 2.7, 3.6, 3.7, 3.8
* chore: quiet installs and sudo easy install
* fix(tests): add mariadb versioning
* fix(travis): print compat for pyhton 3
* fix: drop deprecated function usage
* chore(tests): update test_init
* tests: update branch to use version-12 for testing and use git module
* chore: quieten git command outputs on branch switch
* fix: execute 'setup production' via cli
* style: sort imports
* chore: update mariadb variables in .travis.yml
* chore: seperate jobs for easy install and production setup
* chore: use exec_cmd to log command output
* chore: pin tests to ubuntu trusty
* chore: use playbooks to install mariadb
* chore: mariadb fixes in travis
* chore: pin dist to ubuntu 18.04
* chore: setup envs according by type of test
* chore: ignore auto backup, procfile, assets build
* chore: change app frammeclient to frappe_theme
* test: try travis_wait
* tests: update and restructure tests
* tests: restructure flow of setUp, tearDown
* fix: python class inheritence fix
* chore: use local frappe repo instead of remote pull
* tests: skip assets during get-app
* fix(tests): remove reinstalling app after get_app called
* fix(tests): updated test_install_app
* fix: broken remove_app
tests: broken tests
* tests: no backup while dropping new_sites
* tests: added certain tests and py obj fixes
* tests: seperate basic and production setup tests
* tests: update travis, remove basic setup
* chore: move from function calls to exec_cmd
* chore: tests fixes
* chore: removed sudo from basic setup runs
* chore: use "sudo" for setting up sudoers
* fix: allow get_app from local folder
* fix: use gitpython to switch branch instead of exec_cmd
* chore: use test to check for file existing
* chore: restructure bench tests
* fix: fetch app repo before checking for version upgrade during
switch_branch
* fix: gitpython error in usage
* fix: boolean return value of file_exists
* fix: dont decode file contents
* fix: bench names and close open files
* chore: update bench config multiple benches
* chore: check where production fails
* chore: mention python version for init
* chore: remove node production test in CI
* fix: compatibility and permissions fixes
* chore: setup sudoers after prod setup
* fix: set remote upstream after local clone
* fix: disable production via cli
* chore(tests): fix upstream link
* chore: split tests and remove unused imports