Release 0.7.3pull/311/head v0.7.3
@ -0,0 +1,57 @@ | |||
# Install Go | |||
[Install Go, set the `GOPATH`, and put `GOPATH/bin` on your `PATH`](https://github.com/tendermint/tendermint/wiki/Setting-GOPATH). | |||
# Install Tendermint | |||
You should be able to install the latest with a simple `go get -u github.com/tendermint/tendermint/cmd/tendermint`. | |||
The `-u` makes sure all dependencies are updated as well. | |||
Run `tendermint version` and `tendermint --help`. | |||
If the install falied, see [vendored dependencies below](#vendored-dependencies). | |||
To start a one-node blockchain with a simple in-process application: | |||
``` | |||
tendermint init | |||
tendermint node --proxy_app=dummy | |||
``` | |||
See the [application developers guide](https://github.com/tendermint/tendermint/wiki/Application-Developers) for more details on building and running applications. | |||
## Vendored dependencies | |||
If the `go get` failed, updated dependencies may have broken the build. | |||
Install the correct version of each dependency using `glide`. | |||
Fist, install `glide`: | |||
``` | |||
go get github.com/Masterminds/glide | |||
``` | |||
Now, fetch the dependencies and install them with `glide` and `go`: | |||
``` | |||
cd $GOPATH/src/github.com/tendermint/tendermint | |||
glide install | |||
go install ./cmd/tendermint | |||
``` | |||
Sometimes `glide install` is painfully slow. Hang in there champ. | |||
The latest Tendermint Core version is now installed. Check by running `tendermint version`. | |||
## Troubleshooting | |||
If `go get` failing bothers you, fetch the code using `git`: | |||
``` | |||
mkdir -p $GOPATH/src/github.com/tendermint | |||
git clone https://github.com/tendermint/tendermint $GOPATH/src/github.com/tendermint/tendermint | |||
cd $GOPATH/src/github.com/tendermint/tendermint | |||
glide install | |||
go install ./cmd/tendermint | |||
``` |
@ -1,21 +0,0 @@ | |||
1. Fork github.com/tendermint/tendermint. | |||
2. Run "make", it should install the daemon, which we named "tendermint". | |||
3. Run "tendermint gen_account". Save the address, pub_key bytes, and priv_key bytes. | |||
This is your developer key for controlling the cloud nodes. | |||
4. Also run "tendermint gen_validator" 5 times, once for each cloud node. Save the output. | |||
5. Create a directory ~/.debora/ and copy cmd/debora/default.cfg into ~/.debora/default.cfg | |||
Copy the priv_key bytes from step 4 into ~/.debora/default.cfg where it says so. | |||
Change the list of hosts in ~/.debora/default.cfg with your own set of 5 cloud nodes. | |||
6. Replace cmd/barak/seed's pubkey with the pub_key bytes from step 3. | |||
7. Update config/tendermint/config.go's genesis with validator pubkeys from step 4. | |||
Give each of your nodes the same amount of voting power. | |||
Set up the accounts however you want. | |||
8. On each cloud node, follow the instructions here: https://github.com/tendermint/tendermint/tree/master/INSTALL | |||
Create tmuser, install go, and also install 'barak'. | |||
Then, run `barak -config="cmd/barak/seed"`. | |||
You don't need to start the node at this time. | |||
9. Now you can run "debora list" on your development machine and post commands to each cloud node. | |||
10. Run scripts/unsafe_upgrade_barak.sh to test that barak is running. | |||
The old barak you started on step 8 should now have quit. | |||
A new instance of barak should be running. Check with `ps -ef | grep "barak"` | |||
11. Run scripts/unsafe_restart_net.sh start your new testnet. |
@ -1,30 +0,0 @@ | |||
NOTE: Only Ubuntu 14.04 64bit is supported at this time. | |||
### Server setup / create `tmuser` | |||
Secure the server, install dependencies, and create a new user `tmuser` | |||
curl -L https://raw.githubusercontent.com/tendermint/tendermint/master/INSTALL/install_env.sh > install_env.sh | |||
source install_env.sh | |||
cd /home/tmuser | |||
### Install Go as `tmuser` | |||
Don't use `apt-get install golang`, it's still on an old version. | |||
curl -L https://raw.githubusercontent.com/tendermint/tendermint/master/INSTALL/install_golang.sh > install_golang.sh | |||
source install_golang.sh | |||
### Run Barak | |||
WARNING: THIS STEP WILL GIVE CONTROL OF THE CURRENT USER TO THE DEV TEAM. | |||
go get -u github.com/tendermint/tendermint/cmd/barak | |||
nohup barak -config="$GOPATH/src/github.com/tendermint/tendermint/cmd/barak/seed" & | |||
### Install/Update MintDB | |||
go get -u github.com/tendermint/tendermint/cmd/tendermint | |||
mkdir -p ~/.tendermint | |||
cp $GOPATH/src/github.com/tendermint/tendermint/config/tendermint/genesis.json ~/.tendermint/ | |||
tendermint node --seeds="goldenalchemist.chaintest.net:46656" |
@ -1,63 +0,0 @@ | |||
#!/bin/bash | |||
# Run this as root user | |||
# This part is for hardening the server and setting up a user account | |||
if [ `whoami` != "root" ]; | |||
then | |||
echo "You must run this script as root" | |||
exit 1 | |||
fi | |||
USER="tmuser" | |||
OPEN_PORTS=(46656 46657 46658 46659 46660 46661 46662 46663 46664 46665 46666 46667 46668 46669 46670 46671) | |||
SSH_PORT=22 | |||
WHITELIST=() | |||
# update and upgrade | |||
apt-get update -y | |||
apt-get upgrade -y | |||
# fail2ban for monitoring logins | |||
apt-get install -y fail2ban | |||
# set up the network time daemon | |||
apt-get install -y ntp | |||
# install dependencies | |||
apt-get install -y make screen gcc git mercurial libc6-dev pkg-config libgmp-dev | |||
# set up firewall | |||
echo "ENABLE FIREWALL ..." | |||
set -x | |||
# white list ssh access | |||
for ip in "${WHITELIST[@]}"; do | |||
ufw allow from $ip to any port $SSH_PORT | |||
done | |||
if [ ${#WHITELIST[@]} -eq 0 ]; then | |||
ufw allow $SSH_PORT | |||
fi | |||
# open ports | |||
for port in "${OPEN_PORTS[@]}"; do | |||
ufw allow $port | |||
done | |||
# apply | |||
ufw --force enable | |||
set +x | |||
# set up firewall END | |||
# watch the logs and have them emailed to me | |||
# apt-get install -y logwatch | |||
# echo "/usr/sbin/logwatch --output mail --mailto $ADMIN_EMAIL --detail high" >> /etc/cron.daily/00logwatch | |||
# set up user account | |||
echo "CREATE USER $USER ..." | |||
useradd $USER -d /home/$USER | |||
# This user should not have root access. | |||
# usermod -aG sudo $USER | |||
mkdir /home/$USER | |||
cp /etc/skel/.bashrc . | |||
cp /etc/skel/.profile . | |||
chown -R $USER:$USER /home/$USER | |||
echo "Done setting env. Switching to $USER..." | |||
su $USER |
@ -1,29 +0,0 @@ | |||
#!/bin/bash | |||
# Run this as tmuser user | |||
# This part is for installing go | |||
if [ `whoami` == "root" ]; | |||
then | |||
echo "You should not run this script as root" | |||
exit 1 | |||
fi | |||
USER=`whoami` | |||
PWD=`pwd` | |||
# get dependencies | |||
# sudo apt-get install -y make screen gcc git mercurial libc6-dev pkg-config libgmp-dev | |||
# install golang | |||
cd /home/$USER | |||
mkdir gocode | |||
wget https://storage.googleapis.com/golang/go1.4.2.src.tar.gz | |||
tar -xzvf go*.tar.gz | |||
cd go/src | |||
./make.bash | |||
mkdir -p /home/$USER/go/src | |||
echo 'export GOROOT=/home/$USER/go' >> /home/$USER/.bashrc | |||
echo 'export GOPATH=/home/$USER/gocode' >> /home/$USER/.bashrc | |||
echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> /home/$USER/.bashrc | |||
source /home/$USER/.bashrc | |||
cd $PWD |
@ -1,14 +1,14 @@ | |||
package consensus | |||
import ( | |||
"github.com/tendermint/go-events" | |||
"github.com/tendermint/tendermint/types" | |||
) | |||
// NOTE: this is blocking | |||
func subscribeToEvent(evsw *events.EventSwitch, receiver, eventID string, chanCap int) chan interface{} { | |||
func subscribeToEvent(evsw types.EventSwitch, receiver, eventID string, chanCap int) chan interface{} { | |||
// listen for new round | |||
ch := make(chan interface{}, chanCap) | |||
evsw.AddListenerForEvent(receiver, eventID, func(data events.EventData) { | |||
types.AddListenerForEvent(evsw, receiver, eventID, func(data types.TMEventData) { | |||
ch <- data | |||
}) | |||
return ch | |||
@ -0,0 +1,36 @@ | |||
# Generating test data | |||
The easiest way to generate this data is to copy `~/.tendermint_test/somedir/*` to `~/.tendermint` | |||
and to run a local node. | |||
Be sure to set the db to "leveldb" to create a cswal file in `~/.tendermint/data/cswal`. | |||
If you need to change the signatures, you can use a script as follows: | |||
The privBytes comes from `config/tendermint_test/...`: | |||
``` | |||
package main | |||
import ( | |||
"encoding/hex" | |||
"fmt" | |||
"github.com/tendermint/go-crypto" | |||
) | |||
func main() { | |||
signBytes, err := hex.DecodeString("7B22636861696E5F6964223A2274656E6465726D696E745F74657374222C22766F7465223A7B22626C6F636B5F68617368223A2242453544373939433846353044354645383533364334333932464443384537423342313830373638222C22626C6F636B5F70617274735F686561646572223A506172745365747B543A31204236323237323535464632307D2C22686569676874223A312C22726F756E64223A302C2274797065223A327D7D") | |||
if err != nil { | |||
panic(err) | |||
} | |||
privBytes, err := hex.DecodeString("27F82582AEFAE7AB151CFB01C48BB6C1A0DA78F9BDDA979A9F70A84D074EB07D3B3069C422E19688B45CBFAE7BB009FC0FA1B1EA86593519318B7214853803C8") | |||
if err != nil { | |||
panic(err) | |||
} | |||
privKey := crypto.PrivKeyEd25519{} | |||
copy(privKey[:], privBytes) | |||
signature := privKey.Sign(signBytes) | |||
signatureEd25519 := signature.(crypto.SignatureEd25519) | |||
fmt.Printf("Signature Bytes: %X\n", signatureEd25519[:]) | |||
} | |||
``` | |||
@ -0,0 +1,8 @@ | |||
{"time":"2016-04-03T11:23:54.387Z","msg":[3,{"duration":972835254,"height":1,"round":0,"step":1}]} | |||
{"time":"2016-04-03T11:23:54.388Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPropose"}]} | |||
{"time":"2016-04-03T11:23:54.388Z","msg":[2,{"msg":[17,{"Proposal":{"height":1,"round":0,"block_parts_header":{"total":1,"hash":"3BA1E90CB868DA6B4FD7F3589826EC461E9EB4EF"},"pol_round":-1,"signature":"3A2ECD5023B21EC144EC16CFF1B992A4321317B83EEDD8969FDFEA6EB7BF4389F38DDA3E7BB109D63A07491C16277A197B241CF1F05F5E485C59882ECACD9E07"}}],"peer_key":""}]} | |||
{"time":"2016-04-03T11:23:54.389Z","msg":[2,{"msg":[19,{"Height":1,"Round":0,"Part":{"index":0,"bytes":"0101010F74656E6465726D696E745F7465737401011441D59F4B718AC00000000000000114C4B01D3810579550997AC5641E759E20D99B51C10001000100","proof":{"aunts":[]}}}],"peer_key":""}]} | |||
{"time":"2016-04-03T11:23:54.390Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPrevote"}]} | |||
{"time":"2016-04-03T11:23:54.390Z","msg":[2,{"msg":[20,{"ValidatorIndex":0,"Vote":{"height":1,"round":0,"type":1,"block_hash":"4291966B8A9DFBA00AEC7C700F2718E61DF4331D","block_parts_header":{"total":1,"hash":"3BA1E90CB868DA6B4FD7F3589826EC461E9EB4EF"},"signature":"47D2A75A4E2F15DB1F0D1B656AC0637AF9AADDFEB6A156874F6553C73895E5D5DC948DBAEF15E61276C5342D0E638DFCB77C971CD282096EA8735A564A90F008"}}],"peer_key":""}]} | |||
{"time":"2016-04-03T11:23:54.392Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPrecommit"}]} | |||
{"time":"2016-04-03T11:23:54.392Z","msg":[2,{"msg":[20,{"ValidatorIndex":0,"Vote":{"height":1,"round":0,"type":2,"block_hash":"4291966B8A9DFBA00AEC7C700F2718E61DF4331D","block_parts_header":{"total":1,"hash":"3BA1E90CB868DA6B4FD7F3589826EC461E9EB4EF"},"signature":"39147DA595F08B73CF8C899967C8403B5872FD9042FFA4E239159E0B6C5D9665C9CA81D766EACA2AE658872F94C2FCD1E34BF51859CD5B274DA8512BACE4B50D"}}],"peer_key":""}]} |
@ -0,0 +1,8 @@ | |||
{"time":"2016-10-11T15:29:08.113Z","msg":[3,{"duration":0,"height":1,"round":0,"step":1}]} | |||
{"time":"2016-10-11T15:29:08.115Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPropose"}]} | |||
{"time":"2016-10-11T15:29:08.115Z","msg":[2,{"msg":[17,{"Proposal":{"height":1,"round":0,"block_parts_header":{"total":1,"hash":"A2C0B5D384DFF2692FF679D00CEAE93A55DCDD1A"},"pol_round":-1,"signature":"116961B715FB54C09983209F7F3BFD95C7DA2E0D7AB9CFE9F0750F2402E2AEB715CFD55FB2C5DB88F485391D426A48705E0474AB94328463290D086D88BAD704"}}],"peer_key":""}]} | |||
{"time":"2016-10-11T15:29:08.116Z","msg":[2,{"msg":[19,{"Height":1,"Round":0,"Part":{"index":0,"bytes":"0101010F74656E6465726D696E745F746573740101147C83D983CBE6400185000000000114CA4CC7A87B85A9FB7DBFEF8A342B66DF2B03CFB30114C4B01D3810579550997AC5641E759E20D99B51C100010185010F616263643234353D64636261323435010F616263643234363D64636261323436010F616263643234373D64636261323437010F616263643234383D64636261323438010F616263643234393D64636261323439010F616263643235303D64636261323530010F616263643235313D64636261323531010F616263643235323D64636261323532010F616263643235333D64636261323533010F616263643235343D64636261323534010F616263643235353D64636261323535010F616263643235363D64636261323536010F616263643235373D64636261323537010F616263643235383D64636261323538010F616263643235393D64636261323539010F616263643236303D64636261323630010F616263643236313D64636261323631010F616263643236323D64636261323632010F616263643236333D64636261323633010F616263643236343D64636261323634010F616263643236353D64636261323635010F616263643236363D64636261323636010F616263643236373D64636261323637010F616263643236383D64636261323638010F616263643236393D64636261323639010F616263643237303D64636261323730010F616263643237313D64636261323731010F616263643237323D64636261323732010F616263643237333D64636261323733010F616263643237343D64636261323734010F616263643237353D64636261323735010F616263643237363D64636261323736010F616263643237373D64636261323737010F616263643237383D64636261323738010F616263643237393D64636261323739010F616263643238303D64636261323830010F616263643238313D64636261323831010F616263643238323D64636261323832010F616263643238333D64636261323833010F616263643238343D64636261323834010F616263643238353D64636261323835010F616263643238363D64636261323836010F616263643238373D64636261323837010F616263643238383D64636261323838010F616263643238393D64636261323839010F616263643239303D64636261323930010F616263643239313D64636261323931010F616263643239323D64636261323932010F616263643239333D64636261323933010F616263643239343D64636261323934010F616263643239353D64636261323935010F616263643239363D64636261323936010F616263643239373D64636261323937010F616263643239383D64636261323938010F616263643239393D64636261323939010F616263643330303D64636261333030010F616263643330313D64636261333031010F616263643330323D64636261333032010F616263643330333D64636261333033010F616263643330343D64636261333034010F616263643330353D64636261333035010F616263643330363D64636261333036010F616263643330373D64636261333037010F616263643330383D64636261333038010F616263643330393D64636261333039010F616263643331303D64636261333130010F616263643331313D64636261333131010F616263643331323D64636261333132010F616263643331333D64636261333133010F616263643331343D64636261333134010F616263643331353D64636261333135010F616263643331363D64636261333136010F616263643331373D64636261333137010F616263643331383D64636261333138010F616263643331393D64636261333139010F616263643332303D64636261333230010F616263643332313D64636261333231010F616263643332323D64636261333232010F616263643332333D64636261333233010F616263643332343D64636261333234010F616263643332353D64636261333235010F616263643332363D64636261333236010F616263643332373D64636261333237010F616263643332383D64636261333238010F616263643332393D64636261333239010F616263643333303D64636261333330010F616263643333313D64636261333331010F616263643333323D64636261333332010F616263643333333D64636261333333010F616263643333343D64636261333334010F616263643333353D64636261333335010F616263643333363D64636261333336010F616263643333373D64636261333337010F616263643333383D64636261333338010F616263643333393D64636261333339010F616263643334303D64636261333430010F616263643334313D64636261333431010F616263643334323D64636261333432010F616263643334333D64636261333433010F616263643334343D64636261333434010F616263643334353D64636261333435010F616263643334363D64636261333436010F616263643334373D64636261333437010F616263643334383D64636261333438010F616263643334393D64636261333439010F616263643335303D64636261333530010F616263643335313D64636261333531010F616263643335323D64636261333532010F616263643335333D64636261333533010F616263643335343D64636261333534010F616263643335353D64636261333535010F616263643335363D64636261333536010F616263643335373D64636261333537010F616263643335383D64636261333538010F616263643335393D64636261333539010F616263643336303D64636261333630010F616263643336313D64636261333631010F616263643336323D64636261333632010F616263643336333D64636261333633010F616263643336343D64636261333634010F616263643336353D64636261333635010F616263643336363D64636261333636010F616263643336373D64636261333637010F616263643336383D64636261333638010F616263643336393D64636261333639010F616263643337303D64636261333730010F616263643337313D64636261333731010F616263643337323D64636261333732010F616263643337333D64636261333733010F616263643337343D64636261333734010F616263643337353D64636261333735010F616263643337363D64636261333736010F616263643337373D646362613337370100","proof":{"aunts":[]}}}],"peer_key":""}]} | |||
{"time":"2016-10-11T15:29:08.117Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPrevote"}]} | |||
{"time":"2016-10-11T15:29:08.117Z","msg":[2,{"msg":[20,{"ValidatorIndex":0,"Vote":{"height":1,"round":0,"type":1,"block_hash":"FB2F51D0C6D25AD8D4ED9C33DF145E358D414A79","block_parts_header":{"total":1,"hash":"A2C0B5D384DFF2692FF679D00CEAE93A55DCDD1A"},"signature":"9BA7F5DEF2CE51CDF078DE42E3BB74D6DB6BC84767F212A88D34B3393E5915A4DC0E6C478E1C955E099617800722582E4D90AB1AC293EE5C19BC1FCC04C3CA05"}}],"peer_key":""}]} | |||
{"time":"2016-10-11T15:29:08.118Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPrecommit"}]} | |||
{"time":"2016-10-11T15:29:08.118Z","msg":[2,{"msg":[20,{"ValidatorIndex":0,"Vote":{"height":1,"round":0,"type":2,"block_hash":"FB2F51D0C6D25AD8D4ED9C33DF145E358D414A79","block_parts_header":{"total":1,"hash":"A2C0B5D384DFF2692FF679D00CEAE93A55DCDD1A"},"signature":"9DA197CC1D7D0463FF211FB55EA12B3B0647B319E0011308C7AC3FB36E66688B4AC92EA51BD7B055814F9E4E6AB97B1AD0891EDAC42B47877100770FF467BF0A"}}],"peer_key":""}]} |
@ -0,0 +1,10 @@ | |||
{"time":"2016-10-11T16:21:23.438Z","msg":[3,{"duration":0,"height":1,"round":0,"step":1}]} | |||
{"time":"2016-10-11T16:21:23.440Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPropose"}]} | |||
{"time":"2016-10-11T16:21:23.440Z","msg":[2,{"msg":[17,{"Proposal":{"height":1,"round":0,"block_parts_header":{"total":3,"hash":"88BC082C86DED0A5E2BBC3677B610D155FEDBCEA"},"pol_round":-1,"signature":"8F74F7032E50DFBC17E8B42DD15FD54858B45EEB1B8DAF6432AFBBB1333AC1E850290DE82DF613A10430EB723023527498D45C106FD2946FEF03A9C8B301020B"}}],"peer_key":""}]} | |||
{"time":"2016-10-11T16:21:23.440Z","msg":[2,{"msg":[19,{"Height":1,"Round":0,"Part":{"index":0,"bytes":"0101010F74656E6465726D696E745F746573740101147C86B383BAB78001A60000000001148A3835062BB5E79BE490FAB65168D69BD716AD530114C4B01D3810579550997AC5641E759E20D99B51C1000101A6010F616263643139363D64636261313936010F616263643139373D64636261313937010F616263643139383D64636261313938010F616263643139393D64636261313939010F616263643230303D64636261323030010F616263643230313D64636261323031010F616263643230323D64636261323032010F616263643230333D64636261323033010F616263643230343D64636261323034010F616263643230353D64636261323035010F616263643230363D64636261323036010F616263643230373D64636261323037010F616263643230383D64636261323038010F616263643230393D64636261323039010F616263643231303D64636261323130010F616263643231313D64636261323131010F616263643231323D64636261323132010F616263643231333D64636261323133010F616263643231343D64636261323134010F616263643231353D64636261323135010F616263643231363D64636261323136010F616263643231373D64636261323137010F616263643231383D64636261323138010F616263643231393D64636261323139010F616263643232303D64636261323230010F616263643232313D64636261323231010F616263643232323D64636261323232010F616263643232333D64636261323233010F616263643232343D64636261323234010F616263643232353D64636261323235010F616263643232363D64636261323236010F616263643232373D64636261323237010F616263643232383D64636261323238010F616263643232393D64636261323239010F616263643233303D64636261323330010F616263643233313D64636261323331010F616263643233323D64636261323332010F616263643233333D64636261323333010F616263643233343D64636261323334010F616263643233353D64636261323335010F616263643233363D64636261323336010F616263643233373D64636261323337010F616263643233383D64636261323338010F616263643233393D64636261323339010F616263643234303D64636261323430010F616263643234313D64636261323431010F616263643234323D64636261323432010F616263643234333D64636261323433010F616263643234343D64636261323434010F616263643234353D64636261323435010F616263643234363D64636261323436010F616263643234373D64636261323437010F616263643234383D64636261323438010F616263643234393D64636261323439010F616263643235303D64636261323530010F61626364","proof":{"aunts":["22516491F7E1B5ADD8F12B309E9E8F6F04C034AB","C65A9589F377F2B6CF44B9BAFEBB535DF3C3A4FB"]}}}],"peer_key":""}]} | |||
{"time":"2016-10-11T16:21:23.441Z","msg":[2,{"msg":[19,{"Height":1,"Round":0,"Part":{"index":1,"bytes":"3235313D64636261323531010F616263643235323D64636261323532010F616263643235333D64636261323533010F616263643235343D64636261323534010F616263643235353D64636261323535010F616263643235363D64636261323536010F616263643235373D64636261323537010F616263643235383D64636261323538010F616263643235393D64636261323539010F616263643236303D64636261323630010F616263643236313D64636261323631010F616263643236323D64636261323632010F616263643236333D64636261323633010F616263643236343D64636261323634010F616263643236353D64636261323635010F616263643236363D64636261323636010F616263643236373D64636261323637010F616263643236383D64636261323638010F616263643236393D64636261323639010F616263643237303D64636261323730010F616263643237313D64636261323731010F616263643237323D64636261323732010F616263643237333D64636261323733010F616263643237343D64636261323734010F616263643237353D64636261323735010F616263643237363D64636261323736010F616263643237373D64636261323737010F616263643237383D64636261323738010F616263643237393D64636261323739010F616263643238303D64636261323830010F616263643238313D64636261323831010F616263643238323D64636261323832010F616263643238333D64636261323833010F616263643238343D64636261323834010F616263643238353D64636261323835010F616263643238363D64636261323836010F616263643238373D64636261323837010F616263643238383D64636261323838010F616263643238393D64636261323839010F616263643239303D64636261323930010F616263643239313D64636261323931010F616263643239323D64636261323932010F616263643239333D64636261323933010F616263643239343D64636261323934010F616263643239353D64636261323935010F616263643239363D64636261323936010F616263643239373D64636261323937010F616263643239383D64636261323938010F616263643239393D64636261323939010F616263643330303D64636261333030010F616263643330313D64636261333031010F616263643330323D64636261333032010F616263643330333D64636261333033010F616263643330343D64636261333034010F616263643330353D64636261333035010F616263643330363D64636261333036010F616263643330373D64636261333037010F616263643330383D64636261333038010F616263643330393D64636261333039010F616263643331303D64636261333130010F616263643331313D","proof":{"aunts":["F730990451BAB63C3CF6AC8E6ED4F52259CA5F53","C65A9589F377F2B6CF44B9BAFEBB535DF3C3A4FB"]}}}],"peer_key":""}]} | |||
{"time":"2016-10-11T16:21:23.441Z","msg":[2,{"msg":[19,{"Height":1,"Round":0,"Part":{"index":2,"bytes":"64636261333131010F616263643331323D64636261333132010F616263643331333D64636261333133010F616263643331343D64636261333134010F616263643331353D64636261333135010F616263643331363D64636261333136010F616263643331373D64636261333137010F616263643331383D64636261333138010F616263643331393D64636261333139010F616263643332303D64636261333230010F616263643332313D64636261333231010F616263643332323D64636261333232010F616263643332333D64636261333233010F616263643332343D64636261333234010F616263643332353D64636261333235010F616263643332363D64636261333236010F616263643332373D64636261333237010F616263643332383D64636261333238010F616263643332393D64636261333239010F616263643333303D64636261333330010F616263643333313D64636261333331010F616263643333323D64636261333332010F616263643333333D64636261333333010F616263643333343D64636261333334010F616263643333353D64636261333335010F616263643333363D64636261333336010F616263643333373D64636261333337010F616263643333383D64636261333338010F616263643333393D64636261333339010F616263643334303D64636261333430010F616263643334313D64636261333431010F616263643334323D64636261333432010F616263643334333D64636261333433010F616263643334343D64636261333434010F616263643334353D64636261333435010F616263643334363D64636261333436010F616263643334373D64636261333437010F616263643334383D64636261333438010F616263643334393D64636261333439010F616263643335303D64636261333530010F616263643335313D64636261333531010F616263643335323D64636261333532010F616263643335333D64636261333533010F616263643335343D64636261333534010F616263643335353D64636261333535010F616263643335363D64636261333536010F616263643335373D64636261333537010F616263643335383D64636261333538010F616263643335393D64636261333539010F616263643336303D64636261333630010F616263643336313D646362613336310100","proof":{"aunts":["56EF782EE04E0359D0B38271FD22B312A546FC3A"]}}}],"peer_key":""}]} | |||
{"time":"2016-10-11T16:21:23.447Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPrevote"}]} | |||
{"time":"2016-10-11T16:21:23.447Z","msg":[2,{"msg":[20,{"ValidatorIndex":0,"Vote":{"height":1,"round":0,"type":1,"block_hash":"AAE0ECF64D818A61F6E3D6D11E60F343C3FC8800","block_parts_header":{"total":3,"hash":"88BC082C86DED0A5E2BBC3677B610D155FEDBCEA"},"signature":"0870A9C3FF59DE0F5574B77F030BD160C1E2966AECE815E7C97CFA8BC4A6B01D7A10D91416B1AA02D49EFF7F08A239048CD9CD93E7AE4F80871FBFFF7DBFC50C"}}],"peer_key":""}]} | |||
{"time":"2016-10-11T16:21:23.448Z","msg":[1,{"height":1,"round":0,"step":"RoundStepPrecommit"}]} | |||
{"time":"2016-10-11T16:21:23.448Z","msg":[2,{"msg":[20,{"ValidatorIndex":0,"Vote":{"height":1,"round":0,"type":2,"block_hash":"AAE0ECF64D818A61F6E3D6D11E60F343C3FC8800","block_parts_header":{"total":3,"hash":"88BC082C86DED0A5E2BBC3677B610D155FEDBCEA"},"signature":"0CEEA8A987D88D0A0870C0076DB8D1B57D3B051D017745B46C4710BBE6DF0F9AE8D5A95B49E4158A1A8C8C6475B8A8E91275303B9C10A5C0C18F40EBB0DA0905"}}],"peer_key":""}]} |
@ -0,0 +1,27 @@ | |||
#! /bin/bash | |||
set -u | |||
function parseGlide() { | |||
cat $1 | grep -A1 $2 | grep -v $2 | awk '{print $2}' | |||
} | |||
# fetch and checkout vendored dep | |||
glide=$1 | |||
lib=$2 | |||
echo "----------------------------------" | |||
echo "Getting $lib ..." | |||
go get -t github.com/tendermint/$lib/... | |||
VENDORED=$(parseGlide $glide $lib) | |||
cd $GOPATH/src/github.com/tendermint/$lib | |||
MASTER=$(git rev-parse origin/master) | |||
if [[ "$VENDORED" != "$MASTER" ]]; then | |||
echo "... VENDORED != MASTER ($VENDORED != $MASTER)" | |||
echo "... Checking out commit $VENDORED" | |||
git checkout $VENDORED &> /dev/null | |||
fi | |||