aboutsummaryrefslogtreecommitdiff
path: root/tests/chutney/setup
Commit message (Collapse)AuthorAgeFilesLines
* integration-e2e-shadow: change default data-dir to TOPLEVEL/chutney-netJim Newsome2026-07-231-1/+3
|
* chutney test: include arti-extra binJim Newsome2026-03-111-0/+43
| | | | | Test the arti-extra bin, which includes most of `full` and `experimental` features, too.
* chutney ci: convert chutney-script to a normal python moduleJim Newsome2026-03-111-5/+6
| | | | | | | | | | | | | This will give us a bit more flexibility, e.g. to pass additional arguments. Now that the python linters understand it, we fix some linting issues. We preserve the ability to run the test on other networks by making the Config.network optional. The new default of `None` means to use the built-in module to create the network. The functionality of the test itself is the same.
* chutney test setup: use explicit namespace destJim Newsome2026-03-091-10/+27
| | | | | This helps avoid subtle mismatches of the sort fixed in the previous commit.
* chutney test setup: fix override for arti-bench-binJim Newsome2026-03-091-1/+1
| | | | | We were accidentally using the arti-bin command-line arg to also override arti-bench-bin.
* chutney setup: no longer dump shell snippetJim Newsome2026-03-091-13/+0
| | | | Everything now uses the json version, instead.
* chutney test: drop jq dependencyJim Newsome2026-03-041-24/+0
|
* chutney test: dump config as json, for use by python scriptsJim Newsome2026-03-041-1/+3
|
* chutney Config: use json-friendly typesJim Newsome2026-03-041-5/+5
| | | | | In particular, use `str` instead of `Path`, so that it's directly encodable and decodable by the json module.
* chutney CI: move config class to a module for reuseJim Newsome2026-03-041-10/+5
|
* tests/chutney/setup: use shlex.quoteJim Newsome2026-01-211-6/+10
| | | | | | Previously this was naively wrapping strings in double-quotes. This works ok for escaping internal whitespace, but doesn't escape other special characters.
* Bump chutneyJim Newsome2026-01-211-2/+4
| | | | Bump chutney, and migrate to CLI changes introduced in chutney!101
* Bump blackJim Newsome2026-01-211-24/+8
|
* chutney ci: make arti-bench bin configurableJim Newsome2025-10-091-0/+41
| | | | Also search several candidate paths.
* chutney ci setup: encapsulate config as a wholeJim Newsome2025-09-291-23/+35
| | | | | | This is partly just to get more code out of "main", but also paves the way a bit for reusing this config code in the `integration-e2e-shadow` wrapper script, to support the same command-line arguments there.
* chutney CI: store and use jq pathJim Newsome2025-09-291-2/+1
| | | | | | Since we're validating the presence of jq, we might as well handle it consistently with the other dependencies and provide a way to specify where it is.
* chutney setup: refactor config options into Resolver objectsJim Newsome2025-09-291-79/+127
| | | | | | Encapsulate the logic of finding and validating each option into their own objects (e.g. so that specification of corresponding command-line option goes together with other related logic).
* chutney ci: remove CHUTNEY_BIN env variableJim Newsome2025-09-291-3/+1
| | | | | | This wasn't a pre-existing environment variable, and now it can be set via command-line if it needs to be overridden. I don't see much reason to use an environment variable here.
* chutney ci setup: allow bin locations to be set by cmd lineJim Newsome2025-09-291-20/+36
|
* chutney setup: break into functionsJim Newsome2025-09-291-36/+50
|
* chutney ci: rewrite setup script in pythonJim Newsome2025-09-291-92/+75
| | | | | We avoid much refactoring at this step to minimize functional changes from the shell script.
* chutney ci: move "chutney bootstrap" from `setup` to `bootstrap`Jim Newsome2025-09-291-2/+0
| | | | | | This makes the `setup` script a bit more clearly single-purpose of resolving and storing the configuration, without actually acting on it yet.
* chutney ci: move "chutney verify" test from `setup` to `test`Jim Newsome2025-09-291-1/+0
| | | | | | | | | It made sense to have this as part of the setup when the chutney network itself didn't include arti; i.e. this used to be just validating the non-chutney tor network before adding chutney nodes. Now that the chutney network natively includes arti nodes, `chutney verify` is testing those nodes; i.e., testing arti.
* Integration testing: use quicktest buildJim Newsome2025-08-261-1/+5
|
* chutney ci: use "chutney bootstrap" to support multi-phase networksJim Newsome2025-08-111-3/+1
| | | | | | | | | 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.
* CI: increase CHUTNEY_START_TIME to defaultJim Newsome2025-08-111-1/+1
| | | | | | | | | | | 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.
* chutney CI: Remove no-op PROXY moduleJim Newsome2025-06-051-8/+1
| | | | An arti proxy is already started as part of the chutney network.
* chutney test: remove extra arti processJim Newsome2025-06-051-41/+0
|
* chutney CI: add and use custom network with arti and tor clientsJim Newsome2025-06-051-1/+2
|
* chutney CI: set CHUTNEY_ARTI before configuring chutney networkJim Newsome2025-06-051-15/+17
| | | | This is needed to support chutney networks containing arti nodes.
* chutney CI: get tor client port for arti-bench more robustlyJim Newsome2025-06-051-0/+9
| | | | | Use the new exported json metadata to get a tor client port instead of hard-coding it.
* tests: remove 'cargo build' from chutney setupSteven Engler2025-04-171-2/+9
|
* Replace CHUTNEY_PATH with CHUTNEY_BINJim Newsome2024-11-061-18/+24
| | | | | | 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.
* chutney test: reference network as built-in instead of full pathJim Newsome2024-11-061-10/+5
| | | | | | | | 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.
* chutney test: rework installation and tracking of chutney itselfJim Newsome2024-09-181-0/+3
| | | | | | | | | | | 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.
* make chutney setup script more portabletrinity-1686a2023-07-101-3/+1
|
* fix chutney in CItrinity-1686a2023-07-081-3/+12
|
* shell: use /usr/bin/env instead of absolute pathsEmil Engler2023-01-251-1/+1
| | | | | | | | | | 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
* test/chutney/setup: Set allow_running_as_root as needed.Nick Mathewson2022-08-241-1/+9
|
* make almost all scripts use bash and set euo pipefailtrinity-1686a2022-05-251-2/+2
|
* chutney test stop network when arti died or did not starttrinity-1686a2022-05-051-1/+1
|
* Use port 35353 for testing, not 5353.Nick Mathewson2022-03-151-1/+1
| | | | | Apparently 5353 is commonly used for mDNS, and so counts as "already in use" on many consumer machines.
* add simple unit test on UDPtrinity-1686a2022-03-141-1/+1
|
* add integration test and fill semver_statustrinity-1686a2022-03-141-1/+1
|
* tests/chutney/setup: Transfer changes from just-deleted codeIan Jackson2022-03-111-3/+3
| | | | | | | 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.
* tests/chutney: Merge chutney-launching scriptsNick Mathewson2022-03-101-1/+52
| | | | | | | | | 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.
* chutney/setup: Wait for port 9150 to open after launching artiNick Mathewson2022-02-281-1/+15
| | | | | This is not a replacement for a real startup protocol, but it may help repair our CI.
* tests/chutney/setup: Reduce sleepIan Jackson2022-02-181-1/+3
| | | | Now that arti listens immediately, a very short sleep ought to do.
* rename *.sh scripts to bare nameIan Jackson2022-02-181-0/+47
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.