diff --git a/.project b/.project deleted file mode 100644 index bb2fb71390c0d0a76bd480c24ecdc133f4bc878d..0000000000000000000000000000000000000000 --- a/.project +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>erisdb</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>com.googlecode.goclipse.goBuilder</name> - <triggers>clean,full,incremental,</triggers> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>com.googlecode.goclipse.core.goNature</nature> - </natures> -</projectDescription> diff --git a/DOCKER/Dockerfile b/DOCKER/Dockerfile deleted file mode 100644 index 550e18b7f6cbebcc7a1bad2f88553859c407cbb4..0000000000000000000000000000000000000000 --- a/DOCKER/Dockerfile +++ /dev/null @@ -1,80 +0,0 @@ -# Pull base image. -FROM quay.io/eris/build -MAINTAINER Eris Industries <support@erisindustries.com> - - -#----------------------------------------------------------------------------- -# install eris-db -# -ENV GO15VENDOREXPERIMENT 1 - -# install glide for dependency management -RUN go get github.com/Masterminds/glide - -# set the repo and install erisdb -ENV REPO $GOPATH/src/github.com/eris-ltd/eris-db -WORKDIR $REPO -COPY . $REPO -RUN glide install -RUN cd ./cmd/eris-db && go build -o /usr/local/bin/eris-db && cd ../.. - -#----------------------------------------------------------------------------- -# install mint-client tools - -# set the repo and install mint-client -ENV REPO github.com/eris-ltd/mint-client -ENV BRANCH master -RUN mkdir -p $GOPATH/src/$REPO -WORKDIR $GOPATH/src/$REPO -RUN git clone --quiet https://$REPO . && \ - git checkout --quiet $BRANCH && \ - go install ./... && \ - mv $GOPATH/bin/mint* /usr/local/bin && \ - mv ./mint-client /usr/local/bin/ - -#----------------------------------------------------------------------------- -# cleanup - -RUN rm -f $GOPATH/bin/glide -RUN rm -rf $GOPATH/src/* && \ - unset REPO && \ - unset COMMIT && \ - unset BRANCH - -#----------------------------------------------------------------------------- -# start script - -# install the wrapper/start script -COPY DOCKER/start.sh /usr/local/bin/erisdb-wrapper - -#----------------------------------------------------------------------------- -# chain manager scripts and default mint config - -ENV ECM_PATH /usr/local/lib/ecm -RUN mkdir -p $ECM_PATH -COPY DOCKER/chain_* $ECM_PATH/ -COPY DOCKER/config.toml $ECM_PATH/ -COPY DOCKER/version.sh $ECM_PATH/ - -#----------------------------------------------------------------------------- -# permission the directories -RUN chown -R eris /usr/local/bin -RUN chown -R eris $ECM_PATH - -#----------------------------------------------------------------------------- -# root dir - -# persist data, set user -WORKDIR /home/$USER/.eris -VOLUME /home/$USER/.eris -USER $USER -RUN mkdir -p /home/$USER/.eris/chains/tendermint -ENV CHAINROOT /home/$USER/.eris/chains/tendermint - -# run eris-db -# ports: 1337:eris-db API; 46656:tendermint-peer; 46657:tendermint-rpc -EXPOSE 1337 -EXPOSE 46656 -EXPOSE 46657 -ENTRYPOINT ["eris-db", "serve"] -# CMD["--work-dir $CHAINROOT"] diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..81ab0e4c116eb7b50bc7609b498fca9ae4895cd8 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,45 @@ +# Pull base image. +FROM quay.io/eris/build +MAINTAINER Eris Industries <support@erisindustries.com> + +# Expose ports for 1337:eris-db API; 46656:tendermint-peer; 46657:tendermint-rpc +EXPOSE 1337 +EXPOSE 46656 +EXPOSE 46657 + +#----------------------------------------------------------------------------- +# install eris-db + +# set the source code path and copy the repository in +ENV ERIS_DB_SRC_PATH $GOPATH/src/github.com/eris-ltd/eris-db +COPY . $ERIS_DB_SRC_PATH + +# fetch and install eris-db and its dependencies + # install glide for dependency management +RUN go get github.com/Masterminds/glide \ + # build the main eris-db target + && cd $ERIS_DB_SRC_PATH/cmd/eris-db \ + && go build \ + && cp eris-db $INSTALL_BASE/eris-db + +#----------------------------------------------------------------------------- +# install mint-client [to be deprecated] + +ENV ERIS_DB_MINT_REPO github.com/eris-ltd/mint-client +ENV ERIS_DB_MINT_SRC_PATH $GOPATH/src/$ERIS_DB_MINT_REPO + +WORKDIR $ERIS_DB_MINT_SRC_PATH + +RUN git clone --quiet https://$ERIS_DB_MINT_REPO . \ + && git checkout --quiet master \ + && go build -o $INSTALL_BASE/mintx ./mintx \ + && go build -o $INSTALL_BASE/mintconfig ./mintconfig + # restrict build targets for re-evaluation + # && go build -o $INSTALL_BASE/mintdump ./mintdump \ + # && go build -o $INSTALL_BASE/mintperms ./mintperms \ + # && go build -o $INSTALL_BASE/mintunsafe ./mintunsafe \ + # && go build -o $INSTALL_BASE/mintkey ./mintkey \ + # && go build -o $INSTALL_BASE/mintgen ./mintgen \ + # && go build -o $INSTALL_BASE/mintsync ./mintsync \ + +#WORKDIR $ERIS diff --git a/tests/build_tool.sh b/tests/build_tool.sh new file mode 100755 index 0000000000000000000000000000000000000000..60d97d026905c914c96e3e8c10e7d0d1f6fd2b6a --- /dev/null +++ b/tests/build_tool.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash +# ---------------------------------------------------------- +# PURPOSE + +# This is the build script for eris-db. It will build the +# tool into docker containers in a reliable and predicatable +# manner. + +# ---------------------------------------------------------- +# REQUIREMENTS + +# docker installed locally + +# ---------------------------------------------------------- +# USAGE + +# build_tool.sh + +# ---------------------------------------------------------- +# Set defaults +set -e +start=`pwd` +if [ "$CIRCLE_BRANCH" ] +then + repo=`pwd` +else + base=github.com/eris-ltd/eris-db + repo=$GOPATH/src/$base +fi +branch=${CIRCLE_BRANCH:=master} +branch=${branch/-/_} + +release_min=$(cat $repo/version/version.go | tail -n 1 | cut -d \ -f 4 | tr -d '"') +release_maj=$(echo $release_min | cut -d . -f 1-2) + +image_base=quay.io/eris/erisdb + +cd $repo + +if [[ "$branch" = "master" ]] +then + docker build -t $image_base:latest $repo + docker tag -f $image_base:latest $image_base:$release_maj + docker tag -f $image_base:latest $image_base:$release_min +else + docker build -t $image_base:$release_min $repo +fi +test_exit=$? +cd $start +exit $test_exit \ No newline at end of file