Files
stacks-puppet-node/integration_tests/deployment/docker/Dockerfile.tests

58 lines
2.0 KiB
Docker

FROM ubuntu:xenial
# Install dependancies from apt
RUN apt-get -y update
RUN apt-get install -y python-pip python-dev libssl-dev libffi-dev rng-tools libgmp3-dev lsof
# Install Bitcoin
RUN apt-get -y update
RUN apt-get install -y python-software-properties
RUN apt-get install -y software-properties-common
RUN add-apt-repository ppa:bitcoin/bitcoin
RUN apt-get -y update
RUN apt-get install -y bitcoind sqlite3 curl
# Add standard username and password
RUN mkdir ~/.bitcoin
RUN echo "rpcuser=blockstack\nrpcpassword=blockstacksystem\nrpcbind=0.0.0.0\nrpcallowip=0.0.0.0/0\n" > ~/.bitcoin/bitcoin.conf
# Install NodeJS
RUN curl -sL https://deb.nodesource.com/setup_6.x | bash -
RUN apt-get install -y nodejs
# Install requirements for the blockstack.js integration tests
WORKDIR /src/
RUN apt-get install -y git
# RUN npm i -g browserify babel-cli
ADD https://api.github.com/repos/blockstack/blockstack.js/git/refs/heads/master blockstack-js-version.json
RUN git clone https://git@github.com/blockstack/blockstack.js.git
RUN cd blockstack.js && npm i && npm run build && npm ln
# Install requirements for running the transaction broadcaster service
ADD https://api.github.com/repos/blockstack/transaction-broadcaster/git/refs/heads/master broadcaster-version.json
RUN git clone https://git@github.com/blockstack/transaction-broadcaster.git
RUN cd transaction-broadcaster && npm i && npm ln blockstack && npm run build
# And requirements for running the subdomain registrar service
ADD https://api.github.com/repos/blockstack/subdomain-registrar/git/refs/heads/master subdomain-version.json
RUN git clone https://git@github.com/blockstack/subdomain-registrar.git
RUN cd subdomain-registrar && npm i && npm ln blockstack && npm run build
# Install pyparsing
RUN pip install pyparsing
# Build blockstack first
WORKDIR /src/blockstack
# Copy all files from the repo into the container
COPY . .
# Install Blockstack from source
RUN pip install .
# Change into the tests directory
WORKDIR /src/blockstack/integration_tests
RUN pip install .