Commit Graph

49 Commits

Author SHA1 Message Date
Gabriela Moldovan 0260405603
arti-client: Use the config struct from tor-keymgr. 2023-07-13 12:29:57 +01:00
Gabriela Moldovan d684073a31
CI: Reduce the success threshold for the HS client integration tests.
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1399#note_2921505
2023-07-12 17:11:56 +01:00
Gabriela Moldovan 24501fdf0e
CI: Add client auth integration test. 2023-07-12 16:36:11 +01:00
trinity-1686a 4fc779faa2 make chutney setup script more portable 2023-07-10 18:46:14 +02:00
trinity-1686a c98894cebc fix chutney in CI 2023-07-08 12:31:20 +02:00
Jim Newsome 3eda3a7936 articlient-onion: don't filter onion addresses 2023-07-03 14:15:23 -05:00
Jim Newsome 3b01f3ba61 Dedupe arti configs and match TestingTorNetworks HS config 2023-07-03 14:15:23 -05:00
Jim Newsome 2b895f4de3 shadow test: disable trace-level logging
Some hosts were configured to log at trace level instead of the global
default (debug level). This was resulting in quite large shadow log
output.
2023-07-03 12:49:14 -05:00
Jim Newsome 5755add5e0 shadow test: disable worker spinning
This optimization doesn't seem to help much for this test; disable it to
avoid burning CI runner CPU.
2023-07-03 12:49:14 -05:00
Jim Newsome 3dc90f03ec shadow test: enable arti's `log_sensitive_information` option 2023-07-03 12:49:14 -05:00
Jim Newsome e773d2c44a shadow test: fix hidden service dir permissions 2023-07-03 12:49:14 -05:00
Jim Newsome 1baa1193ce shadow test: add 2 more relays
Without this, the onion client was failing to find a guard.
We recently made this change in shadow's "tor minimal" test as well.
2023-07-03 12:49:14 -05:00
Jim Newsome c846898406 shadow test: fail the test if streams didn't succeed 2023-07-03 12:49:14 -05:00
Jim Newsome 9c3bb8dcbb shadow test: add and validate arti onion client 2023-07-03 12:49:14 -05:00
Jim Newsome e850654afb shadow test: add onion server 2023-07-03 12:49:14 -05:00
Jim Newsome d282b009bd shadow-ci: check for successful transfers on bridge-client as well 2023-05-22 13:41:52 -05:00
Jim Newsome 893ea38100 shadow ci: bump shadow 2023-05-22 13:40:44 -05:00
Emil Engler 79097484de
shell: use /usr/bin/env instead of absolute paths
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
2023-01-25 18:35:53 +01:00
Jim Newsome 7014697d0b shadow ci: avoid hard coding tgen and tor bin paths
As of shadow 2.3, shadow can locate executables from the PATH, letting
us avoid hard-coded paths here.
2022-12-19 13:29:05 -06:00
Jim Newsome 42b62d7281 shadow ci: only do pcap capture for bridge client 2022-12-19 13:29:05 -06:00
Dimitris Apostolou 5452ee1b01
Fix typo 2022-12-12 21:36:57 +02:00
trinity-1686a 6846b7d247 verify leakage and run shadow with less shm 2022-11-30 18:40:59 +01:00
trinity-1686a 921a525fad add vanila bridge to shadow sim 2022-11-30 18:40:20 +01:00
Jim Newsome cc8ced13ea shadow ci: Set stop time to 30m instead of 27m
This was a temporary stop-gap to work around a busy loop that seemed to
happen before. I am no longer able to reproduce any such problem.
2022-10-14 16:48:24 -05:00
Jim Newsome cef9a7b65a Create a shadow-based integration test
Fixes https://gitlab.torproject.org/tpo/core/arti/-/issues/174
2022-10-05 12:48:45 -05:00
Nick Mathewson 8332e613f4 test/chutney/setup: Set allow_running_as_root as needed. 2022-08-24 10:57:03 -04:00
trinity-1686a 0dccb567be add default chutney path to arti-bench script 2022-05-26 21:09:06 +02:00
trinity-1686a 8eb843f2af make almost all scripts use bash and set euo pipefail 2022-05-25 22:25:58 +02:00
Jim Newsome 48e1c75584 chutney/teardown: validate that pid is set 2022-05-23 13:07:59 -04:00
trinity-1686a ee9730cab4 chutney test stop network when arti died or did not start 2022-05-05 13:12:30 +02:00
Nick Mathewson c16c4c3845 Use port 35353 for testing, not 5353.
Apparently 5353 is commonly used for mDNS, and so counts as "already in
use" on many consumer machines.
2022-03-15 08:26:45 -04:00
trinity-1686a 3a6eac1367 comment AAAA test and explain why it's disabled 2022-03-14 21:19:20 +01:00
trinity-1686a f4581ffd04 add simple unit test on UDP 2022-03-14 21:19:20 +01:00
trinity-1686a b7daa9ff12 add integration test and fill semver_status 2022-03-14 21:19:19 +01:00
Ian Jackson b7678582cd tests/chutney/setup: Transfer changes from just-deleted code
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.
2022-03-11 14:08:02 +00:00
Nick Mathewson dcd74e7a64 tests/chutney: Merge chutney-launching scripts
Formerly, the "launch a chutney network" code was duplicated in
"setup" and "arti-bench", since "setup" always launched an arti
proxy, while "arti-bench" didn't want that functionality.

