Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deterministic simulation for sui tests #4429

Merged
merged 32 commits into from
Sep 9, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
27a3056
Changes for starting simulator swarm
mystenmark Aug 26, 2022
926aac7
Don't start jsonrpsee or prometheus servers in simulator
mystenmark Aug 26, 2022
d22e5c4
Make start_console work when Send is required
mystenmark Aug 26, 2022
3e9f303
simulator determinism tests
mystenmark Aug 27, 2022
e03651b
Add sui-macros crate for #[sui_test] and #[sim_test]
mlogan Aug 29, 2022
bdf8bc6
Add cargo-simtest subcommand for running simulator tests
mlogan Aug 30, 2022
da878df
Convert some fullnode tests to sui_test
mlogan Aug 30, 2022
1103e57
Add madsim deps (NOTE: fix, uses local paths)
mlogan Aug 30, 2022
0cfa1ff
Disable event processing on fullnode in simulator, for determinism
mlogan Aug 29, 2022
a6c69d5
network_config_snapshot_matches cannot run in a simulator build
mlogan Aug 30, 2022
d5f0551
Don't crash by trying to kill nodes if the runtime has shut down
mlogan Aug 30, 2022
8c709bc
Fix hash container non-determinism
mlogan Aug 31, 2022
4eff852
Stop nodes when swarm is dropped
mlogan Aug 31, 2022
38225d0
Remove unneeded log init
mlogan Aug 31, 2022
1d18de8
Make lock_service calls block in the simulator for determinism
mlogan Sep 1, 2022
8080ae0
Create deterministic local addresses for nodes not built by swarm (e.…
mlogan Aug 31, 2022
74f9b2c
madsim -> msim
mlogan Sep 1, 2022
e29fece
Replace local paths with git pointers
mlogan Sep 1, 2022
05a044a
Fix ordinary #[test]s in simulator
mlogan Sep 1, 2022
2c4a09f
Add github workflow
mlogan Sep 1, 2022
2389e2a
Update deps
mlogan Sep 1, 2022
b7d671e
Move sim-specific container stuff to separate module
mlogan Sep 6, 2022
298826d
Fix lints
mlogan Sep 6, 2022
da7b1e9
Update mysten-sim dep
mlogan Sep 6, 2022
3d0f675
Make the installed cargo-simtest script invoke the one in version con…
mlogan Sep 6, 2022
e860c6e
skip tests that don't run well in simulator
mlogan Sep 6, 2022
fd04f0a
Fix license check
mlogan Sep 6, 2022
ea06d8f
Add workspace hack deps
mlogan Sep 6, 2022
df314eb
Simplify config builder
mlogan Sep 7, 2022
5fee9d1
Disable unneeded simulator tests
mlogan Sep 7, 2022
ea62763
Update Cargo.lock
mlogan Sep 9, 2022
ac5d588
PR comments
mlogan Sep 9, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .cargo/config
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,3 @@ xclippy = [
"-Wclippy::disallowed_methods",
]
xlint = "run --package x --bin x -- lint"

13 changes: 13 additions & 0 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,19 @@ jobs:
- run: scripts/changed-files.sh
shell: bash

simtest:
needs: diff
if: needs.diff.outputs.isRust == 'true'
timeout-minutes: 45
runs-on: [ubuntu-ghcloud]
steps:
- uses: actions/checkout@v3
- uses: actions-rs/toolchain@v1
- uses: taiki-e/install-action@nextest
- name: cargo simtest
run: |
scripts/simtest/cargo-simtest simtest

# This is a no-op job that allows the resulting action names to line up when
# there are no rust changes in a given PR/commit. This ensures that we can
# continue to block on the rust tests passing in the case of rust changes and
Expand Down
164 changes: 145 additions & 19 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading