Commit Graph

65 Commits

Author SHA1 Message Date
tersec 2160d02977
use REST for make pyrmont/prater; use --rest options for local testnet (#3380) 2022-02-12 12:27:43 +01:00
Ștefan Talpalaru 70579f2fb1
Jenkins: macOS ARM64 CI job (#3128) 2022-02-04 14:43:40 +01:00
Ștefan Talpalaru d5a2c75963
restapi.sh: cleanup on exit (#3328)
also rename a confusing option/var combo
2022-01-27 13:03:38 +01:00
tersec 184f71cb59
increase Jenkins CI timeout to 4 hours (#3278) 2022-01-13 02:05:38 +00:00
Jakub 6f4109c336
ci: add 3 hour timeout for jobs (#3266)
Resolves: https://github.com/status-im/nimbus-eth2/issues/3264

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-01-10 13:07:08 +01:00
Jakub ff50670147
ci: specify macos host architecture in labels (#3132)
Since now we have a 5th Gen Mac Mini with `arm64` M1 CPU.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-11-26 14:55:33 +01:00
Jakub 0dd497640a
ci: throttle builds to avoid tests clashing (#3127)
Uses:
https://plugins.jenkins.io/throttle-concurrents/#example-1-throttling-of-node-runs

The `nimbus-eth` category limits builds to one per node in global settings.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-11-25 22:22:08 +01:00
Jacek Sieka 233d756518
Logging and startup improvements (#3038)
* Logging and startup improvements

Color support for released binaries!

* startup scripts no longer log to file by default - this only affects
source builds - released binaries don't support file logging
* add --log-stdout option to control logging to stdout (colors, json)
* detect tty:s vs redirected logs and log accordingly
* add option to disable log colors at runtime
* simplify several "common" logs, showing the most important information
earlier and more clearly
* remove line numbers / file information / tid - these take up space and
are of little use to end users
  * still enabled in debug builds and tools
* remove `testnet_servers_image` compile-time option
* server images, released binaries and compile-from-source now offer
the same behaviour and features
* fixes https://github.com/status-im/nimbus-eth2/issues/2326
* fixes https://github.com/status-im/nimbus-eth2/issues/1794
* remove instanteneous block speed from sync message, keeping only
average

before:

```
INF 2021-10-28 16:45:59.000+02:00 Slot start                                 topics="beacnde" tid=386429 file=nimbus_beacon_node.nim:884 lastSlot=2384027 wallSlot=2384028 delay=461us84ns peers=0 head=75a10ee5:3348 headEpoch=104 finalized=cd6804ba:3264 finalizedEpoch=102 sync="wwwwwwwwww:0:0.0000:0.0000:00h00m (3348)"
INF 2021-10-28 16:45:59.046+02:00 Slot end                                   topics="beacnde" tid=386429 file=nimbus_beacon_node.nim:821 slot=2384028 nextSlot=2384029 head=75a10ee5:3348 headEpoch=104 finalizedHead=cd6804ba:3264 finalizedEpoch=102 nextAttestationSlot=-1 nextProposalSlot=-1 nextActionWait=n/a
```

after:

```
INF 2021-10-28 22:43:23.033+02:00 Slot start                                 topics="beacnde" slot=2385815 epoch=74556 sync="DDPDDPUDDD:10:5.2258:01h19m (2361088)" peers=37 head=eacd2dae:2361096 finalized=73782:a4751487 delay=33ms687us715ns
INF 2021-10-28 22:43:23.291+02:00 Slot end                                   topics="beacnde" slot=2385815 nextActionWait=n/a nextAttestationSlot=-1 nextProposalSlot=-1 head=eacd2dae:2361096
```

* fix comment

* documentation updates

* mention `--log-file` may be deprecated in the future
* update various docs
2021-11-02 18:06:36 +01:00
Jacek Sieka 0c4bfb1911
test fixture cleanups (#2976)
* "official" -> "scenarios", like the submodule
* fewer test binaries - various compile hacks have been improved over
time, test suite should follow
* remove obsolete bls tests - there are better test vectors in
nim-blscurve
* remove obsolete mentions of `ssz_testing`
* remove obsolete comments about proc vs globals, unittest2 already uses
proc's
2021-10-12 13:36:52 +02:00
tersec df48409969
enable trace-level networking logging in local simulation (#2780)
* enable trace-level networking logging in local simulation

* remove Jenkinsfile overrides
2021-08-13 14:12:40 +00:00
tersec 61825f4979
add aggregated attestation tracing to logtrace and enable it in Jenkins (#2766)
* add aggregated attestation tracing to logtrace and enable it in Jenkins CI

* use a slightly less cryptic acronym than aasr

* mostly, nimbus and the eth2 spec use aggregate attestation, not aggregated attestation
2021-08-06 21:25:30 +00:00
Ștefan Talpalaru 17c94c4d8e
restapi.sh: prevent port clashes (#2746) 2021-07-29 18:34:01 +02:00
Ștefan Talpalaru 7fe4569586
launch_local_testnet.sh: check if lsof is installed (#2742) 2021-07-27 21:45:36 +02:00
Ștefan Talpalaru 6299e14ffb
launch_local_testnet.sh: kill old procs before start (#2739) 2021-07-27 17:57:16 +02:00
Eugene Kabanov 4ba69bf54d
Disable discovery5 service for REST test. (#2738)
Run REST test before Finalization test.
2021-07-26 19:55:24 +00:00
zah d9f2a91374
Remove the obsolete testnet0/1 scripts (#2727)
Also fixes `make eth2_network_simulation`
2021-07-16 13:02:27 +03:00
Eugene Kabanov 41c2d5f040
Store REST test logs as CI artifacts. (#2699)
* Store resttest logs as artifacts.

* Specify data-dir and sleep-timeout.
2021-07-06 08:40:18 +00:00
Eugene Kabanov 32702d37a3
Move REST simulation test to Jenkins. (#2688) 2021-06-30 08:57:07 +00:00
Ștefan Talpalaru bac1a64bf6
Jenkins: disable tools/tests parallelism (#2526)
New REST test depends on a tool and, if it's missing, it builds it by
itself, thus interacting dangerously with a parallel "Tools" stage.

We give up on that parallelism because it's unlikely to provide relevant
gains, now that `make test` starts by building all test binaries.
2021-04-29 03:28:11 +02:00
Ștefan Talpalaru ee3f466dfe CI, dist: faster Nim compiler builds 2021-02-19 18:46:38 +02:00
Ștefan Talpalaru cadb1aae15
bump submodules (#2279)
* bump submodules

* undo a couple of bumps (32-bit failure)

* launch_local_testnet.sh: timeout and various fixes

* undo nim-http-utils bump (breaks RPC for VC)
2021-02-02 19:02:52 +01:00
tersec f1bb8a6a1a
don't use logtrace by default in CI (#2241) 2021-01-18 11:42:41 +01:00
tersec 6653ce3fc5
don't cancel Jenkins builds in stable, testing, and unstable (#2226) 2021-01-11 19:51:38 +01:00
Zahary Karadjov e9b9cd75ee Rename binaries; Mimic the original repo layout in the distribution 2020-11-09 11:38:52 +02:00
Mamy Ratsimbazafy c92d228ec8
Fix non-split attesting protection (#1804)
* address #1679 - att protection in non-split mode

* AttachedValidator public_key -> pubkey

* Always build with slashing protection

* Remove now unnecessary forwarding impl proc
2020-10-06 10:51:33 +02:00
Ștefan Talpalaru 3936caae4b
Jenkins: don't abort older jobs in master/devel (#1746)
* Jenkins: don't abort older jobs in master/devel

* same for Jenkinsfile.benchmarks
2020-09-25 10:26:59 +00:00
Mamy Ratsimbazafy 52548f079b
Opt-in Slashing protection + interchange (#1643)
* Slashing protection + interchange initial commit

* Restrict the when UseSlashingProtection dance in other modules

* Integrate slashing tests in other all_tests

* Add attestation slashing protection support

* Add a message that mention if built with/without slashing protection

* no op the initialization proc

* test slashing protection in Jenkins (temp)

* where to configure NIMFLAGS in Jenkins ...

* Jenkins -> ensure Built with slashing protection

* Add slashing protection complete import

* use Opt.get(otherwise)

* Don't use negation in proc name

* Turn slashing protection on by default
2020-09-16 13:30:03 +02:00
tersec 67f44d4bd2
use V=1 in Jenkinsfile (#1618) 2020-09-09 14:33:51 +00:00
Viktor Kirilov 65d7787b1e 50/50 bn/vc split for the validator keys ON by default for the testnet scripts 2020-09-01 16:39:07 +03:00
Ștefan Talpalaru 142f791ecf
Jenkins: run benchmarks (#1524)
* Jenkins: run benchmarks

* don't exit the workspace

* try calling the benchmark plugin from the config file

* pass all params

* separate Jenkins job for benchmarks
2020-08-26 17:31:46 +02:00
Jacek Sieka a7a279d615
add option to disable discv5 (#1509) 2020-08-24 13:52:06 +02:00
tersec b4f9908d9d
run logtrace in finalization CI (#1512)
* run logtrace in finalization CI

* use specified DATA_DIR rather than assuming default

* convert rest of hardcoded local_testnet_data references

* logtrace asr needs DEBUG-level logs

* clean up some shell (not) quoting issues
2020-08-17 08:36:29 +02:00
Mamy Ratsimbazafy 454b9d0724
Bump nim-blscurve (#1491)
* Bump BLSCurve

* Use unified aggregation API

* use new blscurve with unified aggregate API

* bump

* fix toRaw

* replace state_sim combine with AggregateSignature

* Fix 32-bit

* Fix 32-bit for real and test deactivating ccache for fno-tree-lopp-vectorize flag

* change compilation switches to narrow down Linux issue

* Use -fno-tree-vectorize to disable both tree-loop-vectorize and tree-slp-vectorize

* blscurve now disables both Loop and SLP vectorization

* Add tests for the miracl/milagro fallback

* Travis has max log size of 4MB

* Test with Miracl in the finalization test

* fix state_sim log level

* Coment out the slow fallback tests
2020-08-15 19:33:58 +02:00
Ștefan Talpalaru 538f11ad4f
Jenkins: abort older PR builds still in progress (#1469)
* Jenkins: abort older PR builds still in progress
2020-08-07 23:51:37 +02:00
Ștefan Talpalaru fa9f35e148
Jenkins: run local testnet test on macOS (#1391) 2020-07-29 14:08:27 +02:00
Ștefan Talpalaru ffd4bc1dd4
launch_local_testnet.sh: make node 0 the bootstrap node 2020-07-16 19:04:57 +02:00
Ștefan Talpalaru f9e159be90
Travis: disable the ARM64 job (too unreliable) (#1276)
Azure: the jsonTestsCache key needs updating
all: lighten the load a little, since only beacon_node is built with
     that flag in production
2020-07-03 10:04:04 +00:00
Ștefan Talpalaru 67a1242d02
Jenkins: archive testnet logs as artifacts 2020-06-11 00:13:25 +02:00
Ștefan Talpalaru e4173860f0
bump vendor/nimbus-build-system (#1050)
* bump vendor/nimbus-build-system

* Jenkins: switch to Bash for the "Build" stage
2020-05-21 00:02:05 +02:00
Ștefan Talpalaru 8b4065bc19
Jenkins: support running 2 parallel jobs on the same node (#1025)
* Jenkins: support running 2 parallel jobs on the same node

* try escaping $
2020-05-14 19:34:47 +02:00
Ștefan Talpalaru 784c5e3d73
Jenkins: add timeouts to testnet finalisation tests (#947)
* Jenkins: add timeouts to testnet finalisation tests

- add nicer child process management to "launch_local_testnet.sh"
- correct a comment in "start.sh"

* the Jenkins worker's version of "timeout" doesn't support "-v"
2020-04-30 13:59:57 +00:00
Ștefan Talpalaru d01eca677d
Jenkins: update submodules before caching kicks in 2020-04-20 16:34:36 +02:00
Ștefan Talpalaru 9974b4bd7b
Jenkins: frak it, we're doing it live 2020-04-19 13:36:11 +02:00
Ștefan Talpalaru 2bb54fc09d
Jenkins fix 2020-04-19 13:22:22 +02:00
Ștefan Talpalaru 3dde68fc20
Jenkins: change "Workspace Cleanup" plugin's strategy 2020-04-19 13:17:02 +02:00
Ștefan Talpalaru 82f28d7718
Jenkins: clean the workspace before starting 2020-04-19 12:48:36 +02:00
Ștefan Talpalaru a941a4fded
debug Jenkins 2020-04-19 12:41:40 +02:00
Ștefan Talpalaru 1babc00255
new initial submodule update strategy (#904)
* new initial submodule update strategy

* Azure: fix command order
2020-04-19 01:25:21 +02:00
Ștefan Talpalaru 7435c2010f
remove last traces of Go support
You'll have to run `chmod -R 755 vendor/go && rm -rf vendor/go` locally.
2020-04-15 14:38:42 +02:00
Ștefan Talpalaru 708ac80dae
Jenkins: reduce the local testnet's log level (#852) 2020-04-02 08:58:03 +00:00