GithubHelp home page GithubHelp logo

lynnaloo / xtuple-vagrant Goto Github PK

View Code? Open in Web Editor NEW
7.0 7.0 139.0 2.26 MB

Vagrant-powered development environment for the xTuple's open-source ERP software: http://github.com/xtuple.

Shell 33.94% Ruby 66.06%

xtuple-vagrant's Introduction

Creating a Vagrant Virtual Development Environment

Vagrant is open-source software used to create lightweight and portable virtual development environments. Vagrant works like a "wrapper" for VirtualBox that can create, configure, and destroy virtual machines with the use of its own terminal commands. Vagrant facilitates the setup of environments without any direct interaction with VirtualBox and allows developers to use preferred editors and browsers in their native operating system. This blog describes a typical workflow using Vagrant in a development environment.

New to Github? Learn more about basic Github activities here.

Note: This document is for setting up a virtual environment on a Unix host. If you are using a Windows host, please use these instructions.

Install Vagrant

  • Download and install VirtualBox 4.3.12
    • Do not open VirtualBox or create a virtual machine. This will be handled by Vagrant.
  • Download and install Vagrant 1.6.4
    • Package managers like apt-get and gem install will install an older version of Vagrant so it is required to use the download page.

Fork the xtuple, fork xtuple-extensions, and fork xtuple-vagrant repositories on Github.

Clone your forks of the xtuple and xtuple-extensions repositories to a directory on your host machine:

host $ mkdir dev
host $ cd dev
host $ git clone --recursive https://github.com/<your-github-username>/xtuple.git
host $ git clone --recursive https://github.com/<your-github-username>/xtuple-extensions.git

Clone your fork of the xtuple-vagrant repository in a separate directory adjacent to your development folder:

host $ cd ..
host $ mkdir vagrant
host $ cd vagrant
host $ git clone https://github.com/<your-github-username-here>/xtuple-vagrant.git
host $ cd xtuple-vagrant

Important: If you have previously forked these repositories, please ensure that you update your fork and update your dependencies.

Setup Vagrant

  • In the Vagrantfile, ensure that the sourceDir variable to matches the location of the cloned xTuple source code: sourceDir = "../../dev"
    • This path should be relative to the location of the Vagrantfile

Install VirtualBox Guest Additions Plugin

vagrant plugin install vagrant-vbguest

Connect to the Virtual Machine

Start the virtual machine:

host $ vagrant up
  • Vagrant will automatically run a shell script to install git and the xTuple development environment

Connect to the virtual machine via ssh:

host $ vagrant ssh
  • The xTuple source code is synced to the folder ~/dev

Start the datasource:

vagrant $ cd dev/xtuple/node-datasource
vagrant $ node main.js

xTuple Mobile Web

Launch your local browser and navigate to application using localhost http://localhost:8888 or the static IP Address of the virtual machine http://192.168.33.10:8888

Default username and password to your local application are admin

xTuple Desktop Client

  • Obtain the xTuple Desktop Client Installer for your platform. To be sure the PostBooks Desktop Client version matches the PostBooks database version you are installing, look at the "About" information in the Mobile client.

  • Run the installer. On the screen where you select an xTuple database, select "I do not need a Free Trial database."

  • Complete the installation and launch the Desktop Client. On the login screen, enter these credentials to connect to your local xTuple server:

  • Username: admin
  • Password: admin
  • Server : 192.168.33.10
  • Port: 5432
  • Database: demo

Additional Information

Shutting down, restarting, and destroying your VM:

Basic commands

xtuple-vagrant's People

Contributors

bendiy avatar lynnaloo avatar shackbarth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

xtuple-vagrant's Issues

Instructions to run the install script

After connecting to the virtual machine it prompts the user to install node-data source.

as per the original xtuple/xtuple instructions, it suggests to install the client

  1. Run the install script

bash scripts/install_xtuple.sh
You will be prompted for sudo credentials; installation will take a few minutes.

Documentation ???

Can anybody point me to ANY developer documentation that might exist. An overview of the classes? Class hierarchy? Development standards? Anything?

Thanks

Vagrant Box Packaging Question

I have a Vagrant xTuple Dev system completely setup. Everything working 100%. Call it Computer1

So I 'packaged' that Vagrant system up (using the Vagrant "package" command)
I then moved the "package" to another computer - call it Computer2
I then added that "package" to the Vagrant system of Computer2 naming it erpxTupleDev (using the Vagrant "add box" command)
I then modified the VagrantFile, on Computer2, as follows:
changed config.vm.box = "hashicorp/precise64"
to config.vm.box = "erpxTupleDev"

All of the DEV and VAGRANT GitHub projects were properly cloned onto Computer2.

I then brought Vagrant 'up'.

Everything is working perfectly within the Vagrant system on Computer2. I have successfully compiled the complete xTuple application. No problems at all.

So here is the question:

On Computer1 I had installed QTCreator into the Vagrant/VirtualBox system. QTCreator is installed and working fine on Computer1. This was installed PRIOR to creating the package.

After installing the package on Computer2, and bringing Vagrant 'up' as I said above - everything is working fine - HOWEVER the installed QTCreator program is NOT THERE. I had to re-install it. The directory it had been installed in was just not there. Strangely enough - the QTCreator download file, which I had downloaded on Computer1, was still in the DOWNLOAD directory.

Is there something about "packaging" a Vagrant system that it strips off anything that wasn't part of the core/original Vagrant system?

I had no problem re-installing QTCreator...but I was just wondering if I ever install anything else into a Vagrant system, then package it, am I going to find those add'l packages 'missing' just like QTCreator went missing?

Thanks Much! (Sorry for the lengthy description!!!)

[FAQ]: VirtualBox is complaining that the kernel module is not loaded

For some reason my Ubuntu 14.04 started giving me this suddenly:

The provider 'virtualbox' that was requested to back the machine
'default' is reporting that it isn't usable on this system. The
reason is shown below:

VirtualBox is complaining that the kernel module is not loaded. Please
run `VBoxManage --version` or open the VirtualBox GUI to see the error
message which should contain instructions on how to fix this error.

I fixed it by doing this:

tjwebb@latitude:xtuple-vagrant (master) $ sudo /etc/init.d/vboxdrv setup
[sudo] password for tjwebb: 
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...done.
Starting VirtualBox kernel modules ...done.

yml-based build

Hey @lynnaloo didn't you say there was a .yml-based version of this that you had started somewhere? Can you point me to it?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.