mirror of
https://github.com/fluencelabs/tendermint
synced 2025-05-01 17:42:16 +00:00
commit
cd24e92dcb
121
.circleci/config.yml
Normal file
121
.circleci/config.yml
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
version: 2
|
||||||
|
|
||||||
|
defaults: &defaults
|
||||||
|
working_directory: /go/src/github.com/tendermint/abci
|
||||||
|
docker:
|
||||||
|
- image: circleci/golang:1.10.0
|
||||||
|
environment:
|
||||||
|
GOBIN: /tmp/workspace/bin
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
setup_dependencies:
|
||||||
|
<<: *defaults
|
||||||
|
steps:
|
||||||
|
- run: mkdir -p /tmp/workspace/bin
|
||||||
|
- run: mkdir -p /tmp/workspace/profiles
|
||||||
|
- checkout
|
||||||
|
- restore_cache:
|
||||||
|
keys:
|
||||||
|
- v1-pkg-cache
|
||||||
|
- run:
|
||||||
|
name: tools
|
||||||
|
command: |
|
||||||
|
export PATH="$GOBIN:$PATH"
|
||||||
|
make get_tools
|
||||||
|
- run:
|
||||||
|
name: dependencies
|
||||||
|
command: |
|
||||||
|
export PATH="$GOBIN:$PATH"
|
||||||
|
make get_vendor_deps
|
||||||
|
- run:
|
||||||
|
name: binaries
|
||||||
|
command: |
|
||||||
|
export PATH="$GOBIN:$PATH"
|
||||||
|
make install
|
||||||
|
- persist_to_workspace:
|
||||||
|
root: /tmp/workspace
|
||||||
|
paths:
|
||||||
|
- bin
|
||||||
|
- profiles
|
||||||
|
- save_cache:
|
||||||
|
key: v1-pkg-cache
|
||||||
|
paths:
|
||||||
|
- /go/pkg
|
||||||
|
- save_cache:
|
||||||
|
key: v1-tree-{{ .Environment.CIRCLE_SHA1 }}
|
||||||
|
paths:
|
||||||
|
- /go/src/github.com/tendermint/abci
|
||||||
|
|
||||||
|
test_integration:
|
||||||
|
<<: *defaults
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: /tmp/workspace
|
||||||
|
- restore_cache:
|
||||||
|
key: v1-pkg-cache
|
||||||
|
- restore_cache:
|
||||||
|
key: v1-tree-{{ .Environment.CIRCLE_SHA1 }}
|
||||||
|
- run:
|
||||||
|
name: Run integration tests
|
||||||
|
command: |
|
||||||
|
find . -path ./vendor -prune -o -name "*.sock" -exec rm {} \;
|
||||||
|
bash tests/test.sh
|
||||||
|
|
||||||
|
test_cover:
|
||||||
|
<<: *defaults
|
||||||
|
parallelism: 4
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: /tmp/workspace
|
||||||
|
- restore_cache:
|
||||||
|
key: v1-pkg-cache
|
||||||
|
- restore_cache:
|
||||||
|
key: v1-tree-{{ .Environment.CIRCLE_SHA1 }}
|
||||||
|
- run:
|
||||||
|
name: Run test cover
|
||||||
|
command: |
|
||||||
|
for pkg in $(go list github.com/tendermint/abci/... | grep -v /vendor/ | circleci tests split --split-by=timings); do
|
||||||
|
id=$(basename "$pkg")
|
||||||
|
go test -timeout 5m -race -coverprofile=/tmp/workspace/profiles/$id.out -covermode=atomic "$pkg"
|
||||||
|
done
|
||||||
|
- persist_to_workspace:
|
||||||
|
root: /tmp/workspace
|
||||||
|
paths:
|
||||||
|
- "profiles/*"
|
||||||
|
|
||||||
|
upload_coverage:
|
||||||
|
<<: *defaults
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: /tmp/workspace
|
||||||
|
- restore_cache:
|
||||||
|
key: v1-tree-{{ .Environment.CIRCLE_SHA1 }}
|
||||||
|
- run:
|
||||||
|
name: gather
|
||||||
|
command: |
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
echo "mode: atomic" > coverage.txt
|
||||||
|
for prof in $(ls /tmp/workspace/profiles/); do
|
||||||
|
tail -n +2 /tmp/workspace/profiles/"$prof" >> coverage.txt
|
||||||
|
done
|
||||||
|
- run:
|
||||||
|
name: upload
|
||||||
|
command: bash <(curl -s https://codecov.io/bash) -f coverage.txt
|
||||||
|
|
||||||
|
workflows:
|
||||||
|
version: 2
|
||||||
|
test-suite:
|
||||||
|
jobs:
|
||||||
|
- setup_dependencies
|
||||||
|
- test_cover:
|
||||||
|
requires:
|
||||||
|
- setup_dependencies
|
||||||
|
- test_integration:
|
||||||
|
requires:
|
||||||
|
- setup_dependencies
|
||||||
|
- upload_coverage:
|
||||||
|
requires:
|
||||||
|
- test_integrations
|
||||||
|
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -3,3 +3,4 @@ vendor
|
|||||||
types/types.pb.go
|
types/types.pb.go
|
||||||
*.sw[op]
|
*.sw[op]
|
||||||
abci-cli
|
abci-cli
|
||||||
|
coverage.txt
|
||||||
|
21
circle.yml
21
circle.yml
@ -1,21 +0,0 @@
|
|||||||
machine:
|
|
||||||
environment:
|
|
||||||
GOPATH: /home/ubuntu/.go_workspace
|
|
||||||
REPO: $GOPATH/src/github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME
|
|
||||||
hosts:
|
|
||||||
circlehost: 127.0.0.1
|
|
||||||
localhost: 127.0.0.1
|
|
||||||
|
|
||||||
checkout:
|
|
||||||
post:
|
|
||||||
- rm -rf $REPO
|
|
||||||
- mkdir -p $HOME/.go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME
|
|
||||||
- mv $HOME/$CIRCLE_PROJECT_REPONAME $REPO
|
|
||||||
- go version
|
|
||||||
|
|
||||||
test:
|
|
||||||
override:
|
|
||||||
- cd $REPO && make get_tools check get_vendor_deps install test_integrations
|
|
||||||
post:
|
|
||||||
- cd "$REPO" && bash <(curl -s https://codecov.io/bash) -f coverage.txt
|
|
||||||
- cd "$REPO" && mv coverage.txt "${CIRCLE_ARTIFACTS}"
|
|
@ -1,5 +1,5 @@
|
|||||||
Specification
|
ABCI Specification
|
||||||
=============
|
==================
|
||||||
|
|
||||||
Message Types
|
Message Types
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
@ -228,6 +228,8 @@ CheckTx
|
|||||||
After ``Commit``, the mempool will rerun CheckTx on all remaining
|
After ``Commit``, the mempool will rerun CheckTx on all remaining
|
||||||
transactions, throwing out any that are no longer valid.
|
transactions, throwing out any that are no longer valid.
|
||||||
|
|
||||||
|
Keys and values in Tags must be UTF-8 encoded strings (e.g. "account.owner": "Bob", "balance": "100.0", "date": "2018-01-02")
|
||||||
|
|
||||||
|
|
||||||
DeliverTx
|
DeliverTx
|
||||||
^^^^^^^^^
|
^^^^^^^^^
|
||||||
@ -251,6 +253,7 @@ DeliverTx
|
|||||||
|
|
||||||
- Deliver a transaction to be executed in full by the application. If the transaction is valid,
|
- Deliver a transaction to be executed in full by the application. If the transaction is valid,
|
||||||
returns CodeType.OK.
|
returns CodeType.OK.
|
||||||
|
- Keys and values in Tags must be UTF-8 encoded strings (e.g. "account.owner": "Bob", "balance": "100.0", "time": "2018-01-02T12:30:00Z")
|
||||||
|
|
||||||
EndBlock
|
EndBlock
|
||||||
^^^^^^^^
|
^^^^^^^^
|
||||||
@ -284,3 +287,6 @@ Commit
|
|||||||
|
|
||||||
- Persist the application state.
|
- Persist the application state.
|
||||||
- Return a Merkle root hash of the application state.
|
- Return a Merkle root hash of the application state.
|
||||||
|
- It's critical that all application instances return the same hash. If not,
|
||||||
|
they will not be able to agree on the next block, because the hash is
|
||||||
|
included in the next block!
|
||||||
|
Loading…
x
Reference in New Issue
Block a user