Minisat is a centralizes web interface, built on Django framework, to provision virtual machines and run Docker containers on remote hosts.
- Install QEMU and libvirt packages
$ sudo dnf install qemu-kvm qemu-img libvirt libvirt-python libvirt-client virt-install -y
- Create ssh public key
$ ssh-keygen -q -t rsa -f ~/.ssh/id_rsa -N ""
- Install docker-machine
$ curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine && sudo install /tmp/docker-machine /usr/local/bin/docker-machine
- Create your python3 virtual environment
$ python3 -m venv <environment_name>
- Activate virtual environment
$ source <environment_name>/bin/activate
- Install dependency using pip
$ pip install -r requirements.txt
- Run migrations
$ python3 manage.py makemigrations
$ python3 manage.py migrate
- Run django web app
$ python3 manage.py runserver
- Build Docker image
$ cd Minisat/
$ docker build -t minisat:latest .
- Run the image
$ docker container run -it -p 8000:8000 minisat:latest 0.0.0.0:8000
- Head to http://localhost:8000 for Minisat UI
All Minisat pull requests are tested in Travis-ci. If tests fail, visit the test job that failed to view its console output.
Run these same tests locally using selenium. Download selenium webdriver for mozilla firefox. mozilla geckodriver.
Extract the driver. Export path
$ export PATH=$PATH/:/path/of/driver
It will set a path variable to the webdriver.
And run the test
$ pytest
Minisat is licensed under GNU General Public License v3.0. See LICENSE