Merge pull request #5542 from bhandras/itest-race

build: add itest-race build target to catch data races with itests
This commit is contained in:
Oliver Gugger 2021-07-22 20:47:34 +02:00 committed by GitHub
commit 49f1169d7c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 5 deletions

@ -143,6 +143,14 @@ build-itest:
@$(call print, "Building itest binary for ${backend} backend.") @$(call print, "Building itest binary for ${backend} backend.")
CGO_ENABLED=0 $(GOTEST) -v ./lntest/itest -tags="$(DEV_TAGS) $(RPC_TAGS) rpctest $(backend)" -c -o lntest/itest/itest.test$(EXEC_SUFFIX) CGO_ENABLED=0 $(GOTEST) -v ./lntest/itest -tags="$(DEV_TAGS) $(RPC_TAGS) rpctest $(backend)" -c -o lntest/itest/itest.test$(EXEC_SUFFIX)
build-itest-race:
@$(call print, "Building itest btcd and lnd with race detector.")
CGO_ENABLED=0 $(GOBUILD) -tags="rpctest" -o lntest/itest/btcd-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(BTCD_PKG)
CGO_ENABLED=1 $(GOBUILD) -race -tags="$(ITEST_TAGS)" -o lntest/itest/lnd-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(PKG)/cmd/lnd
@$(call print, "Building itest binary for ${backend} backend.")
CGO_ENABLED=0 $(GOTEST) -v ./lntest/itest -tags="$(DEV_TAGS) $(RPC_TAGS) rpctest $(backend)" -c -o lntest/itest/itest.test$(EXEC_SUFFIX)
install: install:
@$(call print, "Installing lnd and lncli.") @$(call print, "Installing lnd and lncli.")
$(GOINSTALL) -tags="${tags}" $(LDFLAGS) $(PKG)/cmd/lnd $(GOINSTALL) -tags="${tags}" $(LDFLAGS) $(PKG)/cmd/lnd
@ -187,6 +195,8 @@ itest-only:
itest: build-itest itest-only itest: build-itest itest-only
itest-race: build-itest-race itest-only
itest-parallel: build-itest itest-parallel: build-itest
@$(call print, "Running tests") @$(call print, "Running tests")
rm -rf lntest/itest/*.log lntest/itest/.logs-*; date rm -rf lntest/itest/*.log lntest/itest/.logs-*; date

@ -7,12 +7,15 @@ addholdinvoice call](https://github.com/lightningnetwork/lnd/pull/5533).
# Build System # Build System
[A new pre-submit check has been * [A new pre-submit check has been
added](https://github.com/lightningnetwork/lnd/pull/5520) to ensure that all added](https://github.com/lightningnetwork/lnd/pull/5520) to ensure that all
PRs ([aside from merge PRs ([aside from merge
commits](https://github.com/lightningnetwork/lnd/pull/5543)) add an entry in commits](https://github.com/lightningnetwork/lnd/pull/5543)) add an entry in
the release notes folder that at leasts links to PR being added. the release notes folder that at leasts links to PR being added.
* [A new build target itest-race](https://github.com/lightningnetwork/lnd/pull/5542)
to help uncover undetected data races with our itests.
# Misc # Misc
* The direct use of certain syscalls in packages such as `bbolt` or `lnd`'s own * The direct use of certain syscalls in packages such as `bbolt` or `lnd`'s own