Skip to content

Commit 0337442

Browse files
Merge pull request #102 from Remmeauth/r-0.5.1-alpha
R 0.5.1 alpha
2 parents 1c08c0b + 6e6574d commit 0337442

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+685
-177
lines changed

.github/PULL_REQUEST_TEMPLATE.md

+15
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,18 @@ Changes introduced in this pull request:
66
-
77
-
88
-
9+
10+
Linked repositories checklist:
11+
- remme-protobuf. Protocol buffer definitions used throughout the project.
12+
- remme-client-js. JS integration library.
13+
- remme-client-dotnet. .NET integration library.
14+
15+
If this pull request contains changes that affect ANY of those repositories, e.g.:
16+
17+
- Contains changes to Protocol Buffers files that should be merged;
18+
- Contains changes into transaction structure and/or inputs and outputs of
19+
transactions
20+
21+
this should be reported to the maintainers of corresponding repositories and this PR
22+
SHOULD NOT be merged until the maintainers confirm they can comply with those changes.
23+

CHANGELOG.md

+9
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
55
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
66

7+
## [0.5.1-alpha] - 2018-09-13
8+
### Changes
9+
- Batches submitted from REST API are now signed by the key of the validator (the same as the key for
10+
block signing). This is required for compatibility with the upcoming update of Sawtooth which will
11+
remove performance limitations for batches submitted with the validator key.
12+
- Versions of critical non-Python dependencies are now fixed.
13+
### Fixed
14+
- A couple of minor bugs in BlockInfo component.
15+
716
## [0.5.0-alpha] - 2018-08-24
817
### Added
918
- Access to additional blocks metadata (e.g. time) via REST API (with the help of Sawtooth BlockInfo transaction

Dockerfile

+9-10
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,15 @@
1313
# limitations under the License.
1414
# ------------------------------------------------------------------------
1515

16-
# TODO check if it works with a newer version of Debian
17-
FROM alpine:edge as build
18-
WORKDIR /root
19-
RUN apk --update --no-cache add rsync pkgconf build-base autoconf automake python3 protobuf libtool libffi-dev python3-dev zeromq-dev openssl-dev
20-
RUN pip3 install --upgrade pip
16+
FROM alpine:3.8 as base
17+
RUN apk --update --no-cache add --force python3=3.6.6-r0 libffi=3.2.1-r4 openssl=1.0.2o-r2 libzmq=4.2.3-r0
2118
RUN mkdir /install
2219
ENV PYTHONUSERBASE=/install
20+
WORKDIR /root
21+
22+
FROM base as build
23+
RUN apk --update --no-cache add rsync pkgconf build-base autoconf automake protobuf=3.5.2-r0 libtool=2.4.6-r5 libffi-dev=3.2.1-r4 python3-dev=3.6.6-r0 zeromq-dev=4.2.3-r0 openssl-dev=1.0.2o-r2
24+
RUN pip3 install --upgrade pip
2325
COPY ./requirements.txt .
2426
RUN pip3 install --user -r ./requirements.txt
2527
COPY ./remme/rest_api/swagger-index.patch .
@@ -33,13 +35,10 @@ RUN protoc -I=./remme/protos --python_out=./remme/remme/protos ./remme/protos/*.
3335
COPY ./setup.py ./remme
3436
RUN pip3 install --user ./remme
3537
COPY ./tests ./tests
36-
COPY ./bash /scripts
38+
COPY ./bash /install/scripts/
3739

38-
FROM alpine:edge as release
39-
RUN apk --update --no-cache add --force python3 libffi openssl libzmq
40+
FROM base as release
4041
COPY --from=build /install /install
41-
ENV PYTHONUSERBASE=/install
42-
COPY ./bash /scripts
4342

4443
FROM hyperledger/sawtooth-validator:1.0.5 as validator
4544
COPY ./bash /scripts

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ run_dev: build
3434
docker-compose -f docker-compose/base.yml -f docker-compose/genesis.yml --project-name remme up
3535

3636
run_docs:
37-
docker-compose -f docker-compose/docs.yml up --build
37+
sphinx-build -b html docs html
3838

3939
test:
4040
docker build --target build -t remme/remme-core-dev:latest .

bash/genesis.sh

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
if [ "$REMME_START_MODE" = "genesis" ]; then
2-
if [ ! -f /root/.sawtooth/keys/key.priv ]; then
3-
sawtooth keygen key
4-
fi
52
if [ ! -e /genesis/batch ]; then
63
mkdir /genesis/batch
74
fi
85
python3 -m remme.genesis
9-
fi
6+
fi

docker-compose/base.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ services:
2020
container_name: remme_validator
2121
image: remme/sawtooth-validator:1.0.5
2222
volumes:
23-
- validator_keys:/etc/sawtooth/keys
23+
- user_keys:/etc/sawtooth/keys
2424
- chain_data:/var/lib/sawtooth/
2525
- ../config/remme-genesis-config.toml:/config/remme-genesis-config.toml
2626
- ../config/sawtooth-validator-config.toml:/etc/sawtooth/validator.toml
@@ -74,13 +74,12 @@ services:
7474
image: remme/remme-core:latest
7575
network_mode: "service:validator"
7676
volumes:
77-
- user_keys:/root/.sawtooth/keys
77+
- user_keys:/etc/sawtooth/keys
7878
- ${REMME_CONTAINER_EXPORTS_FOLDER:-./default_export}:/root/usr/share
7979
- ../config/remme-client-config.toml:/config/remme-client-config.toml
8080
- ../config/remme-rest-api.toml:/config/remme-rest-api.toml
8181
entrypoint: python3 -m remme.rest_api
8282

8383
volumes:
8484
user_keys:
85-
validator_keys:
8685
chain_data:

docker-compose/docs.yml

-31
This file was deleted.

docker-compose/genesis.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,20 @@ services:
2121
- remme-genesis
2222
volumes:
2323
- genesis_data:/genesis/batch
24-
- user_keys:/root/.sawtooth/keys
2524
environment:
2625
- REMME_START_MODE=genesis
2726

2827
remme-genesis:
2928
container_name: remme_genesis
3029
image: remme/remme-core:latest
3130
volumes:
32-
- user_keys:/root/.sawtooth/keys
31+
- user_keys:/etc/sawtooth/keys
3332
- genesis_data:/genesis/batch
3433
- ../config/remme-client-config.toml:/config/remme-client-config.toml
3534
- ../config/remme-genesis-config.toml:/config/remme-genesis-config.toml
3635
environment:
3736
- REMME_START_MODE=genesis
38-
command: sh /scripts/genesis.sh
37+
command: sh /install/scripts/genesis.sh
3938

4039
volumes:
4140
genesis_data:
Loading
32.2 KB
Loading
119 KB
Loading
23.2 KB
Loading
61.3 KB
Loading
70.8 KB
Loading
115 KB
Loading
46.6 KB
Loading
54.7 KB
Loading

docs/img/web-auth/remme-login-2.png

26.6 KB
Loading
71.2 KB
Loading
Loading
253 KB
Loading
37.9 KB
Loading
72.9 KB
Loading
Loading
20.8 KB
Loading
12.3 KB
Loading

docs/index.rst

+9-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,14 @@ Welcome to REMME's documentation!
88
.. toctree::
99
:maxdepth: 2
1010

11-
README
11+
remme-launch
12+
13+
.. toctree::
14+
:maxdepth: 2
15+
:caption: Use cases:
16+
17+
use-case-web-auth
18+
1219

1320
.. toctree::
1421
:maxdepth: 2
@@ -19,6 +26,7 @@ Welcome to REMME's documentation!
1926
remme-framework
2027
remme-client
2128
remme-ws
29+
remme-ws-events
2230
generated/modules
2331

2432
.. toctree::

docs/remme-launch.rst

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
************
2+
Introduction
3+
************
4+
5+
Overview
6+
========
7+
8+
REMchain - a multi-purpose blockchain service allowing one to store certificate's hash and other important data for verification purposes.
9+
10+
REMME uses python framework Sawtooth by Hyperledger to develop business logic on top of it. A custom consensus is planned to be implemented using Rust language.
11+
The node at its services are wrapped in **Docker containers** and may be run in "one-click".
12+
13+
In order to interact with the node, JS client is provided that uses ES6 standard.
14+
15+
How to run Production version
16+
=============================
17+
18+
1. Download the latest release from Releases section (<version_number>-release.zip). Unpack it.
19+
20+
2. Start node: Open a terminal inside the unpacked folder and run ./run.sh.
21+
22+
3. You can now use our REST API. By default, it is started on http://localhost:8080. Fancy Swagger UI with documentation is available on http://localhost:8080/api/v1/ui. The API port can be changed in config/network-config.env file.
23+
24+
How to run Development version
25+
==============================
26+
27+
1. Clone this repository to your machine: git clone https://github.com/Remmeauth/remme-core.git
28+
29+
2. This project uses git submodules. To initialize them run `git submodule init` and then `git submodule update --init`. Also, git submodule update is required after every pull from the repository.
30+
31+
3. Run `make run_dev`.
32+
33+
Technical Requirement
34+
=====================
35+
36+
* Docker (>= 18.0.0)
37+
38+
* Unix system (MacOS, Linux etc.)
39+
40+
* At least 2GB hard drive storage available
41+
42+
* At least 1GB RAM
43+
44+
* Machine's time settings are up to date

0 commit comments

Comments
 (0)