This project contains the code for the Minion Frontend. It provides a simple website to manage users and groups,
manage sites to scan, and create and start scans.
Setting up a Development Environment
Note that Mozilla maintains Vagrant and Docker configurations for Minion.
It’s the best and easiest way to get started with development!
The following instructions for manual installation assume a recent version of Ubuntu; we currently test with Ubuntu
14.04 LTS (Trusty Tahr). Although Minion can be installed anywhere on your system, we recommend·
/opt/minion/minion-frontend for the frontend, and /opt/minion/minion-env for your virtualenv.
Then, create and source your virtual environment. This will help keep Minion isolated from the rest of your system. We
also need to upgrade setuptools from the version included with Ubuntu by default:
Next, setup your system with the following directories and the minion user account. We’ll also create some convenience
shell commands, to make working with Minion easier when running as the minion user:
To make sure that Minion starts when the system reboots, we need to install the Minion init script. We can also disable
the global supervisord installed with apt-get install above, if it wasn’t being used before:
And that’s it! Provided that everything installed successfully, we can start everything up:
# service minion start
From this point on, you should be able to control the Minion processes either as root or as the newly-created minion user.
Let’s su - minion, and see if everything is running properly:
(minion-env)minion@minion-frontend:~$ service minion status
minion-frontend RUNNING pid 1506, uptime 1 day, 1:25:41
Success! You can also use minionctl (an alias to supervisorctl, using the Minion supervisord.conf configuration)
to stop and start individual services, or check on status:
By default, Minion will use the configuration file frontend.json to determine the authentication method as well as the
location of the Minion backend API. If you would like to change this file at all,
copy it into /etc/minion, make your changes, and restart Minion.
Minion currently supports both Persona and LDAP authentication, with Persona being the default authentication method. To
switch to LDAP authentication, change type in login from persona to ldap, and change the ldap configuration
section to point to the correct LDAP server and base DN.
This project contains the code for the Minion Frontend. It provides a simple website to manage users and groups, manage sites to scan, and create and start scans.
Setting up a Development Environment
Note that Mozilla maintains Vagrant and Docker configurations for Minion. It’s the best and easiest way to get started with development!
The following instructions for manual installation assume a recent version of Ubuntu; we currently test with Ubuntu 14.04 LTS (Trusty Tahr). Although Minion can be installed anywhere on your system, we recommend·
/opt/minion/minion-frontendfor the frontend, and/opt/minion/minion-envfor your virtualenv.First, install the essentials:
Then, create and source your virtual environment. This will help keep Minion isolated from the rest of your system. We also need to upgrade setuptools from the version included with Ubuntu by default:
Next, setup your system with the following directories and the
minionuser account. We’ll also create some convenience shell commands, to make working with Minion easier when running as theminionuser:Now we can checkout Minion and install it:
To make sure that Minion starts when the system reboots, we need to install the Minion init script. We can also disable the global
supervisordinstalled withapt-get installabove, if it wasn’t being used before:And that’s it! Provided that everything installed successfully, we can start everything up:
From this point on, you should be able to control the Minion processes either as root or as the newly-created minion user. Let’s
su - minion, and see if everything is running properly:Success! You can also use
minionctl(an alias tosupervisorctl, using the Minionsupervisord.confconfiguration) to stop and start individual services, or check on status:Configuring your Minion environment
By default, Minion will use the configuration file
frontend.jsonto determine the authentication method as well as the location of the Minion backend API. If you would like to change this file at all, copy it into/etc/minion, make your changes, and restart Minion.Minion currently supports both Persona and LDAP authentication, with Persona being the default authentication method. To switch to LDAP authentication, change
typeinloginfrompersonatoldap, and change theldapconfiguration section to point to the correct LDAP server and base DN.