Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Rupaya #159

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added assets/rupaya.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions config/rupaya/rupaya.compile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash
chmod u+x share/genbuild.sh
chmod u+x src/leveldb/build_detect_platform
chmod u+x ./autogen.sh && ./autogen.sh
./configure --disable-dependency-tracking --enable-tests=no --without-gui --without-miniupnpc
make
make install
51 changes: 51 additions & 0 deletions config/rupaya/rupaya.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
################################
# basic settings
################################
txindex=1
logtimestamps=1
listen=1
daemon=1
staking=0
enablezeromint=0
gen=0
maxconnections=256
bind=XXX_IPV6_INT_BASE_XXX:XXX_NETWORK_BASE_TAG_XXX::XXX_NUM_XXY:XXX_MNODE_INBOUND_PORT_XXX
externalip=XXX_IPV6_INT_BASE_XXX:XXX_NETWORK_BASE_TAG_XXX::XXX_NUM_XXY
masternodeaddr=XXX_IPV6_INT_BASE_XXX:XXX_NETWORK_BASE_TAG_XXX::XXX_NUM_XXY:XXX_MNODE_INBOUND_PORT_XXX

#############################
# nodes we want to stick to
#############################


################################
# masternode specific settings
################################
masternode=1
#### INSERT YOUR MASTERNODE PRIVATEKEY BELOW ####################################################
masternodeprivkey=HERE_GOES_YOUR_MASTERNODE_KEY_FOR_MASTERNODE_XXX_GIT_PROJECT_XXX_XXX_NUM_XXX
#################################################################################################
#
# b.
# 88b Insert your generated masternode privkey here
# 888b.
# 88888b
# 888888b.
# 8888P"
# P" `8.
# `8.
# `8
#################################################################################################

#############################
# optional indices
#############################

#############################
# JSONRPC
#############################
server=1
rpcuser=XXX_GIT_PROJECT_XXXrpc
rpcpassword=XXX_PASS_XXX
rpcallowip=127.0.0.1
rpcport=555XXX_NUM_XXX
5 changes: 5 additions & 0 deletions config/rupaya/rupaya.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
CODENAME=rupaya
MNODE_DAEMON=${MNODE_DAEMON:-/usr/local/bin/rupayad}
MNODE_INBOUND_PORT=${MNODE_INBOUND_PORT:-9050}
GIT_URL=https://github.com/rupaya-project/rupx.git
SCVERSION="tags/v5.0.33"
87 changes: 87 additions & 0 deletions docker/RUPAYA/Dockerfile_RUPAYA
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
#
# Dockerfile for a RUPAYA masternode
# usage: docker run marsmensch/masternode-rupaya:latest
#
# how to work with the container
#
# 1) build the container (checkout desired git revision first)
# docker build -t "marsmensch/masternode-rupaya:latest" -f docker/Dockerfile_RUPAYA .
#
# 2) start the container
# docker run -p ${NODE_PORT}:${NODE_PORT} $(PWD)/config/rupaya/rupayad.conf:/opt/data "marsmensch/masternode-rupaya:latest"
#
# 3) start the container interactively
# docker run --interactive --tty --entrypoint=/bin/bash "marsmensch/masternode-rupaya:latest"
#
# 4) standard help
# docker run -v $(PWD)/config/rupaya:/opt/data "marsmensch/masternode-rupaya:latest"

FROM ubuntu:xenial
MAINTAINER Florian Maier <contact@marsmenschen.com>

ENV CONTAINER_USER masternode
ENV PROJECT rupaya
ENV GIT_URL git://github.com/PIVX-Project/PIVX.git
ENV SVC_VERSION tags/v5.0.33
ENV HOME_DIR /usr/local/bin
ENV NODE_PORT 9050
ENV REFRESHED_AT 2019-01-16

# add unprivileged user
RUN adduser --shell /bin/bash --disabled-password \
--disabled-login --gecos '' ${CONTAINER_USER}

# install system packages and compile
RUN apt-get update \
&& apt-get -y upgrade \
&& apt-get -y install --no-install-recommends build-essential libtool autotools-dev \
libcurl4-openssl-dev libboost-all-dev libssl-dev libdb++-dev make autoconf automake \
libtool git apt-utils libprotobuf-dev pkg-config libboost-filesystem-dev libboost-chrono-dev \
libevent-dev libboost-program-options-dev libgmp-dev libboost-test-dev libboost-thread-dev \
&& mkdir -p /opt/code/ && cd /opt/code/ && git clone ${GIT_URL} ${PROJECT} \
&& cd /opt/code/${PROJECT} && git checkout ${SVC_VERSION} \
&& ./autogen.sh && ./configure --enable-tests=no --with-incompatible-bdb \
--enable-glibc-back-compat --with-gui=no \
CFLAGS="-march=native" LIBS="-lcurl -lssl -lcrypto -lz" \
&& make && make install \
# remove unneeded stuff
&& apt-get -y remove build-essential \
libboost-all-dev libboost-atomic-dev libboost-atomic1.58-dev \
libboost-chrono-dev libboost-chrono1.58-dev \
libboost-context-dev libboost-context1.58-dev \
libboost-coroutine-dev libboost-coroutine1.58-dev \
libboost-date-time-dev libboost-date-time1.58-dev \
libboost-dev libboost-exception-dev libboost-exception1.58-dev \
libboost-filesystem-dev libboost-filesystem1.58-dev \
libboost-graph-dev libboost-graph-parallel-dev \
libboost-graph-parallel1.58-dev libboost-graph1.58-dev \
libboost-iostreams-dev libboost-iostreams1.58-dev libboost-locale-dev \
libboost-locale1.58-dev libboost-log-dev \
libboost-log1.58-dev libboost-log1.58.0 libboost-math-dev \
libboost-math1.58-dev libboost-math1.58.0 libboost-mpi-dev \
libboost-mpi-python-dev libboost-mpi-python1.58-dev \
libboost-mpi1.58-dev libboost-program-options-dev \
libboost-program-options1.58-dev libboost-python-dev \
libboost-python1.58-dev libboost-random-dev libboost-random1.58-dev \
libboost-regex-dev libboost-regex1.58-dev libboost-serialization-dev \
libboost-serialization1.58-dev libboost-signals-dev libboost-signals1.58-dev \
libboost-system-dev libboost-system1.58-dev libboost-test-dev libboost-test1.58-dev \
libboost-thread-dev libboost-thread1.58-dev libboost-timer-dev libboost-timer1.58-dev \
libboost-tools-dev libboost-wave-dev libboost-wave1.58-dev libboost1.58-dev \
libboost1.58-tools-dev libc6-dev libdb5.3++-dev libdb5.3-dev libevent-dev \
libexpat1-dev libgmp-dev libibverbs-dev libicu-dev libltdl-dev libnuma-dev \
libopenmpi-dev libprotobuf-dev libpython-dev libpython2.7-dev libssl-dev \
mpi-default-dev python-dev python2.7-dev zlib1g-dev \
&& apt -y autoremove \
&& rm -rf /opt/code \
&& rm -rf /var/lib/apt/lists/*

# EXPOSE the masternode port
EXPOSE ${NODE_PORT}

RUN chown -R ${CONTAINER_USER} ${HOME_DIR}
USER ${CONTAINER_USER}
WORKDIR ${HOME_DIR}

# start command
CMD ["/usr/local/bin/rupayad", "--help"]