Run python e2e tests in the pipeline
This commit is contained in:
parent
c421453621
commit
98933a6f86
2 changed files with 49 additions and 10 deletions
|
|
@ -6,9 +6,10 @@ include:
|
||||||
- template: Secret-Detection.gitlab-ci.yml
|
- template: Secret-Detection.gitlab-ci.yml
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- build
|
|
||||||
- test
|
|
||||||
- dockerize
|
- dockerize
|
||||||
|
- build
|
||||||
|
- python-test
|
||||||
|
- test
|
||||||
|
|
||||||
build-mainnet:
|
build-mainnet:
|
||||||
stage: build
|
stage: build
|
||||||
|
|
@ -49,18 +50,52 @@ dockerize-mainnet:
|
||||||
before_script:
|
before_script:
|
||||||
- docker info
|
- docker info
|
||||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||||
|
- df -BM $pwd
|
||||||
script:
|
script:
|
||||||
|
- docker images
|
||||||
|
- docker builder prune -a -f
|
||||||
- docker build --no-cache -t $IMAGE .
|
- docker build --no-cache -t $IMAGE .
|
||||||
|
- docker images
|
||||||
- docker push $IMAGE
|
- docker push $IMAGE
|
||||||
after_script:
|
after_script:
|
||||||
- docker rmi $IMAGE
|
- docker rmi $IMAGE
|
||||||
|
- docker images
|
||||||
tags:
|
tags:
|
||||||
- builder
|
- builder
|
||||||
when:
|
|
||||||
manual
|
|
||||||
timeout:
|
timeout:
|
||||||
3h
|
3h
|
||||||
|
|
||||||
|
test-e2e:
|
||||||
|
stage: python-test
|
||||||
|
variables:
|
||||||
|
IMAGE: $CI_REGISTRY_IMAGE/mainnet/$CI_COMMIT_REF_SLUG:$CI_COMMIT_SHA
|
||||||
|
dependencies:
|
||||||
|
- dockerize-mainnet
|
||||||
|
before_script:
|
||||||
|
- docker info
|
||||||
|
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||||
|
script:
|
||||||
|
- git clone https://gitlab.com/PBSA/tools-libs/peerplays-utils.git
|
||||||
|
- cd peerplays-utils/peerplays-qa-environment
|
||||||
|
- cd e2e-tests/
|
||||||
|
- python3 -m venv venv
|
||||||
|
- source venv/bin/activate
|
||||||
|
- pip3 install -r requirements.txt
|
||||||
|
- docker ps -a
|
||||||
|
- python3 main.py --stop
|
||||||
|
- docker ps -a
|
||||||
|
- python3 main.py --start btc hive
|
||||||
|
- docker ps -a
|
||||||
|
- python3 -m pytest test_btc_init_state.py test_hive_inital_state.py
|
||||||
|
- docker pull $IMAGE
|
||||||
|
- docker run -d peerplays-utils/peerplays-qa-environment/peerplays/config.ini:/home/peerplays/peerplays-network/witness_node_data_dir/config.ini -v peerplays-utils/peerplays-qa-environment/peerplays/genesis.json:/home/peerplays/peerplays-network/genensis.json -v peerplays-utils/peerplays-qa-environment/peerplays/init_network.sh:/home/peerplays/peerplays-network/init_network.sh $IMAGE
|
||||||
|
- docker ps -a
|
||||||
|
- ./main.py --stop
|
||||||
|
- deactivate
|
||||||
|
- docker ps -a
|
||||||
|
tags:
|
||||||
|
- python-tests
|
||||||
|
|
||||||
build-testnet:
|
build-testnet:
|
||||||
stage: build
|
stage: build
|
||||||
script:
|
script:
|
||||||
|
|
|
||||||
16
Dockerfile
16
Dockerfile
|
|
@ -50,8 +50,14 @@ RUN echo 'peerplays:peerplays' | chpasswd
|
||||||
# SSH
|
# SSH
|
||||||
EXPOSE 22
|
EXPOSE 22
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
df -h -BM $pwd
|
||||||
|
|
||||||
WORKDIR /home/peerplays/src
|
WORKDIR /home/peerplays/src
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
df -h -BM $pwd
|
||||||
|
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
# Boost setup
|
# Boost setup
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
|
|
@ -133,6 +139,9 @@ RUN \
|
||||||
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||||
libsodium-dev
|
libsodium-dev
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
df -h -BM $pwd
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
git clone https://github.com/libbitcoin/libbitcoin-build.git && \
|
git clone https://github.com/libbitcoin/libbitcoin-build.git && \
|
||||||
cd libbitcoin-build && \
|
cd libbitcoin-build && \
|
||||||
|
|
@ -190,11 +199,9 @@ ADD . peerplays
|
||||||
RUN \
|
RUN \
|
||||||
cd peerplays && \
|
cd peerplays && \
|
||||||
git submodule update --init --recursive && \
|
git submodule update --init --recursive && \
|
||||||
git symbolic-ref --short HEAD && \
|
|
||||||
git log --oneline -n 5 && \
|
|
||||||
mkdir build && \
|
mkdir build && \
|
||||||
cd build && \
|
cd build && \
|
||||||
cmake -DCMAKE_BUILD_TYPE=Release ..
|
cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_PEERPLAYS_TESTNET=1 ..
|
||||||
|
|
||||||
# Build Peerplays
|
# Build Peerplays
|
||||||
RUN \
|
RUN \
|
||||||
|
|
@ -208,9 +215,6 @@ RUN \
|
||||||
ln -s /home/peerplays/src/peerplays/build/programs/cli_wallet/cli_wallet ./ && \
|
ln -s /home/peerplays/src/peerplays/build/programs/cli_wallet/cli_wallet ./ && \
|
||||||
ln -s /home/peerplays/src/peerplays/build/programs/witness_node/witness_node ./
|
ln -s /home/peerplays/src/peerplays/build/programs/witness_node/witness_node ./
|
||||||
|
|
||||||
RUN ./witness_node --create-genesis-json genesis.json && \
|
|
||||||
rm genesis.json
|
|
||||||
|
|
||||||
RUN chown peerplays:root -R /home/peerplays/peerplays-network
|
RUN chown peerplays:root -R /home/peerplays/peerplays-network
|
||||||
|
|
||||||
# Peerplays RPC
|
# Peerplays RPC
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue