gitflow | git |
---|---|
git flow init |
git init |
git commit --allow-empty -m "Initial commit" |
|
git checkout -b develop master |
Deploy a Ripple Gateway today with the Ripple Gateway template server software. The Ripple Gateway template is designed for organizations who want to test the waters with Ripple and begin issuing currency to users of the Ripple value network.
The software includes out of the box the ability for users to register with their email to your gateway and associate their ripple identity. For the operator of your gateway, tools are provided to make setup and configuration of your gateway as seamless and minimal as possible. The goal of the gateway tool is to launch a new gateway on Ripple in less than ten minutes after the software is installed.
A Ripple Gateway processes deposits of assets to and their corresponding withdrawals from the Ripple value network. In essence they are the holders of assets and issuers of corresponding currency to Ripple users.
GENERAL REQUIREMENTS
- sends payments to Ripple REST upon writing to a SQL table
- verifies outbound payments using Ripple REST notifications
- standard error messages for HTTP calls
- ability to map one deposit to n outgoing ripple transactions
- ability to map one incoming ripple transaction to n withdrawals
- record external_transaction_id of deposit in n ripple transactions
- record ripple_transaction_id of ripple_transaction in n withdrawals
- query to return n outgoing ripple transactions given a deposit
- query to return n withdrawals given incoming ripple transaction
## Ubuntu 14.04 on AWS | |
sudo apt-get update | |
sudo -y apt-get upgrade | |
## Git | |
sudo apt-get -y install git | |
## Scons | |
sudo apt-get -y install scons |
sudo apt-get update | |
sudo -y apt-get upgrade | |
## Install Boost | |
sudo apt-get -y install build-essential g++ python-dev autotools-dev libicu-dev build-essential libbz2-dev | |
wget -O boost_1_55_0.tar.gz http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz/download | |
tar xzvf boost_1_55_0.tar.gz | |
cd boost_1_55_0/ | |
./bootstrap.sh --prefix=/usr/local |
Gatewayd is an HTTP / JSON API server that provides functionality enabling any user of the software to operate a Ripple Gateway. The REST interface is composed of nearly forty endpoints, for which the required parameters and successful responses are documented. However there are very few if any appropriate error messages returned to the API caller when an invalid request is made, or when gatewayd experiences a software exception.
-
Enumerate all the various errors that can be returned from the Gatewayd API.
-
Write mocha specs for the HTTP API that test error cases and assert properly formatted errors.
-
Implement proper error generation in the API Core layer, and propagate the errors to the HTTP API layer.
Error reporting of Gatewayd with as much robustness as provided by the tasks listed will dramatically improve the experience for engineers creating integrations with Gatewayd and plugin modules for additional Gatewayd functionality.
Gatewayd is a transaction processing engine designed by engineers at Ripple Labs in order to build bridges in and out of the Ripple network.
The following is intended to be a complete proposal for version 4.0 of gatewayd, which is currently in use in several places as version 3.x. This proposal includes breaking changes but the spirit and many design features of gatewayd 3.x remain.
**** Please leave thoughts and suggestions in the comments below as we design the spec ****
Gatewayd is designed to work with Heroku:
git clone https://github.com/ripple/gatewayd.git
cd gatewayd
heroku create my-great-gateway-app
git push heroku master
heroku addons:add heroku-postgresql
heroku config:set KEY=mysup3rs3cr3t@ap!k3y
heroku ps:scale web=1
Part 1: Bitcoin
- running bitcoind on ubuntu: https://degreesofzero.com/article/installing-bitcoind-on-ubuntu.html
- block explorer: https://blockexplorer.com/q/getblockcount
- using the bitcoind command line interface
- using the bitcoind rpc interface: https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list
- ndoe-bitcoin javascript library for interacting with bitcoind: https://github.com/freewil/node-bitcoin
- generating new receive addresses: https://github.com/freewil/node-bitcoin
- monitoring for payments made to receive addresses: https://github.com/stevenzeiler/blockchain-account-monitor
- sending payments from the bitcoind wallet: https://github.com/freewil/node-bitcoin