CI configuration refactor (#4776)
* added back the tools targets * removed ci target
This commit is contained in:
parent
243e87660b
commit
e8ed9302f7
|
@ -1,157 +1,108 @@
|
||||||
version: 2
|
version: 2.1
|
||||||
|
|
||||||
defaults: &linux_defaults
|
executors:
|
||||||
working_directory: /go/src/github.com/cosmos/cosmos-sdk
|
golang:
|
||||||
docker:
|
docker:
|
||||||
- image: circleci/golang:1.12.5
|
- image: circleci/golang:1.12.7
|
||||||
|
docs:
|
||||||
|
docker:
|
||||||
|
- image: tendermintdev/docker-website-deployment
|
||||||
|
environment:
|
||||||
|
AWS_REGION: us-east-1
|
||||||
|
|
||||||
############
|
commands:
|
||||||
#
|
make:
|
||||||
# Configure docs deployment
|
parameters:
|
||||||
|
description:
|
||||||
docs_update: &docs_deploy
|
type: string
|
||||||
working_directory: ~/repo
|
target:
|
||||||
docker:
|
type: string
|
||||||
- image: tendermintdev/jq_curl
|
steps:
|
||||||
environment:
|
- attach_workspace:
|
||||||
AWS_REGION: us-east-1
|
at: /tmp/workspace
|
||||||
|
- restore_cache:
|
||||||
|
name: "Restore source code cache"
|
||||||
|
keys:
|
||||||
|
- go-src-v1-{{ .Revision }}
|
||||||
|
- checkout
|
||||||
|
- restore_cache:
|
||||||
|
name: "Restore go modules cache"
|
||||||
|
keys:
|
||||||
|
- go-mod-v1-{{ checksum "go.sum" }}
|
||||||
|
- run:
|
||||||
|
name: << parameters.description >>
|
||||||
|
command: |
|
||||||
|
make << parameters.target >>
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
setup_dependencies:
|
setup_dependencies:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
steps:
|
steps:
|
||||||
- run: mkdir -p /tmp/workspace/bin
|
|
||||||
- run: mkdir -p /tmp/workspace/profiles
|
|
||||||
- checkout
|
- checkout
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
|
name: "Restore go modules cache"
|
||||||
keys:
|
keys:
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
- go-mod-v1-{{ checksum "go.sum" }}
|
||||||
- run:
|
- run:
|
||||||
name: tools
|
name: Cache go modules
|
||||||
command: |
|
command: make go-mod-cache
|
||||||
make runsim tools TOOLS_DESTDIR=/tmp/workspace/bin
|
|
||||||
cp $GOPATH/bin/runsim /tmp/workspace/bin
|
|
||||||
cp $GOPATH/bin/statik /tmp/workspace/bin
|
|
||||||
- run:
|
- run:
|
||||||
name: cache go modules
|
name: Build
|
||||||
command: |
|
command: make build
|
||||||
make go-mod-cache
|
- run:
|
||||||
|
name: Git garbage collection
|
||||||
|
command: git gc
|
||||||
- save_cache:
|
- save_cache:
|
||||||
|
name: "Save go modules cache"
|
||||||
key: go-mod-v1-{{ checksum "go.sum" }}
|
key: go-mod-v1-{{ checksum "go.sum" }}
|
||||||
paths:
|
paths:
|
||||||
- "/go/pkg/mod"
|
- "/go/pkg/mod"
|
||||||
- run:
|
- save_cache:
|
||||||
name: build
|
name: "Save source code cache"
|
||||||
command: |
|
key: go-src-v1-{{ .Revision }}
|
||||||
make build
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
paths:
|
||||||
- bin
|
- ".git"
|
||||||
- profiles
|
|
||||||
|
|
||||||
test_sim_app_nondeterminism:
|
test_sim_nondeterminism:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- make:
|
||||||
at: /tmp/workspace
|
target: test_sim_nondeterminism
|
||||||
- checkout
|
description: "Test individual module simulations"
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: Test individual module simulations
|
|
||||||
command: |
|
|
||||||
make test_sim_app_nondeterminism
|
|
||||||
|
|
||||||
test_sim_app_fast:
|
test_sim_import_export:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- make:
|
||||||
at: /tmp/workspace
|
target: test_sim_import_export
|
||||||
- checkout
|
description: "Test application import/export simulation"
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: Test full application simulation
|
|
||||||
command: |
|
|
||||||
make test_sim_app_fast
|
|
||||||
|
|
||||||
test_sim_app_import_export:
|
test_sim_after_import:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- make:
|
||||||
at: /tmp/workspace
|
target: test_sim_after_import
|
||||||
- checkout
|
description: "Test simulation after import"
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: Test application import/export simulation
|
|
||||||
command: |
|
|
||||||
export GO111MODULE=on
|
|
||||||
/tmp/workspace/bin/runsim -j 4 github.com/cosmos/cosmos-sdk/simapp 50 5 TestAppImportExport
|
|
||||||
|
|
||||||
test_sim_app_simulation_after_import:
|
test_sim_multi_seed_long:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- make:
|
||||||
at: /tmp/workspace
|
target: test_sim_multi_seed_long
|
||||||
- checkout
|
description: "Test multi-seed simulation (long)"
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: Test application import/export simulation
|
|
||||||
command: |
|
|
||||||
export GO111MODULE=on
|
|
||||||
/tmp/workspace/bin/runsim -j 4 github.com/cosmos/cosmos-sdk/simapp 50 5 TestAppSimulationAfterImport
|
|
||||||
|
|
||||||
test_sim_app_multi_seed_long:
|
test_sim_multi_seed_short:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- make:
|
||||||
at: /tmp/workspace
|
target: test_sim_multi_seed_short
|
||||||
- checkout
|
description: "Test multi-seed simulation (short)"
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: Test multi-seed application simulation long
|
|
||||||
command: |
|
|
||||||
export GO111MODULE=on
|
|
||||||
/tmp/workspace/bin/runsim -j 4 github.com/cosmos/cosmos-sdk/simapp 500 50 TestFullAppSimulation
|
|
||||||
|
|
||||||
test_sim_app_multi_seed:
|
|
||||||
<<: *linux_defaults
|
|
||||||
parallelism: 1
|
|
||||||
steps:
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- checkout
|
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: Test multi-seed application simulation short
|
|
||||||
command: |
|
|
||||||
export GO111MODULE=on
|
|
||||||
/tmp/workspace/bin/runsim -j 4 github.com/cosmos/cosmos-sdk/simapp 50 10 TestFullAppSimulation
|
|
||||||
|
|
||||||
test_cover:
|
test_cover:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 4
|
parallelism: 4
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- checkout
|
- checkout
|
||||||
- run: mkdir -p /tmp/logs
|
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
- go-mod-v1-{{ checksum "go.sum" }}
|
||||||
|
@ -160,7 +111,8 @@ jobs:
|
||||||
command: |
|
command: |
|
||||||
export VERSION="$(git describe --tags --long | sed 's/v\(.*\)/\1/')"
|
export VERSION="$(git describe --tags --long | sed 's/v\(.*\)/\1/')"
|
||||||
export GO111MODULE=on
|
export GO111MODULE=on
|
||||||
for pkg in $(go list ./... | grep -v '/simulation' | circleci tests split --split-by=timings); do
|
mkdir -p /tmp/logs /tmp/workspace/profiles
|
||||||
|
for pkg in $(go list ./... | grep -v '/simulation' | circleci tests split); do
|
||||||
id=$(echo "$pkg" | sed 's|[/.]|_|g')
|
id=$(echo "$pkg" | sed 's|[/.]|_|g')
|
||||||
go test -mod=readonly -timeout 8m -race -coverprofile=/tmp/workspace/profiles/$id.out -covermode=atomic -tags='ledger test_ledger_mock' "$pkg" | tee "/tmp/logs/$id-$RANDOM.log"
|
go test -mod=readonly -timeout 8m -race -coverprofile=/tmp/workspace/profiles/$id.out -covermode=atomic -tags='ledger test_ledger_mock' "$pkg" | tee "/tmp/logs/$id-$RANDOM.log"
|
||||||
done
|
done
|
||||||
|
@ -172,8 +124,7 @@ jobs:
|
||||||
path: /tmp/logs
|
path: /tmp/logs
|
||||||
|
|
||||||
upload_coverage:
|
upload_coverage:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: /tmp/workspace
|
at: /tmp/workspace
|
||||||
|
@ -181,8 +132,6 @@ jobs:
|
||||||
- run:
|
- run:
|
||||||
name: gather
|
name: gather
|
||||||
command: |
|
command: |
|
||||||
set -ex
|
|
||||||
|
|
||||||
echo "--> Concatenating profiles:"
|
echo "--> Concatenating profiles:"
|
||||||
ls /tmp/workspace/profiles/
|
ls /tmp/workspace/profiles/
|
||||||
echo "mode: atomic" > coverage.txt
|
echo "mode: atomic" > coverage.txt
|
||||||
|
@ -201,53 +150,12 @@ jobs:
|
||||||
name: upload
|
name: upload
|
||||||
command: bash <(curl -s https://codecov.io/bash) -f coverage.txt
|
command: bash <(curl -s https://codecov.io/bash) -f coverage.txt
|
||||||
|
|
||||||
deploy_docs:
|
|
||||||
<<: *docs_deploy
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- run:
|
|
||||||
name: Trigger website build
|
|
||||||
command: |
|
|
||||||
curl --silent \
|
|
||||||
--show-error \
|
|
||||||
-X POST \
|
|
||||||
--header "Content-Type: application/json" \
|
|
||||||
-d "{\"branch\": \"$CIRCLE_BRANCH\"}" \
|
|
||||||
"https://circleci.com/api/v1.1/project/github/$CIRCLE_PROJECT_USERNAME/$WEBSITE_REPO_NAME/build?circle-token=$TENDERBOT_API_TOKEN" > response.json
|
|
||||||
|
|
||||||
RESULT=`jq -r '.status' response.json`
|
|
||||||
MESSAGE=`jq -r '.message' response.json`
|
|
||||||
|
|
||||||
if [[ ${RESULT} == "null" ]] || [[ ${RESULT} -ne "200" ]]; then
|
|
||||||
echo "CircleCI API call failed: $MESSAGE"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "Website build started"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check_statik:
|
check_statik:
|
||||||
<<: *linux_defaults
|
executor: golang
|
||||||
parallelism: 1
|
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- make:
|
||||||
at: /tmp/workspace
|
target: update-swagger-docs
|
||||||
- checkout
|
description: "Check if statik.go is up-to-date"
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- go-mod-v1-{{ checksum "go.sum" }}
|
|
||||||
- run:
|
|
||||||
name: check if statik.go is up-to-date
|
|
||||||
command: |
|
|
||||||
set -ex
|
|
||||||
export PATH=/tmp/workspace/bin:$PATH
|
|
||||||
|
|
||||||
make update-swagger-docs
|
|
||||||
if [ -n "$(git status --porcelain)" ]; then
|
|
||||||
echo "swagger docs out of sync";
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "swagger docs are in sync";
|
|
||||||
fi
|
|
||||||
|
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
|
@ -256,41 +164,34 @@ workflows:
|
||||||
- check_statik:
|
- check_statik:
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
- deploy_docs:
|
|
||||||
filters:
|
|
||||||
branches:
|
|
||||||
only:
|
|
||||||
- master
|
|
||||||
- develop
|
|
||||||
- setup_dependencies:
|
- setup_dependencies:
|
||||||
# filters here are needed to enable this job also for tags
|
# This filter enables the job for tags
|
||||||
filters:
|
filters:
|
||||||
tags:
|
tags:
|
||||||
only:
|
only:
|
||||||
- /^v.*/
|
- /^v.*/
|
||||||
- test_sim_app_nondeterminism:
|
- test_sim_nondeterminism:
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
- test_sim_app_fast:
|
- test_sim_import_export:
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
- test_sim_app_import_export:
|
- test_sim_after_import:
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
- test_sim_app_simulation_after_import:
|
- test_sim_multi_seed_short:
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
- test_sim_app_multi_seed:
|
- test_sim_multi_seed_long:
|
||||||
requires:
|
|
||||||
- setup_dependencies
|
|
||||||
- test_sim_app_multi_seed_long:
|
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
|
# These filters ensure that the long sim only runs during release
|
||||||
filters:
|
filters:
|
||||||
branches:
|
branches:
|
||||||
|
ignore: /.*/
|
||||||
|
tags:
|
||||||
only:
|
only:
|
||||||
- master
|
- /^v.*/
|
||||||
- develop
|
|
||||||
- test_cover:
|
- test_cover:
|
||||||
requires:
|
requires:
|
||||||
- setup_dependencies
|
- setup_dependencies
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
#4775 Refactor CI config
|
104
Makefile
104
Makefile
|
@ -6,36 +6,36 @@ VERSION := $(shell echo $(shell git describe --tags) | sed 's/^v//')
|
||||||
COMMIT := $(shell git log -1 --format='%H')
|
COMMIT := $(shell git log -1 --format='%H')
|
||||||
LEDGER_ENABLED ?= true
|
LEDGER_ENABLED ?= true
|
||||||
BINDIR ?= $(GOPATH)/bin
|
BINDIR ?= $(GOPATH)/bin
|
||||||
SIMAPP = github.com/cosmos/cosmos-sdk/simapp
|
SIMAPP = ./simapp
|
||||||
MOCKS_DIR = $(CURDIR)/tests/mocks
|
MOCKS_DIR = $(CURDIR)/tests/mocks
|
||||||
|
|
||||||
export GO111MODULE = on
|
export GO111MODULE = on
|
||||||
|
|
||||||
all: tools build lint test
|
all: tools build lint test
|
||||||
|
|
||||||
# The below include contains the tools target.
|
# The below include contains the tools and runsim targets.
|
||||||
include contrib/devtools/Makefile
|
include contrib/devtools/Makefile
|
||||||
|
|
||||||
########################################
|
|
||||||
### CI
|
|
||||||
|
|
||||||
ci: tools build test_cover lint test
|
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
### Build
|
### Build
|
||||||
|
|
||||||
build: go.sum
|
build: go.sum
|
||||||
@go build -mod=readonly ./...
|
@go build -mod=readonly ./...
|
||||||
|
.PHONY: build
|
||||||
|
|
||||||
update-swagger-docs:
|
update-swagger-docs: statik
|
||||||
@statik -src=client/lcd/swagger-ui -dest=client/lcd -f -m
|
$(BINDIR)/statik -src=client/lcd/swagger-ui -dest=client/lcd -f -m
|
||||||
|
if [ -n "$(git status --porcelain)" ]; then \
|
||||||
dist:
|
echo "swagger docs out of sync";\
|
||||||
@bash publish/dist.sh
|
exit 1;\
|
||||||
@bash publish/publish.sh
|
else \
|
||||||
|
echo "swagger docs are in sync";\
|
||||||
|
fi
|
||||||
|
.PHONY: update-swagger-docs
|
||||||
|
|
||||||
mocks: $(MOCKS_DIR)
|
mocks: $(MOCKS_DIR)
|
||||||
mockgen -source=x/auth/types/account_retriever.go -package mocks -destination tests/mocks/account_retriever.go
|
mockgen -source=x/auth/types/account_retriever.go -package mocks -destination tests/mocks/account_retriever.go
|
||||||
|
.PHONY: mocks
|
||||||
|
|
||||||
$(MOCKS_DIR):
|
$(MOCKS_DIR):
|
||||||
mkdir -p $(MOCKS_DIR)
|
mkdir -p $(MOCKS_DIR)
|
||||||
|
@ -46,21 +46,20 @@ $(MOCKS_DIR):
|
||||||
go-mod-cache: go.sum
|
go-mod-cache: go.sum
|
||||||
@echo "--> Download go modules to local cache"
|
@echo "--> Download go modules to local cache"
|
||||||
@go mod download
|
@go mod download
|
||||||
|
.PHONY: go-mod-cache
|
||||||
|
|
||||||
go.sum: go.mod
|
go.sum: go.mod
|
||||||
@echo "--> Ensure dependencies have not been modified"
|
@echo "--> Ensure dependencies have not been modified"
|
||||||
@go mod verify
|
@go mod verify
|
||||||
@go mod tidy
|
@go mod tidy
|
||||||
|
|
||||||
clean:
|
distclean:
|
||||||
rm -rf snapcraft-local.yaml build/
|
|
||||||
|
|
||||||
distclean: clean
|
|
||||||
rm -rf \
|
rm -rf \
|
||||||
gitian-build-darwin/ \
|
gitian-build-darwin/ \
|
||||||
gitian-build-linux/ \
|
gitian-build-linux/ \
|
||||||
gitian-build-windows/ \
|
gitian-build-windows/ \
|
||||||
.gitian-builder-cache/
|
.gitian-builder-cache/
|
||||||
|
.PHONY: distclean
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
### Documentation
|
### Documentation
|
||||||
|
@ -69,14 +68,13 @@ godocs:
|
||||||
@echo "--> Wait a few seconds and visit http://localhost:6060/pkg/github.com/cosmos/cosmos-sdk/types"
|
@echo "--> Wait a few seconds and visit http://localhost:6060/pkg/github.com/cosmos/cosmos-sdk/types"
|
||||||
godoc -http=:6060
|
godoc -http=:6060
|
||||||
|
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
### Testing
|
### Testing
|
||||||
|
|
||||||
test: test_unit
|
test: test_unit
|
||||||
|
|
||||||
test_ledger_mock:
|
test_ledger_mock:
|
||||||
@go test -mod=readonly `go list github.com/cosmos/cosmos-sdk/crypto` -tags='cgo ledger test_ledger_mock'
|
@go test -mod=readonly `go list github.com/cosmos/cosmos-sdk/crypto` -tags='cgo ledger test_ledger_mock'
|
||||||
|
|
||||||
test_ledger: test_ledger_mock
|
test_ledger: test_ledger_mock
|
||||||
@go test -mod=readonly -v `go list github.com/cosmos/cosmos-sdk/crypto` -tags='cgo ledger'
|
@go test -mod=readonly -v `go list github.com/cosmos/cosmos-sdk/crypto` -tags='cgo ledger'
|
||||||
|
@ -87,36 +85,36 @@ test_unit:
|
||||||
test_race:
|
test_race:
|
||||||
@VERSION=$(VERSION) go test -mod=readonly -race $(PACKAGES_NOSIMULATION)
|
@VERSION=$(VERSION) go test -mod=readonly -race $(PACKAGES_NOSIMULATION)
|
||||||
|
|
||||||
test_sim_app_nondeterminism:
|
test_sim_nondeterminism:
|
||||||
@echo "Running nondeterminism test..."
|
@echo "Running nondeterminism test..."
|
||||||
@go test -mod=readonly $(SIMAPP) -run TestAppStateDeterminism -Enabled=true -v -timeout 10m
|
@go test -mod=readonly $(SIMAPP) -run TestAppStateDeterminism -Enabled=true -v -timeout 10m
|
||||||
|
|
||||||
test_sim_app_custom_genesis_fast:
|
test_sim_custom_genesis_fast:
|
||||||
@echo "Running custom genesis simulation..."
|
@echo "Running custom genesis simulation..."
|
||||||
@echo "By default, ${HOME}/.gaiad/config/genesis.json will be used."
|
@echo "By default, ${HOME}/.gaiad/config/genesis.json will be used."
|
||||||
@go test -mod=readonly $(SIMAPP) -run TestFullAppSimulation -Genesis=${HOME}/.gaiad/config/genesis.json \
|
@go test -mod=readonly $(SIMAPP) -run TestFullAppSimulation -Genesis=${HOME}/.gaiad/config/genesis.json \
|
||||||
-Enabled=true -NumBlocks=100 -BlockSize=200 -Commit=true -Seed=99 -Period=5 -v -timeout 24h
|
-Enabled=true -NumBlocks=100 -BlockSize=200 -Commit=true -Seed=99 -Period=5 -v -timeout 24h
|
||||||
|
|
||||||
test_sim_app_fast:
|
test_sim_import_export: runsim
|
||||||
@echo "Running quick application simulation. This may take several minutes..."
|
|
||||||
@go test -mod=readonly $(SIMAPP) -run TestFullAppSimulation -Enabled=true -NumBlocks=100 -BlockSize=200 -Commit=true -Seed=99 -Period=5 -v -timeout 24h
|
|
||||||
|
|
||||||
test_sim_app_import_export: runsim
|
|
||||||
@echo "Running application import/export simulation. This may take several minutes..."
|
@echo "Running application import/export simulation. This may take several minutes..."
|
||||||
$(BINDIR)/runsim -e $(SIMAPP) 25 5 TestAppImportExport
|
$(BINDIR)/runsim -j 4 $(SIMAPP) 50 5 TestAppImportExport
|
||||||
|
|
||||||
test_sim_app_simulation_after_import: runsim
|
test_sim_after_import: runsim
|
||||||
@echo "Running application simulation-after-import. This may take several minutes..."
|
@echo "Running application simulation-after-import. This may take several minutes..."
|
||||||
$(BINDIR)/runsim -e $(SIMAPP) 25 5 TestAppSimulationAfterImport
|
$(BINDIR)/runsim -j 4 $(SIMAPP) 50 5 TestAppSimulationAfterImport
|
||||||
|
|
||||||
test_sim_app_custom_genesis_multi_seed: runsim
|
test_sim_custom_genesis_multi_seed: runsim
|
||||||
@echo "Running multi-seed custom genesis simulation..."
|
@echo "Running multi-seed custom genesis simulation..."
|
||||||
@echo "By default, ${HOME}/.gaiad/config/genesis.json will be used."
|
@echo "By default, ${HOME}/.gaiad/config/genesis.json will be used."
|
||||||
$(BINDIR)/runsim -g ${HOME}/.gaiad/config/genesis.json $(SIMAPP) 400 5 TestFullAppSimulation
|
$(BINDIR)/runsim -g ${HOME}/.gaiad/config/genesis.json $(SIMAPP) 400 5 TestFullAppSimulation
|
||||||
|
|
||||||
test_sim_app_multi_seed: runsim
|
test_sim_multi_seed_long: runsim
|
||||||
@echo "Running multi-seed application simulation. This may take awhile!"
|
@echo "Running multi-seed application simulation. This may take awhile!"
|
||||||
$(BINDIR)/runsim $(SIMAPP) 400 5 TestFullAppSimulation
|
$(BINDIR)/runsim -j 4 $(SIMAPP) 500 50 TestFullAppSimulation
|
||||||
|
|
||||||
|
test_sim_multi_seed_short: runsim
|
||||||
|
@echo "Running multi-seed application simulation. This may take awhile!"
|
||||||
|
$(BINDIR)/runsim -j 4 $(SIMAPP) 50 10 TestFullAppSimulation
|
||||||
|
|
||||||
test_sim_benchmark_invariants:
|
test_sim_benchmark_invariants:
|
||||||
@echo "Running simulation invariant benchmarks..."
|
@echo "Running simulation invariant benchmarks..."
|
||||||
|
@ -124,22 +122,27 @@ test_sim_benchmark_invariants:
|
||||||
-Enabled=true -NumBlocks=1000 -BlockSize=200 \
|
-Enabled=true -NumBlocks=1000 -BlockSize=200 \
|
||||||
-Commit=true -Seed=57 -v -timeout 24h
|
-Commit=true -Seed=57 -v -timeout 24h
|
||||||
|
|
||||||
# Don't move it into tools - this will be gone once gaia has moved into the new repo
|
.PHONY: test \
|
||||||
runsim: $(BINDIR)/runsim
|
test_sim_nondeterminism \
|
||||||
$(BINDIR)/runsim:
|
test_sim_custom_genesis_fast \
|
||||||
go get github.com/cosmos/tools/cmd/runsim/
|
test_sim_fast \
|
||||||
go mod tidy
|
test_sim_import_export \
|
||||||
|
test_sim_after_import \
|
||||||
|
test_sim_custom_genesis_multi_seed \
|
||||||
|
test_sim_multi_seed \
|
||||||
|
test_sim_multi_seed_short \
|
||||||
|
test_sim_benchmark_invariants
|
||||||
|
|
||||||
SIM_NUM_BLOCKS ?= 500
|
SIM_NUM_BLOCKS ?= 500
|
||||||
SIM_BLOCK_SIZE ?= 200
|
SIM_BLOCK_SIZE ?= 200
|
||||||
SIM_COMMIT ?= true
|
SIM_COMMIT ?= true
|
||||||
|
|
||||||
test_sim_app_benchmark:
|
test_sim_benchmark:
|
||||||
@echo "Running application benchmark for numBlocks=$(SIM_NUM_BLOCKS), blockSize=$(SIM_BLOCK_SIZE). This may take awhile!"
|
@echo "Running application benchmark for numBlocks=$(SIM_NUM_BLOCKS), blockSize=$(SIM_BLOCK_SIZE). This may take awhile!"
|
||||||
@go test -mod=readonly -benchmem -run=^$$ $(SIMAPP) -bench ^BenchmarkFullAppSimulation$$ \
|
@go test -mod=readonly -benchmem -run=^$$ $(SIMAPP) -bench ^BenchmarkFullAppSimulation$$ \
|
||||||
-Enabled=true -NumBlocks=$(SIM_NUM_BLOCKS) -BlockSize=$(SIM_BLOCK_SIZE) -Commit=$(SIM_COMMIT) -timeout 24h
|
-Enabled=true -NumBlocks=$(SIM_NUM_BLOCKS) -BlockSize=$(SIM_BLOCK_SIZE) -Commit=$(SIM_COMMIT) -timeout 24h
|
||||||
|
|
||||||
test_sim_app_profile:
|
test_sim_profile:
|
||||||
@echo "Running application benchmark for numBlocks=$(SIM_NUM_BLOCKS), blockSize=$(SIM_BLOCK_SIZE). This may take awhile!"
|
@echo "Running application benchmark for numBlocks=$(SIM_NUM_BLOCKS), blockSize=$(SIM_BLOCK_SIZE). This may take awhile!"
|
||||||
@go test -mod=readonly -benchmem -run=^$$ $(SIMAPP) -bench ^BenchmarkFullAppSimulation$$ \
|
@go test -mod=readonly -benchmem -run=^$$ $(SIMAPP) -bench ^BenchmarkFullAppSimulation$$ \
|
||||||
-Enabled=true -NumBlocks=$(SIM_NUM_BLOCKS) -BlockSize=$(SIM_BLOCK_SIZE) -Commit=$(SIM_COMMIT) -timeout 24h -cpuprofile cpu.out -memprofile mem.out
|
-Enabled=true -NumBlocks=$(SIM_NUM_BLOCKS) -BlockSize=$(SIM_BLOCK_SIZE) -Commit=$(SIM_COMMIT) -timeout 24h -cpuprofile cpu.out -memprofile mem.out
|
||||||
|
@ -148,18 +151,20 @@ test_cover:
|
||||||
@export VERSION=$(VERSION); bash -x tests/test_cover.sh
|
@export VERSION=$(VERSION); bash -x tests/test_cover.sh
|
||||||
|
|
||||||
lint: golangci-lint
|
lint: golangci-lint
|
||||||
golangci-lint run
|
$(BINDIR)/golangci-lint run
|
||||||
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" | xargs gofmt -d -s
|
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" | xargs gofmt -d -s
|
||||||
go mod verify
|
go mod verify
|
||||||
|
.PHONY: lint
|
||||||
|
|
||||||
format: tools
|
format: tools
|
||||||
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" -not -path "./client/lcd/statik/statik.go" | xargs gofmt -w -s
|
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" -not -path "./client/lcd/statik/statik.go" | xargs gofmt -w -s
|
||||||
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" -not -path "./client/lcd/statik/statik.go" | xargs misspell -w
|
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" -not -path "./client/lcd/statik/statik.go" | xargs misspell -w
|
||||||
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" -not -path "./client/lcd/statik/statik.go" | xargs goimports -w -local github.com/cosmos/cosmos-sdk
|
find . -name '*.go' -type f -not -path "./vendor*" -not -path "*.git*" -not -path "./client/lcd/statik/statik.go" | xargs goimports -w -local github.com/cosmos/cosmos-sdk
|
||||||
|
.PHONY: format
|
||||||
|
|
||||||
benchmark:
|
benchmark:
|
||||||
@go test -mod=readonly -bench=. $(PACKAGES_NOSIMULATION)
|
@go test -mod=readonly -bench=. $(PACKAGES_NOSIMULATION)
|
||||||
|
.PHONY: benchmark
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
### Devdoc
|
### Devdoc
|
||||||
|
@ -184,19 +189,4 @@ devdoc_clean:
|
||||||
devdoc_update:
|
devdoc_update:
|
||||||
docker pull tendermint/devdoc
|
docker pull tendermint/devdoc
|
||||||
|
|
||||||
|
.PHONY: devdoc devdoc_clean devdoc_init devdoc_save devdoc_update
|
||||||
########################################
|
|
||||||
### Packaging
|
|
||||||
|
|
||||||
snapcraft-local.yaml: snapcraft-local.yaml.in
|
|
||||||
sed "s/@VERSION@/${VERSION}/g" < $< > $@
|
|
||||||
|
|
||||||
# To avoid unintended conflicts with file names, always add to .PHONY
|
|
||||||
# unless there is a reason not to.
|
|
||||||
# https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html
|
|
||||||
.PHONY: build dist clean test test_unit test_cover lint mocks \
|
|
||||||
benchmark devdoc_init devdoc devdoc_save devdoc_update runsim \
|
|
||||||
format test_sim_app_nondeterminism test_sim_modules test_sim_app_fast \
|
|
||||||
test_sim_app_custom_genesis_fast test_sim_app_custom_genesis_multi_seed \
|
|
||||||
test_sim_app_multi_seed test_sim_app_import_export test_sim_benchmark_invariants \
|
|
||||||
go-mod-cache
|
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
###
|
###
|
||||||
ifeq ($(OS),Windows_NT)
|
ifeq ($(OS),Windows_NT)
|
||||||
GO := $(shell where go.exe 2> NUL)
|
GO := $(shell where go.exe 2> NUL)
|
||||||
FS := \\
|
FS := "\\"
|
||||||
else
|
else
|
||||||
GO := $(shell command -v go 2> /dev/null)
|
GO := $(shell command -v go 2> /dev/null)
|
||||||
FS := /
|
FS := "/"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(GO),)
|
ifeq ($(GO),)
|
||||||
|
@ -33,8 +33,6 @@ mkdir -p $(GITHUBDIR)$(FS)$(1) &&\
|
||||||
)\
|
)\
|
||||||
cd $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && git fetch origin && git checkout -q $(3)
|
cd $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && git fetch origin && git checkout -q $(3)
|
||||||
|
|
||||||
go_install = $(call go_get,$(1),$(2),$(3)) && cd $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && $(GO) install
|
|
||||||
|
|
||||||
mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
|
mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
|
||||||
mkfile_dir := $(shell cd $(shell dirname $(mkfile_path)); pwd)
|
mkfile_dir := $(shell cd $(shell dirname $(mkfile_path)); pwd)
|
||||||
|
|
||||||
|
@ -48,31 +46,38 @@ GOLANGCI_LINT = $(TOOLS_DESTDIR)/golangci-lint
|
||||||
STATIK = $(TOOLS_DESTDIR)/statik
|
STATIK = $(TOOLS_DESTDIR)/statik
|
||||||
GOIMPORTS = $(TOOLS_DESTDIR)/goimports
|
GOIMPORTS = $(TOOLS_DESTDIR)/goimports
|
||||||
CLOG = $(TOOLS_DESTDIR)/clog
|
CLOG = $(TOOLS_DESTDIR)/clog
|
||||||
|
RUNSIM = $(TOOLS_DESTDIR)/runsim
|
||||||
|
|
||||||
all: tools
|
all: tools
|
||||||
|
|
||||||
tools: tools-stamp
|
tools: statik clog runsim goimports golangci-lint
|
||||||
go mod tidy
|
|
||||||
|
|
||||||
tools-stamp: $(STATIK) $(GOIMPORTS)
|
|
||||||
touch $@
|
|
||||||
|
|
||||||
|
golangci-lint: $(GOLANGCI_LINT)
|
||||||
$(GOLANGCI_LINT): $(mkfile_dir)/install-golangci-lint.sh
|
$(GOLANGCI_LINT): $(mkfile_dir)/install-golangci-lint.sh
|
||||||
bash $(mkfile_dir)/install-golangci-lint.sh $(TOOLS_DESTDIR) $(GOLANGCI_LINT_VERSION) $(GOLANGCI_LINT_HASHSUM)
|
bash $(mkfile_dir)/install-golangci-lint.sh $(TOOLS_DESTDIR) $(GOLANGCI_LINT_VERSION) $(GOLANGCI_LINT_HASHSUM)
|
||||||
|
|
||||||
|
statik: $(STATIK)
|
||||||
$(STATIK):
|
$(STATIK):
|
||||||
$(call go_install,rakyll,statik,v0.1.5)
|
@echo "Get statik"
|
||||||
|
@go get github.com/rakyll/statik
|
||||||
|
|
||||||
|
goimports: $(GOIMPORTS)
|
||||||
$(GOIMPORTS):
|
$(GOIMPORTS):
|
||||||
go get golang.org/x/tools/cmd/goimports@v0.0.0-20190628034336-212fb13d595e
|
@echo "Get goimports@v0.0.0-20190628034336-212fb13d595e"
|
||||||
|
@go get golang.org/x/tools/cmd/goimports@v0.0.0-20190628034336-212fb13d595e
|
||||||
|
|
||||||
|
clog: $(CLOG)
|
||||||
$(CLOG):
|
$(CLOG):
|
||||||
go get github.com/cosmos/tools/cmd/clog/
|
@echo "Get clog"
|
||||||
|
@go get github.com/cosmos/tools/cmd/clog
|
||||||
|
|
||||||
golangci-lint: $(GOLANGCI_LINT)
|
runsim: $(RUNSIM)
|
||||||
|
$(RUNSIM):
|
||||||
|
@echo "Get runsim"
|
||||||
|
@go get github.com/cosmos/tools/cmd/runsim
|
||||||
|
|
||||||
tools-clean:
|
tools-clean:
|
||||||
rm -f $(STATIK) $(GOIMPORTS) $(CLOG) $(GOLANGCI_LINT)
|
rm -f $(STATIK) $(GOIMPORTS) $(CLOG) $(GOLANGCI_LINT) $(RUNSIM)
|
||||||
rm -f tools-stamp
|
rm -f tools-stamp
|
||||||
|
|
||||||
.PHONY: all tools tools-clean
|
.PHONY: all tools tools-clean
|
||||||
|
|
4
go.mod
4
go.mod
|
@ -6,7 +6,6 @@ require (
|
||||||
github.com/btcsuite/btcd v0.0.0-20190115013929-ed77733ec07d
|
github.com/btcsuite/btcd v0.0.0-20190115013929-ed77733ec07d
|
||||||
github.com/cosmos/go-bip39 v0.0.0-20180618194314-52158e4697b8
|
github.com/cosmos/go-bip39 v0.0.0-20180618194314-52158e4697b8
|
||||||
github.com/cosmos/ledger-cosmos-go v0.10.3
|
github.com/cosmos/ledger-cosmos-go v0.10.3
|
||||||
github.com/cosmos/tools/cmd/clog v0.0.0-20190722180430-ea942c183cba // indirect
|
|
||||||
github.com/fortytw2/leaktest v1.3.0 // indirect
|
github.com/fortytw2/leaktest v1.3.0 // indirect
|
||||||
github.com/gogo/protobuf v1.2.1
|
github.com/gogo/protobuf v1.2.1
|
||||||
github.com/golang/mock v1.3.1-0.20190508161146-9fa652df1129
|
github.com/golang/mock v1.3.1-0.20190508161146-9fa652df1129
|
||||||
|
@ -19,7 +18,7 @@ require (
|
||||||
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90 // indirect
|
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90 // indirect
|
||||||
github.com/prometheus/common v0.2.0 // indirect
|
github.com/prometheus/common v0.2.0 // indirect
|
||||||
github.com/prometheus/procfs v0.0.0-20190227231451-bbced9601137 // indirect
|
github.com/prometheus/procfs v0.0.0-20190227231451-bbced9601137 // indirect
|
||||||
github.com/rakyll/statik v0.1.4
|
github.com/rakyll/statik v0.1.5
|
||||||
github.com/spf13/afero v1.2.1 // indirect
|
github.com/spf13/afero v1.2.1 // indirect
|
||||||
github.com/spf13/cobra v0.0.5
|
github.com/spf13/cobra v0.0.5
|
||||||
github.com/spf13/jwalterweatherman v1.1.0 // indirect
|
github.com/spf13/jwalterweatherman v1.1.0 // indirect
|
||||||
|
@ -31,6 +30,7 @@ require (
|
||||||
github.com/tendermint/go-amino v0.15.0
|
github.com/tendermint/go-amino v0.15.0
|
||||||
github.com/tendermint/iavl v0.12.3-0.20190712145259-c834d3192b52
|
github.com/tendermint/iavl v0.12.3-0.20190712145259-c834d3192b52
|
||||||
github.com/tendermint/tendermint v0.32.1
|
github.com/tendermint/tendermint v0.32.1
|
||||||
|
golang.org/x/net v0.0.0-20190628185345-da137c7871d7 // indirect
|
||||||
google.golang.org/grpc v1.19.0 // indirect
|
google.golang.org/grpc v1.19.0 // indirect
|
||||||
gopkg.in/yaml.v2 v2.2.2
|
gopkg.in/yaml.v2 v2.2.2
|
||||||
)
|
)
|
||||||
|
|
8
go.sum
8
go.sum
|
@ -33,8 +33,6 @@ github.com/cosmos/ledger-cosmos-go v0.10.3 h1:Qhi5yTR5Pg1CaTpd00pxlGwNl4sFRdtK1J
|
||||||
github.com/cosmos/ledger-cosmos-go v0.10.3/go.mod h1:J8//BsAGTo3OC/vDLjMRFLW6q0WAaXvHnVc7ZmE8iUY=
|
github.com/cosmos/ledger-cosmos-go v0.10.3/go.mod h1:J8//BsAGTo3OC/vDLjMRFLW6q0WAaXvHnVc7ZmE8iUY=
|
||||||
github.com/cosmos/ledger-go v0.9.2 h1:Nnao/dLwaVTk1Q5U9THldpUMMXU94BOTWPddSmVB6pI=
|
github.com/cosmos/ledger-go v0.9.2 h1:Nnao/dLwaVTk1Q5U9THldpUMMXU94BOTWPddSmVB6pI=
|
||||||
github.com/cosmos/ledger-go v0.9.2/go.mod h1:oZJ2hHAZROdlHiwTg4t7kP+GKIIkBT+o6c9QWFanOyI=
|
github.com/cosmos/ledger-go v0.9.2/go.mod h1:oZJ2hHAZROdlHiwTg4t7kP+GKIIkBT+o6c9QWFanOyI=
|
||||||
github.com/cosmos/tools/cmd/clog v0.0.0-20190722180430-ea942c183cba h1:YhVnGzBkE2TvfBW5fAYBdNVK/3bwTPYVbMaOIGRHFRY=
|
|
||||||
github.com/cosmos/tools/cmd/clog v0.0.0-20190722180430-ea942c183cba/go.mod h1:TdPuAVaU2rc6K24ejr/AnGznt9Fd2qjtMoRrTO4uFrI=
|
|
||||||
github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE=
|
github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE=
|
||||||
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
|
@ -133,8 +131,8 @@ github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R
|
||||||
github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
|
github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
|
||||||
github.com/prometheus/procfs v0.0.0-20190227231451-bbced9601137 h1:3l8oligPtjd4JuM+OZ+U8sjtwFGJs98cdWsqs6QZRWs=
|
github.com/prometheus/procfs v0.0.0-20190227231451-bbced9601137 h1:3l8oligPtjd4JuM+OZ+U8sjtwFGJs98cdWsqs6QZRWs=
|
||||||
github.com/prometheus/procfs v0.0.0-20190227231451-bbced9601137/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
|
github.com/prometheus/procfs v0.0.0-20190227231451-bbced9601137/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
|
||||||
github.com/rakyll/statik v0.1.4 h1:zCS/YQCxfo/fQjCtGVGIyWGFnRbQ18Y55mhS3XPE+Oo=
|
github.com/rakyll/statik v0.1.5 h1:Ly2UjURzxnsSYS0zI50fZ+srA+Fu7EbpV5hglvJvJG0=
|
||||||
github.com/rakyll/statik v0.1.4/go.mod h1:OEi9wJV/fMUAGx1eNjq75DKDsJVuEv1U0oYdX6GX8Zs=
|
github.com/rakyll/statik v0.1.5/go.mod h1:OEi9wJV/fMUAGx1eNjq75DKDsJVuEv1U0oYdX6GX8Zs=
|
||||||
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165 h1:nkcn14uNmFEuGCb2mBZbBb24RdNRL08b/wb+xBOYpuk=
|
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165 h1:nkcn14uNmFEuGCb2mBZbBb24RdNRL08b/wb+xBOYpuk=
|
||||||
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
|
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
|
||||||
github.com/rs/cors v1.6.0 h1:G9tHG9lebljV9mfp9SNPDL36nCDxmo3zTlAf1YgvzmI=
|
github.com/rs/cors v1.6.0 h1:G9tHG9lebljV9mfp9SNPDL36nCDxmo3zTlAf1YgvzmI=
|
||||||
|
@ -198,6 +196,8 @@ golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73r
|
||||||
golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628=
|
golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628=
|
||||||
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||||
|
golang.org/x/net v0.0.0-20190628185345-da137c7871d7 h1:rTIdg5QFRR7XCaK4LCjBiPbx8j4DQRpdYMnGn/bJUEU=
|
||||||
|
golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
|
|
Loading…
Reference in New Issue