| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
|
|
| |
In particular, this is to avoid floods of:
> compute_drain_rate(): Bug: Computing stream drain rate with zero time delta
in tor logs.
|
| |
|
|
|
|
| |
arti isn't trying to use conflux yet, but the tor nodes are. Things
were stumbling along without this, but adding it reduces some log noise,
and might help with consistency.
|
| |
|
|
|
|
| |
This reduces some noise and warnings, and may help with consistency.
e.g. this avoids everything trying to repeatedly contact the directory
authorities before they're up.
|
| |
|
|
|
|
|
|
|
| |
In this commit there should be little effective difference, other than
combining the "setup", "configure", and "wait_for_bootstrap" steps.
"chutney bootstrap" also support multi-phase networks, though, in which
chutney waits for some nodes to fully bootstrap before bringing up other
nodes.
|
| |
|
|
|
|
|
|
|
|
|
| |
This is the time we wait for the network to bootstrap before giving up.
With the larger network we seem to need this extra time.
We've already increased the default in chutney to 300; no reason to use
a smaller value here.
Keep the explicit-setting for now as a convenience in case we want to
modify it again.
|
| | |
|
| |
|
|
| |
Authorities also function as exit relays; we don't need to add so many.
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
An arti proxy is already started as part of the chutney network.
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
This is needed to support chutney networks containing arti nodes.
|
| |
|
|
|
| |
Use the new exported json metadata to get a tor client port instead of
hard-coding it.
|
| |
|
|
|
| |
Also update the hard-coded tor client port here to match updates
to the chutney network.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Since this significantly affects the behavior of the simulation, it's
probably worth having it in the yaml. (It can of course still be
overridden from the command-line).
|
| |
|
|
|
|
| |
Since this significantly affects the behavior of the simulation, it's
useful to have it in the yaml for reference or if the simulation is
manually rerun from the yaml.
|
| |
|
|
|
|
|
|
| |
This should make the simulation results generally more stable with
respect to small perturbations, such as adding logging.
It also causes a previous "heisenbug" failure in this test to reliably
reproduce in every run.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
Previously shadow would report a platform of "shadowsys" in the uname
syscall, which would cause chutney to disable sandboxing by default.
As of https://github.com/shadow/shadow/pull/3442, shadow now returns
"Linux", which causes the chutney default to enable sandboxing.
When sandboxing is enabled, the tor processes abort with error, since
shadow doesn't support the seccomp syscall.
|
| | |
|
| |
|
|
|
|
| |
We no longer need a path to a checkout of the chutney repository; we
just need the chutney binary itself. We still allow this to be set
explicitly with CHUTNEY_BIN, but fall back to finding it on the PATH.
|
| |
|
|
|
|
|
|
| |
This takes advantage of a feature added in
https://gitlab.torproject.org/tpo/core/chutney/-/merge_requests/31.
This is a step towards not needing to set CHUTNEY_PATH to point to a
chutney repository.
|
| |
|
|
|
|
| |
The `black` formatter did most line wrapping for us, and we accept
its default of 88 characters there, but for comments and docstrings
(which black doesn't wrap) we allow up to 99 characters.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Black" is an "opinionated" python formatter, whose opinionatedness
is somewhat in the spirit of rustfmt.
This MR runs black with default settings on all of our python code
in Arti. It was produced by the following commands
```
# Everything in python/
black python/
# Everything with a .py extension
fd '.py$' -X black
# Everything with a python shebang.
git grep -l '#! */usr/bin/env *python' | xargs black
```
|
| |
|
|
|
| |
This is a wrapper script for running `tests/chutney/integration-e2e`
under shadow.
|
| |
|
|
|
|
|
|
|
|
|
| |
Previously `tests/chutney/setup` would locate *or install* chutney and
set `CHUTNEY_PATH` for itself. However that `CHUTNEY_PATH` wasn't
propagated to other steps or "up" to the new `integration-e2e` wrapper
script.
Tracking it in the arti.run along with other dynamic info lets us ensure
we consistently use the same chutney across steps, and in the higher
level `integration-e2e` script.
|
| | |
|
| |
|
|
|
|
| |
It looks like it changed at some point. Rather than hard-coding,
just do the lookup locally and compare the tor-lookup result against
that.
|
| |
|
|
|
|
|
| |
Having this in a script is a step towards being able to run exactly the
same test under shadow without duplicating this high-level logic.
It's also convenient for running the ci test locally.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
This commit changes the shebang in all shell scripts from absolute
paths (such as `/bin/bash` or `/usr/bin/python3`) to the `/usr/bin/env`
binary with the accompanying interpreter as it's argument.
The reason for this are as follows:
- NixOS cannot work with absolute paths
- BSD systems install their packages in /usr/local/bin
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Apparently 5353 is commonly used for mDNS, and so counts as "already in
use" on many consumer machines.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
It turns out that the clone-and-hack in tests/chutney/arti-bench
was not identical to the original in tests/chutney/setup.
I diffed the two and preferred the version from arti-bench.
|