Chutney issueshttps://gitlab.torproject.org/tpo/core/chutney/-/issues2020-08-07T13:16:23Zhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/33230Prop 311: 6.1. Ask Relay Operators to Test IPv6 Reachability2020-08-07T13:16:23ZteorProp 311: 6.1. Ask Relay Operators to Test IPv6 ReachabilitySee legacy/trac#33229 for advice on testing stages.
Write an email to the tor-relays list, asking relay operators to help test the proposal 311 IPv6 ORPort Reachability and Extends changes.
Once these changes are merged, volunteer rela...See legacy/trac#33229 for advice on testing stages.
Write an email to the tor-relays list, asking relay operators to help test the proposal 311 IPv6 ORPort Reachability and Extends changes.
Once these changes are merged, volunteer relay and bridge operators will be able to test them by:
* compiling from source,
* running nightly builds, or
* running alpha releases.
See proposal 311, section 6.1, relay operator test part:
https://gitweb.torproject.org/torspec.git/tree/proposals/311-relay-ipv6-reachability.txt#n671Sponsor 55: Improving the Tor network’s IPv6 supportNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/24005PredictedPortsRelevanceTime is obsolete, remove it2020-06-27T13:18:47ZteorPredictedPortsRelevanceTime is obsolete, remove ithttps://gitlab.torproject.org/tpo/core/chutney/-/issues/13887Pick a reporting format for Chutney2020-07-23T20:07:43ZNick MathewsonPick a reporting format for ChutneyWe need some way for Chutney to tell another process about the events it's seeing.
Options include CTF, json, protocolbufs, line-based text.
See https://lists.torproject.org/pipermail/tor-dev/2014-December/007898.html for a synopsis of...We need some way for Chutney to tell another process about the events it's seeing.
Options include CTF, json, protocolbufs, line-based text.
See https://lists.torproject.org/pipermail/tor-dev/2014-December/007898.html for a synopsis of goals.
I'm especially interested in dgoulet's opinion on CTF in particular.
I'm especially interested in atagar's opinion about what would be friendliest to a stem-based chutney.https://gitlab.torproject.org/tpo/core/chutney/-/issues/40007Our IPv6 networks must have at least 2 IPv6 relays2020-07-21T18:55:46ZDavid Gouletdgoulet@torproject.orgOur IPv6 networks must have at least 2 IPv6 relaysWithout this, the relays in our IPv6 network can NOT self-test properly because they are never able to find a second hop for the self test circuit that supports IPv6 `EXTEND`.Without this, the relays in our IPv6 network can NOT self-test properly because they are never able to find a second hop for the self test circuit that supports IPv6 `EXTEND`.David Gouletdgoulet@torproject.orgDavid Gouletdgoulet@torproject.orghttps://gitlab.torproject.org/tpo/core/chutney/-/issues/40002os.path and pathlib2020-08-02T21:48:20Zcos.path and pathlibThere is a mix of `os.path.join()` calls and simple string concatenation throughout the code. Examples: `getTests()` versus `make_datadir_subdirectory()` in TorNet.py (also, just noticed the mixed camelCase and snake_case which might des...There is a mix of `os.path.join()` calls and simple string concatenation throughout the code. Examples: `getTests()` versus `make_datadir_subdirectory()` in TorNet.py (also, just noticed the mixed camelCase and snake_case which might deserve its own style ticket).
I think we want to be consistent with path handling, but has pathlib been taken into consideration to make it more self-documenting where Chutney needs to deal with paths?cchttps://gitlab.torproject.org/tpo/core/chutney/-/issues/15783On chutney verify failure, inform user about debug mode2020-06-27T13:19:03ZteorOn chutney verify failure, inform user about debug modeWhen chutney verify fails, tell the user how to activate debug mode by editing the source code.
Eventually, we'll make debug mode an argument, see legacy/trac#15418.When chutney verify fails, tell the user how to activate debug mode by editing the source code.
Eventually, we'll make debug mode an argument, see legacy/trac#15418.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/33050O1.3 - Integration test Tor relays over IPv6 using chutney2020-08-14T12:37:42ZGabagaba@torproject.orgO1.3 - Integration test Tor relays over IPv6 using chutneyTest the implementation of Sponsor 55, using chutney.
For details, see:
Proposal 311: Tor Relay IPv6 Reachability:
https://gitweb.torproject.org/torspec.git/tree/proposals/311-relay-ipv6-reachability.txt
Proposal 312: Tor Relay Automa...Test the implementation of Sponsor 55, using chutney.
For details, see:
Proposal 311: Tor Relay IPv6 Reachability:
https://gitweb.torproject.org/torspec.git/tree/proposals/311-relay-ipv6-reachability.txt
Proposal 312: Tor Relay Automatic IPv6 Address Discovery:
https://gitweb.torproject.org/torspec.git/tree/proposals/312-relay-auto-ipv6-addr.txt
Proposal 313: Tor Relay IPv6 Statistics:
https://gitweb.torproject.org/torspec.git/tree/proposals/313-relay-ipv6-stats.txt
See the implementation order in:
* Objective 1.1 - legacy/trac#33048
* Objective 1.2 - legacy/trac#33049
* Objective 1.4 - legacy/trac#33051
* Objective 1.5 - legacy/trac#33052
Children:
* [x] tor#33280 Add a "make test-network-ipv6" target, which runs IPv6 chutney networks
* [x] chutney#33793 Avoid some race conditions when running chutney networks in series
* [x] chutney#33675 Search microdescriptor files for relay ed25519 keys
* [x] chutney#33676 Stop waiting a set time for microdescriptors
* [x] tor#33300 Add a basic IPv6 test to "make test-network"
* [x] chutney#33428 Make chutney check for relay microdescriptors before verifying
* [x] chutney#33302 Run bridges+hs-v23 as Chutney's default network
* [x] tor#33303 Travis: Only run IPv6 chutney tests on macOS
* [x] chutney#33304 Chutney tries to convert empty pid string to integer
* [x] tor#4631 Idea to make consensus voting more resistant
* [x] tor#32792 Copy chutney CI diagnostics to Tor's chutney job
* [ ] chutney#33825 Make Environ handle "in" and "get()" like a dict
* [x] chutney#33957 Unexpected keyword argument 'bufsize' in subprocess.check_output()
* [x] tor#33194 Sort Travis jobs in speed order
* [x] tor#33195 Require IPv6 tests in Travis CI
* [ ] tor#33582 Make bridges wait until they have bootstrapped, before publishing their descriptor
* [x] chutney#33583 Stop setting AssumeReachable on chutney relays and bridges
* [x] tor#28208 Run bridges+hs-v23 for make test-network
* [x] chutney#33333 Add a mixed+hs-v23-ipv6 network to chutney
* [x] tor#33334 Add a mixed+hs-v23-ipv6 network to tor's test-network
* [x] chutney#33595 Stop waiting for unchecked directory info
* [x] chutney#33596 Fix or disable mixed+hs-v2 for Tor 0.3.5
* [ ] chutney#33598 chutney does not fail on some SOCKS errors
* [x] chutney#33353 Split chutney's diagnostics into a new script
* [x] chutney#33609 Check that onion services have successfully posted descriptors before verifying
* [x] chutney#33228 Prop 311: 6.1. Test IPv6 ORPort Reachability using Chutney
* [x] tor#33358 Update dir-spec for consensus voting improvements
* [ ] chutney#33231 Prop 311: 6.3. Test Legacy Relays Accept IPv6 Extends using Chutney
* [x] chutney#33232 Test IPv4 Reachability using Chutney
* [x] chutney#33615 Wait for at least 60 seconds for 0.3.5 and earlier to bootstrap
* [x] chutney#33376 Update the networks in Chutney's CI to match Tor's new test-network*
* [x] chutney#33250 Test IPv4 Address Detection using Chutney
* [x] chutney#33251 Prop 312: 5.1. Test Relay IPv6 Addresses Discovery using Chutney
* [x] chutney#33378 Require chutney node bootstrap before running verify
* [x] chutney#33379 Make chutney wait for all relays in the consensus before verifying
* [ ] chutney#34037 Make chutney check tor's logs for reachability self-test success
* [x] tor#33918 Stop truncating IPv6 addresses in channel logsSponsor 55: Improving the Tor network’s IPv6 supporthttps://gitlab.torproject.org/tpo/core/chutney/-/issues/32820Move the chutney pypy jobs to 0.4.2 xenial2020-06-27T13:18:36ZteorMove the chutney pypy jobs to 0.4.2 xenialTor master will soon be unsupported on Travis xenial, because Travis xenial only has OpenSSL 1.1.0. (See legacy/trac#31820.)
So we need to move the pypy jobs to Tor 0.4.2 xenial, because pypy isn't packaged for Travis Bionic yet.Tor master will soon be unsupported on Travis xenial, because Travis xenial only has OpenSSL 1.1.0. (See legacy/trac#31820.)
So we need to move the pypy jobs to Tor 0.4.2 xenial, because pypy isn't packaged for Travis Bionic yet.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/9087Move network tests out of TorNet.py2020-06-27T13:19:07ZLinus Nordberglinus@torproject.orgMove network tests out of TorNet.pyAs Nick points out in legacy/trac#8531, it's far from perfect that new network
tests need to go into TorNet.py.
Maybe read a config file or pick up .py files from a tests/ directory?As Nick points out in legacy/trac#8531, it's far from perfect that new network
tests need to go into TorNet.py.
Maybe read a config file or pick up .py files from a tests/ directory?https://gitlab.torproject.org/tpo/core/chutney/-/issues/21532Make warnings.sh output errs2020-06-27T13:18:52ZteorMake warnings.sh output errsThey're so infrequent, I'm not sure I've ever seen one in chutney.They're so infrequent, I'm not sure I've ever seen one in chutney.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/21901Make tor clean up before terminating a chutney network2020-06-27T13:18:51ZteorMake tor clean up before terminating a chutney networkThis increases integration test coverage, and improves the reliability of any statistics being gathered.This increases integration test coverage, and improves the reliability of any statistics being gathered.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/22376Make the chutney README less scary2022-02-07T19:26:22ZteorMake the chutney README less scaryChutney works decently well now.
We should edit the README intro to reflect that.Chutney works decently well now.
We should edit the README intro to reflect that.https://gitlab.torproject.org/tpo/core/chutney/-/issues/21464Make relay and client directory permissions consistent2020-06-27T13:18:53ZteorMake relay and client directory permissions consistentChutney creates the data directory with mode 0777, and when relays add keys to it, they modify the permissions to 0700.
But clients never add keys, so they remain at 777.
We can make this consistent by creating the directory with mode ...Chutney creates the data directory with mode 0777, and when relays add keys to it, they modify the permissions to 0700.
But clients never add keys, so they remain at 777.
We can make this consistent by creating the directory with mode 0700 to begin with.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/21567Make it easier to find a network generated during 'make test-network-all'2020-06-27T13:18:52ZteorMake it easier to find a network generated during 'make test-network-all'When we run a tor 'make test-network-all' we create several chutney networks in quick succession. If one of them fails, it's very hard to locate its logs.
So instead of moving the 'nodes' directory to a timestamped backup path when the ...When we run a tor 'make test-network-all' we create several chutney networks in quick succession. If one of them fails, it's very hard to locate its logs.
So instead of moving the 'nodes' directory to a timestamped backup path when the *next* network is created, let's *create* the nodes directory at a timestamped path, and then link the latest timestamped directory to nodes.
Then we can log the unchanging path, so users can find the logs later.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/21467Make chutney work with relative paths2020-06-27T13:18:53ZteorMake chutney work with relative pathsChutney didn't work when called like:
```
chutney/tools/test-network.sh
```Chutney didn't work when called like:
```
chutney/tools/test-network.sh
```teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/22600Make chutney work with large numbers of hidden services2020-07-23T20:38:33ZteorMake chutney work with large numbers of hidden servicesIn legacy/trac#22599, I added a hs-intro network.
It bootstraps, but the client can't seem to connect to 22 hidden services at once.
Are the chutney timeouts too short?
Is this a bug in tor like legacy/trac#22210?In legacy/trac#22599, I added a hs-intro network.
It bootstraps, but the client can't seem to connect to 22 hidden services at once.
Are the chutney timeouts too short?
Is this a bug in tor like legacy/trac#22210?https://gitlab.torproject.org/tpo/core/chutney/-/issues/33379Make chutney wait for all relays in the consensus before verifying2020-06-27T13:18:32ZteorMake chutney wait for all relays in the consensus before verifyingAs part of legacy/trac#33232, we want chutney to check that all relays are in the consensus, then verify.As part of legacy/trac#33232, we want chutney to check that all relays are in the consensus, then verify.Sponsor 55: Improving the Tor network’s IPv6 supportteorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/21544Make chutney use sockets rather than ports2020-07-23T20:31:46ZteorMake chutney use sockets rather than portsI often want to run multiple chutney networks at once.
One way of doing this is to use unix sockets at unique paths.
And we should do this anyway to test the unix socket code.I often want to run multiple chutney networks at once.
One way of doing this is to use unix sockets at unique paths.
And we should do this anyway to test the unix socket code.https://gitlab.torproject.org/tpo/core/chutney/-/issues/21521Make chutney support relative paths2020-06-27T13:18:53ZteorMake chutney support relative pathsChutney expects to be launched from $CHUTNEY_PATH, and find all its directories there.
If it read the value of $CHUTNEY_PATH instead, it would be much easier to pass it relative paths.Chutney expects to be launched from $CHUTNEY_PATH, and find all its directories there.
If it read the value of $CHUTNEY_PATH instead, it would be much easier to pass it relative paths.teorteorhttps://gitlab.torproject.org/tpo/core/chutney/-/issues/21000Make chutney select different options depending on the tor version2020-07-23T20:28:17ZteorMake chutney select different options depending on the tor versionSome versions of tor have bugs that chutney needs to work around, for example, legacy/trac#20996 requires tor versions <= 0.3.0.1-alpha to set `UseMicrodescriptors 0` when setting `ClientUseIPv4 0`.
But we want to test newer versions wi...Some versions of tor have bugs that chutney needs to work around, for example, legacy/trac#20996 requires tor versions <= 0.3.0.1-alpha to set `UseMicrodescriptors 0` when setting `ClientUseIPv4 0`.
But we want to test newer versions without this workaround, so we need some kind of versioning feature. (Or test alternatives, where we report more than just pass or failure - but I think that's a different ticket.)