Commit Graph

6954 Commits

Author SHA1 Message Date
Brian Warner
48fc14bd30 add IConnectionStatus and implementation
also a function to build one from a foolscap.Reconnector
2016-12-08 15:41:37 -08:00
Brian Warner
8d008967e7 tor_provider: use new Foolscap API to provide better status 2016-12-08 15:41:37 -08:00
Brian Warner
de4295ae60 require foolscap >= 0.12.5, for ReconnectionInfo 2016-12-08 15:41:37 -08:00
Brian Warner
6879622894 create-node: avoid introducer.furl=None
Previously, "tahoe create-node" without an --introducer= argument would
result in the literal string "None" being written into tahoe.cfg:

 [client]
 introducer.furl = None

We were using config.get("introducer",""), but that didn't suffice because
the key was actually present: it just had a value of None, which then got
stringified into "None" when writing out tahoe.cfg.

This briefly caused test/cli/test_create to fail, as the startup code tried
to parse "None" as a FURL. This only happened against a development version
of Foolscap which accidentally became sensitive to unparseable FURLs in
started Reconnectors. I fixed that in the final foolscap-0.12.5 release, so
we shouldn't hit this bug, but I wanted to fix it properly in the tahoe-side
source.
2016-12-08 15:37:49 -08:00
Brian Warner
d5f3d47483 test/cli/test_create: remove errant print() 2016-12-08 14:59:11 -08:00
Brian Warner
5a5da0de2a magic_folder_cli.py: fix typo 2016-12-06 11:01:51 -08:00
Vladimir Rusinov
dcec018cdf Set minimal tox version to 1.7.
Current LTS Ubuntu ships with 1.6.0 which seems to fail with "Directory
'.' is not installable. File 'setup.py' not found.". Search shows that
it looks like 1.7 is not affected by this
(https://bugs.launchpad.net/cinder/+bug/1484035), although I've only
tested with tox 2.5.0.

Should fix https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2841
2016-11-23 12:40:22 +00:00
Brian Warner
9cea1d7a46 docs: fix svg encoding diagrams
We said "share N" in some places that ought to say "block N", and we no
longer use "peer" to describe where we're pushing a share to (now we say
"server").

Thanks to CcxWrk for the catch.
2016-11-13 14:12:51 -08:00
Brian Warner
fa2b6a567b expenses: pay 2016 summit and hosting through Oct-2016 2016-11-10 22:20:00 -08:00
Brian Warner
da76c41c83 donation.rst: add new expense addresses, re-sign
* secorp's new address for hosting expenses
* warner's address for summit expenses
2016-11-10 21:16:34 -08:00
Brian Warner
250c6f6054 test_magic_folder: mark failing test as .todo
As discussed in this week's meeting, since we don't yet know why some
flavors of linux have slightly different inotify behavior than others,
and since we believe the actual functionality is not significantly
impacted, and since the red buildbot is reducing our confidence that the
other tests are passing, and since we have a release coming up: we're
marking the one troublesome test as ".todo". We expect that the test
will be fixed soon (perhaps to accept either 3 or 4 events), but not
necessarily before the 1.12 release.

refs ticket:2834
2016-11-02 13:31:22 -07:00
meejah
783449b4f3 When tor or i2p options are present, confirm we have txi2p or txtorcon
We mock out some import methods and provide tests for providing
server-side or client-side tor/i2p options
2016-10-26 13:41:10 -06:00
Brian Warner
8cdb5ff185 Merge branch 'pr373'
Closes tahoe-lafs/tahoe-lafs#373
2016-10-25 18:27:22 -07:00
Brian Warner
09d4e1e936 minor typo 2016-10-25 18:27:11 -07:00
meejah
e00301d7e0 mention poll_interval in magic-folder docs 2016-10-25 18:26:57 -07:00
Brian Warner
233d0e29d9 Merge branch 'pr371'
Closes tahoe-lafs/tahoe-lafs#371
2016-10-25 12:39:32 -07:00
meejah
0636d44cc1 add poll-interval config for magic-folder 2016-10-25 12:38:57 -07:00
meejah
da4e1589bb Rename _turn_delay and friends to make things more clear
This forces the Uploader and Downloader to implement a _scan_delay
method and makes the naming more consistent with what's actually
happening. Also, fix a few "bugs" in the names of args in the
mocks for some tests.
2016-10-25 12:38:57 -07:00
meejah
ddaa29ce39 refactor/white-space MagicFolder creation 2016-10-25 12:38:57 -07:00
Brian Warner
c0e441966a Merge branch 'pr369'
Closes tahoe-lafs/tahoe-lafs#369
2016-10-24 09:38:12 -07:00
Brian Warner
203067810d magic_folder: announce debug on/off to log, not stdout 2016-10-24 09:37:35 -07:00
Brian Warner
4d003c026e test_magic_folder: remove unused debug code 2016-10-24 09:23:26 -07:00
Brian Warner
ae5637dc9c test_magic_folder: turn off debugging when done 2016-10-24 09:23:16 -07:00
David Stainton
d6cbe44786 Enable debug logging for test_move_tree magic-folder unit test 2016-10-24 09:15:09 -07:00
str4d
6071c2b6f8
Implement i2p_provider and --listen=i2p
Closes ticket:2838
2016-10-23 20:30:01 -05:00
Brian Warner
f42b4f687b start editing NEWS.rst 2016-10-21 15:47:43 -07:00
Brian Warner
272f032b62 NEWS: minor additions 2016-10-19 12:06:11 -07:00
Brian Warner
71c2b20507 NEWS: quick list of everything changed since 1.11.0
will need lots of editing before release
2016-10-19 12:00:04 -07:00
meejah
b96122a8ff Adding to the py.test integration tests, this:
- (on travis) installs Tor
 - installs Chutney
 - uses it to build a local Tor test-network
 - set up an introducer on this test-network
 - sets up two storage servers on this test-network
 - proves that one can add a file, and the other can download it

