GUI - Web Module

Commands

Start the web module:

golem gui

Specify the port

golem gui -p 8080

Specify the host

golem gui --host 127.0.0.1

Default is localhost. Running it in host=0.0.0.0 will make Golem accessible from outside the computer by using the public IP of the computer running Golem. Use this only if debug mode is turned off or if you trust the users of your network.

If public access to the web module is needed, consider using a production server.

Run in debug mode

golem gui -d

Users

User Permissions

There are five user permissions: superuser, admin, standard, read-only, reports-only. Permissions are defined for each project except superuser that is global. Permission access is documented in the table below.

Page Permission superuser admin standard read-only reports-only
Suite/Test/Page List view
add
duplicate
rename
run
delete
Suite/Test/Page Builder view
edit
run
Environments view
edit
Project Settings view
edit
Global Settings view/edit
User Management view/edit
Reports view
delete

Creating Users

Superusers can be created using the createsuperuser command. Non superusers have to be created from the User Management page.

Secret Key

For security purposes, each test directory is generated with a unique secret key stored in the .golem file.

Example .golem file:

[gui]
secret_key = <your_super_secret_key_string>

If the secret key is not provided, a default key will be used (not recommended).

Using a Production Server

The default server (Flask development server) is not suited for production.

The Golem GUI web application can be run with a production WSGI server just like any other Flask application.

As an example, these are the steps to use Waitress:

pip install waitress

waitress-serve --call "golem.gui:create_app"

There are a lot of different options. Here is a complete guide: https://flask.palletsprojects.com/en/2.0.x/deploying/