Now the "setup" script launches an arti proxy conditionally,
depending on whether the "proxy" argument is given.
2022-03-10 12:29:28 -05:00
Nick Mathewson 0634d12f2b chutney/setup: Wait for port 9150 to open after launching arti
This is not a replacement for a real startup protocol, but it may
help repair our CI.
2022-02-28 15:30:18 -05:00
Ian Jackson 59fb3a6040 tests/chutney/setup: Reduce sleep
Now that arti listens immediately, a very short sleep ought to do.
2022-02-18 14:08:37 +00:00
Ian Jackson 9aefbf4227 rename *.sh scripts to bare name
As per #309

Update all references.  There is one remaining hit for
  git-grep '\.sh\b'
namely "build.sh" in maint/reproducible_build, which I think is
the build script for osxcross - ie, an external project.
2022-02-18 11:46:06 +00:00
eta 05046626f3 arti-bench: run the benchmarks in CI, and keep the results
This adds `arti-bench` to the `integration` job in the CI pipelines, and
keeps around the JSON benchmark output for later comparison.
2022-02-03 18:31:32 +00:00
Nick Mathewson 83a01725d7 Fix/suppress shellcheck errors in teardown.sh
Rationale: It's good to have all of our scripts pass shellcheck.
2022-01-27 14:24:12 -05:00
Nick Mathewson 032b0d2575 arti-bench.sh: Handle the case where CHUTNEY_PATH is set.
Previously, this case would cause arti-bench to hang forever, trying
to bootstrap against one network while another network was running.
2021-12-21 09:54:16 -05:00
Nick Mathewson ba6828d9fe arti-bench.sh: set $RUST_LOG if it isn't set.
(An empty $RUST_LOG no output, and confuse the nickm^Wuser.)
2021-12-21 09:54:16 -05:00
Nick Mathewson 584e46d619 tests/chutney/setup.sh: Fix a shellcheck warning.
shellcheck doesn't like `export FOO="$(bar)"` as one line, since it
has the possibility of missing errors.
2021-12-21 09:54:16 -05:00
eta 06a94288ca Introduce an experimental benchmarking utility for Arti
The new `arti-bench` crate does a simple end-to-end benchmark test
embedding Arti: it generates some random data (of configurable amount,
depending on command-line parameters), and then sends said data back and
forth via Arti (which should be configured to use a local Chutney
network).

Additionally, the benchmark can also be run via a local SOCKS5 server
(in order to benchmark the performance via a local Chutney node, for
comparison).

The `tests/chutney/arti-bench.sh` sets up and tears down Chutney as
required to make this work.

This is very much a first cut; there are many things that should
eventually get added, such as support for multiple connections, JSON
output capabilities, running multiple tests, ...
2021-12-16 16:12:59 +00:00
Nick Mathewson 9f9bb3e4c1 chutney: Make $target relative to ${CHUTNEY_PATH}
This is per a suggestion from @trinity-1686a.
2021-12-05 16:04:46 -05:00
Nick Mathewson b009e31410 When tearing down test net, always tear down test net :)
Previously, if the arti process had died or been killed, we wouldn't
reach the point where we called "chutney stop".
2021-12-02 09:25:28 -05:00
Nick Mathewson ec2245164f Detect and use CHUTNEY_PATH in test scripts.
If the user has CHUTNEY_PATH set, respect that value, rather than
cloning a local chutney.

Also, if we have a local chutney, then update it in case there have
been changes.
2021-12-02 09:22:52 -05:00
Trinity Pointard 0438a3da93 move integration tests to scripts 2021-10-28 11:28:22 -04:00