I also mark the two tests that occasionally fail as
expected failures for now
2016-10-18 18:06:41 -07:00
Brian Warner
130031badf docs: update out-of-date happiness milestone
thanks to CcxWrk for the catch
2016-10-18 17:30:52 -07:00
Brian Warner
2d5e1e55ae appveyor: no longer need to use tox from upstream git
The most recent Tox release fixed the bug (issue314).
2016-10-14 09:07:30 -07:00
Lukas Pirl
1491e9fab1 added /sbin/ip as possible binary to detect local IP address
fixes IP detection for RHEL flavors

Signed-off-by: Lukas Pirl <git@lukas-pirl.de>
2016-10-12 12:46:12 +02:00
Brian Warner
5a195e2339 Merge branch '2490-tor-2'
This adds --listen=tor to create-node and create-server, along with
.onion-address allocation at creation time, and onion-service
starting (launching or connecting to tor as necessary) as node startup
time.

closes ticket:2490
refs ticket:2773
refs ticket:1010
refs ticket:517
2016-10-09 02:07:17 -04:00
Brian Warner
42c6a1587b remove docs about --listen=tor being unfinished 2016-10-09 02:02:40 -04:00
Brian Warner
6d3a20e78b test_tor_provider: accept windows pathname separators 2016-10-09 01:49:32 -04:00
Brian Warner
272cb78af1 bump txtorcon dep to 0.17.0
This is the first version that allows us to use unix-domain control
ports for the launched tor.
2016-10-09 01:25:51 -04:00
Brian Warner
ea1c1d27de fix tests to match 2016-10-09 01:22:17 -04:00
meejah
2ecb8171eb flip remote/local around for Onion-service 'ports' lines 2016-10-09 01:21:52 -04:00
meejah
eb6c6bee9e tor's output, for debugging 2016-10-09 01:21:52 -04:00
meejah
646fad69ed ControlPort needs "unix:" prefix for Tor, and allocate SOCKSPort 2016-10-09 01:21:52 -04:00
Brian Warner
89eb86c5a4 node.py: use tor_provider at startup
We use it for two things: to create the foolscap connection handler, and
to possibly start an .onion listener at startup.

This also updates node._common_config_sections to accept the new tor
settings written by create-node/create-introducer.
2016-10-09 01:21:51 -04:00
Brian Warner
6b9218ff22 create_node.py: use tor_provider to handle --listen=tor
This adds tor-related CLI arguments to "create-node" and
"create-introducer", to control exactly how we should be using Tor.

* --tor-launch
* --tor-executable=
* --tor-control-port=

I went with "--tor-launch" instead of "--launch-tor" for consistency. I
don't particularly like the grammatical flow of it, and it doesn't
actually put all the tor-related arguments next to each other in the
--help output (the flags are put in one block, then the parameters in
the next). But it seems slightly more consistent to start all the
tor-related argument names with a "--tor*" prefix.
2016-10-09 01:21:51 -04:00
Brian Warner
a1741ce4dc rewrite tor_provider
This uses a unix-domain control port, and includes test coverage.

create_onion() displays pacifier messages, since the allocate-onion step
takes around 35 seconds
2016-10-09 01:21:47 -04:00
Brian Warner
8f9ad009bb move torutil.py to util/tor_provider.py 2016-10-09 00:57:02 -04:00
David Stainton
897079105a Code refactor TorProvider from Daira's code review 2016-10-09 00:35:03 -04:00
David Stainton
e02d21aed1 Add tor listening options to create-node 2016-10-09 00:34:57 -04:00
David Stainton
4a1d1a5541 Add helper function CreateOnion 2016-10-09 00:30:33 -04:00
David Stainton
b3b80d376b Use a TorProvider to get a Tor handler 2016-10-09 00:30:33 -04:00
David Stainton
993d91ec0d Implement TorProvider class as described by Brian Warner
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2490#comment:10
2016-10-09 00:30:33 -04:00
Brian Warner
f549000121 test_create: get full coverage on create_node.py 2016-10-09 00:29:29 -04:00