1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-10 21:24:20 +01:00
fab-manager/doc/virtual-machine.md
2020-03-25 17:58:53 +01:00

72 lines
2.1 KiB
Markdown

# Virtual Machine Instructions
These instructions allow to deploy a testing or development instance of Fab-manager inside a virtual
machine, with most of the software dependencies installed automatically and avoiding to install a lot
of software and services directly on the host computer.
**Note:** The provision scripts configure the sofware dependencies to play nice with each other while
they are inside the same virtual environment but said configuration is not optimized for a production
environment.
**Note 2:** The perfomance of the application under the virtual machine depends on the resources that
the host can provide but will usually be much more slower than a production environment.
1. Install [Vagrant][vagrant] and [Virtual Box][virtualbox] (with the extension package).
2. Retrieve the project from Git
```bash
git clone https://github.com/sleede/fab-manager
```
3. From the project directory, run:
```bash
vagrant up
```
4. Once the virtual machine finished building, reload it with:
```bash
vagrant reload
```
5. Log into the virtual machine with:
```bash
vagrant ssh
```
6. While logged in, navigate to the project folder and install the Gemfile
dependencies:
```bash
bundle install
yarn install
```
7. Set up the databases. (Note that you should provide the desired admin credentials and that these
specific set of commands must be used to set up the database as some raw SQL instructions are
included in the migrations. Password minimal length is 8 characters):
```bash
rails db:create
rails db:migrate
# Be sure not to use the default values below in production
ADMIN_EMAIL='admin@email' ADMIN_PASSWORD='adminpass' rails db:seed
rails fablab:es:build_stats
# for tests
RAILS_ENV=test rails db:create
RAILS_ENV=test rails db:migrate
```
8. Start the application and visit `localhost:3000` on your browser to check that it works:
```bash
foreman s -p 3000
```
---
[vagrant]: https://www.vagrantup.com/downloads.html
[virtualbox]: https://www.virtualbox.org/wiki/Downloads