Skip to content

megamsys/verticegateway

1.5.2
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
app
 
 
 
 
db
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Vertice Gateway

This is our API server for MegamVertice 1.5.x or < 2.0 release.

Roadmap for 2.0

API server for 2.0 is based on rust connecting to cockroachdb.

Where is the code for 2.0

We have moved the development to private gitlab as it will have enterprise features.

When can i get it in my anxious hands

2.0 will be released on Sep 30 2017 or less.

Requirements to compile from source

  1. SBT 0.13.11 >
  2. NSQ 0.3.x
  3. OpenJDK 8.0
  4. Cassandra 3 +

The API server protects the RESTful resources using

  • HMAC based authorization.
  • PASSWORD based on PBKDF2
  • Master key

Compile from source

You'll need sbt build tool. and OpenJDK8.0

Fork

After you have forked a copy of https://github.com/megamsys/vertice_gateway.git

Steps


* git clone https://github.com/<your_github_id>/vertice_gateway.git

* cd vertice_gateway

* sbt

* clean

* compile


Running

Install Cassandra

Install NSQ.io

Setup cassandra keyspace

* cd vertice_gateway/db

* cqlsh -f base.cql

* cqlsh -f 1.5.cql

* cqlsh -f 1.5.1.cql

* cqlsh -f 1.5.2.cql

* cqlsh -f ee.cql

* cqlsh -f me.cql

MEGAM_HOME

Create a home directory to store configuration files for MegamVertice


$ cd ~

$ mkdir -p megam/home/verticegateway

Edit your .bashrc

In your .bashrc file add the following line


export MEGAM_HOME=$HOME/megam/home

After this enter save the .bashrc file.Use the following command

source ~/.bashrc

Configuration

Copy configuration files to $MEGAM_HOME/verticegateway


$ cd vertice_gateway (your cloned location)

$ cp conf/gateway.conf $MEGAM_HOME/verticegateway

$ cp conf/logger.xml $MEGAM_HOME/verticegateway


Start Vertice Gateway

* cd vertice_gateway

* sbt

* clean

* compile

* run

Gateway

Type the url http://localhost:9000

You'll see this in your browser.

{
  "status" : {
    "casssandra" : "up",
    "nsq" : "down"
  },
  "runtime" : {
    "total_mem" : "975 MB",
    "freemem" : "649 MB",
    "cores" : "4",
    "freespace" : "399 of 450 GB"
  }
}

Now you are all set.

API Documentation

Refer [docs](https://docs.megam.io] and we'll publish vertice.raml shortly.

To generate the html docs.


npm install -g raml2html

raml2html vertice.raml

Contribution

As this is heavy on memory, we have a work in progress 2.0 code which is based on rust.

Documentation

For [documentation] (http://docs.megam.io) [devkit] (https://github.com/megamsys/vertice_dev_kit)

License

MIT

Authors

Megam - Humans (humans@megam.io)

About

REST API server with built in auth, interface to ScyllaDB/Cassandra

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages