-
-
Notifications
You must be signed in to change notification settings - Fork 79
Installation
Support for Scrummage installations is provided for tier 3 and 4 monthly sponsors, and ad-hoc support is provided based on the relevant time-limit. For more details, you can contact us via the sponsors page.
PLEASE FOLLOW CAREFULLY AS THERE IS INFORMATION PRINTED IN THE TERMINAL THAT WILL NEED TO BE RETAINED
This tool currently supports Debian, RHEL, and SUSE based Linux distributions.
Ubuntu versions over 18.04 are recommended. Ubuntu 20.04 is ideal.
- Clone this repository to the location where you want to run the web application.
user@linux:~$ git clone https://github.com/matamorphosis/Scrummage- Navigate to the installation directory.
user@linux:~$ cd Scrummage/installation- Run the
install.shbash script with root privileges, to install all necessary dependencies. As part of this script, it will install all python dependencies in thepython_requirements.txtfile and run theCreate_Tables.pyscript to create all necessary tables in the back-end database. If you want to change the default username and database, which are both set to “scrummage” by default, change the following lines in theinstall.shscript:
DATABASE="scrummage"
USER="scrummage" Furthermore, by default, an environment variable called FLASK_ENVIRONMENT is set to "development" as this variable is used by the web application to understand which environment it is running in. If the server is production change this variable's value to "production". To do this change the below line in the install.sh script:
FLASK_ENVIRONMENT="development"Command to run:
user@linux:/<PATH-TO-SCRUMMAGE>/installation$ sudo bash install.sh- When the script finishes, it should print out the username and database it has created; furthermore, a randomly generated password will also be printed to the screen. While the script creates a new
config.jsonfile, located in theapp/plugins/common/configuration/directory, please retain this information. Provide the details under"postgresql". If you would like to create a new user, use theCreate_User.pyscript located in the installation directory. The command is as follows:
user@linux:/<PATH-TO-SCRUMMAGE>/installation$ python3 Create_User.py --username/-u Username --password/-p Password --admin/-a [True | False] --blocked/-b [True | False]- If you have your own certificates that you would like to use over the default self-signed certificate, please move the
.crtand.keypair to the /certs directory - Next, navigate to
"/app/plugins/common/config", and verify the web application details are correct under"web_app". Ensure the certificates are set correctly. Using the path "../certs/*FILE*": Please replace [vim/nano/gedit/leafpad] with your text editor of choice.
user@linux:/<PATH-TO-SCRUMMAGE>/app/plugins/common/config$ [vim/emacs/nano/gedit/leafpad] config.json"web_app": {
"debug": false,
"host": "127.0.0.1",
"port": 5000,
"certificate_file": "../certs/certificate.crt",
"key_file": "../certs/privateKey.key",
"api_secret": "",
"api_validity_minutes": 60,
"api_max_calls": 10,
"api_period_in_seconds": 60
},- Next, ensure the path of both Google Chrome and Chromedriver are valid, without these installed and listed in the
config.jsonfile, screenshot functionality won't work. Please also ensure the version of your Chromedriver is in line with your current version of Google Chrome.
"google_chrome": {
"application_path": "/usr/bin/google-chrome",
"chromedriver_path": "/usr/bin/chromedriver"
},If you are facing ongoing issues with the screenshot functionality, please refer to the "Screenshot Troubleshooting" wiki page here for troubleshooting steps, including a new automated troubleshooting tool.
- Next, if you need to use a proxy you need to set it up under the
"proxy"section. If you are within an organisation where your device has a pre-configured system proxy, all you need to do is set"use_system_proxy"totrue. Otherwise, please provide the proxy server for HTTP and HTTPS as per python's specifications.
"proxy": {
"http": "",
"https": "",
"use_system_proxy": false
},- If you would like to add organisation-specific information, you can do so by providing the following fields with values in the
"organisation"section:
"organisation": {
"name": "",
"website": "",
"domain": "",
"subdomains": []
},- Lastly, navigate to the parent directory and then to the bin directory and start the server. You should be able to access it on https://[HOST]:[PORT], [HOST] and [PORT] should match the JSON attributes above. You can authenticate using the username and password printed out from running the
install.shbash script. The username isadminunless in the script prior to being run.
user@linux:~$ cd /<PATH-TO-SCRUMMAGE>/app
user@linux:/<PATH-TO-SCRUMMAGE>/app$ python3 Scrummage.pyRefer to the Wiki Page https://github.com/matamorphosis/Scrummage/wiki/The-Long-List-of-Tasks
Refer to the Wiki Page https://github.com/matamorphosis/Scrummage/wiki/Output-Options
Refer to the Wiki Page https://github.com/matamorphosis/Scrummage/wiki/Getting-Started-after-Installation
Refer to the Wiki Page https://github.com/matamorphosis/Scrummage/wiki/Plugin-Development-Guide