1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-08-06 19:44:01 +08:00

1605 Commits

Author SHA1 Message Date
06ba6d0fc2 fix: remove internal relay discovery
This logic collects a list of known relays by testing every new connection.

It exists so we can dial /p2p-circuit/p2p/QmFoobar addresses (circuit addresses
that don't specify the relay). However, this kind of address is useless outside
of basic demos as a random relay is practically guaranteed to not be connected
to the target peer. Picking a random relay to connect to some peer is almost
_never_ the desired behavior.
2020-03-31 12:24:55 -07:00
aec498bbde test(sharness): make sure we can actually enable autonat
This isn't a real autonat test, but it's a regression test to make sure we don't blatantly break this.
2020-03-25 12:48:25 -07:00
62de9ba9d3 feat(file-ignore): add ignore opts to add cmd
- add the `gitignore` or `ignore options to the add command
2020-03-20 09:22:04 -07:00
05fe3086a5 fix(sharness): fix sharness tests to take removed bootstrap peers into account 2020-03-18 08:50:40 -07:00
f9567a0a0f fix(gateway): curl without redirect on localhost
When request is sent to http://localhost:8080/ipfs/$cid response has
HTTP 301 status code and "Location" header with redirect destination at
$cid.ipfs.localhost:8080

Redirect is followed by browsersi, but not by commandline tools.
Status 301 is ignored by curl in default mode: it will print response
and won't follow redirect, user needs to add -L for that.

To fix curl, we return correct payload in body of HTTP 301 response,
but set Clear-Site-Data header to ensure Origin sandbox can't be abused.

This requires a surgical workaround:
If Location header is present in ResponseWriter's Header map,
we ensure http.ServeContent() returns HTTP 301

Context: https://github.com/ipfs/go-ipfs/pull/6982

License: MIT
Signed-off-by: Marcin Rataj <lidel@lidel.org>
2020-03-18 08:50:40 -07:00
3ecccd6e1d feat(gateway): subdomain and proxy gateway
License: MIT
Signed-off-by: Marcin Rataj <lidel@lidel.org>
2020-03-18 08:50:38 -07:00
97401b9e27 Merge pull request #6997 from ipfs/chore/sharness_fixes_2019-03-16
Chore/sharness fixes 2019 03 16
2020-03-17 14:33:22 -07:00
705bee7d3f Support pipes when named on the cli explicitly
Still throws an error when a pipe is encountered during directory recursion
2020-03-16 17:25:33 -07:00
51d4383d56 Abort individual sharness tests if a previous instance is present
Before starting each individual test check if a daemon is present with a
trash* directory as its workdir. Exit with failure if this is the case.
2020-03-15 19:57:29 +00:00
e681a3aebe fix: revert changes to the user agent
Go-ipfs user agents usually look like go-ipfs/VERSION/COMMIT_or_EMPTY. However,
we changed this to /go-ipfs/VERSION(/COMMIT)? on master for a while. This change
reverts this to make parsing the user agent simpler.

Co-Authored-By: Oli Evans <oli@tableflip.io>
2020-03-13 13:50:11 -07:00
7b65c0703f Simplify grep in test to pass on MacOS 2020-03-12 04:42:53 +01:00
a68c1af938 ci: update to go 1.14 2020-03-08 22:00:26 -07:00
585731074e test(graphsync): test server-side graphsync 2020-02-26 09:11:17 -08:00
6e8c25eaee test(sharness): test our tests
Make sure they:

1. Report that they're done. Otherwise, we'll silently succeed.
2. Have a description.
3. Make sure we cleanup IPFS.
2020-02-18 15:14:45 -05:00
3385367bdc test(sharness): fix typo 2020-01-17 10:27:36 -08:00
e58a32ab1e feat(commands/cid): add a flag for setting the codec
This will be useful when testing `refs local, `repo gc`, and `repo verify`
commands once we store blocks by multihash instead of by CID. At that point,
these commands will return raw v1 CIDs as the blockstore won't actually remember
the codec used to store the block.

Flags choice:

* Ideally, we'd use the `-f, --format` flags like every other command but we're
  already using `-f` (format) for the format string.
* Alternatively, I'd like to use `-c`. However, we're using _that_ for a global
  `--config` flag (bit of a waste given that it doesn't work...).

`--codec` will have to do for now.
2020-01-07 19:32:16 -06:00
f8adc3ebdd fix(commands/cid): always use base58 for CIDv0 unless otherwise specified 2020-01-07 19:20:21 -06:00
9a9ec021cf test(sharness): add gateway symlink test 2020-01-05 16:43:44 -08:00
07cbba7c40 Fix Typos 2019-12-25 03:12:41 +00:00
36dcf8eac5 Add two more missed cleanup clauses 2019-12-23 15:41:39 +01:00
4200bf453b At some point the directory name changed to testbeds
Without reflecting this in the tests we do not actually shut down
correctly during cleanup
2019-12-23 15:41:39 +01:00
52476c026c Remove couple linux-isms: these are not valid on macos
Some did actually prevent proper test shutdown
2019-12-23 15:41:39 +01:00
8c6d8d5bd1 Add GOIPFSTEST_SKIP_LOCAL_DEVTREE_DEPS_CHECK escape valve
Set this to '1' if you are doing local dev and have redirects in go.mod
2019-12-23 15:41:30 +01:00
153e52929a Make the docker check more specific
Docker on a mac might be available, but may not be runnng. The
way the original test was written is linux-specific anyway, so
just hoist the check into the DOCKER declaration
2019-12-23 15:41:30 +01:00
ba3a7d4a55 socat is not part of any default install, make tests conditional
54b1969c4b correctly switched from nc to socat, but did not account for it
not being as widely available. Adjust tests that depend on it with the
correct message.

There are also a number of comments pertaining to nc - they were not
adjusted.
2019-12-23 15:41:30 +01:00
115b2ba6cd fix: limit SW registration to content root
Introduces hardening proposed in:
https://github.com/ipfs/go-ipfs/issues/4025#issuecomment-342250616

License: MIT
Signed-off-by: Marcin Rataj <lidel@lidel.org>
2019-12-17 02:20:40 +01:00
ff8e4fc89f test(sharness): fix tests for /ipfs -> /p2p change 2019-12-14 19:41:05 +01:00
ab274664df test(sharness): use test profile
Otherwise, we have port conflicts and other issues.
2019-12-05 18:37:45 -05:00
f1b28dab95 test(sharness): simplify init-config logic 2019-12-05 18:32:06 -05:00
ee42e34ee4 sharness(pubsub): turn off the DHT for pubsub tests 2019-12-05 13:26:46 -05:00
25694d0238 fix: ignore nonexistant when force rm
- Make `ipfs files rm --force /nonexistant` succeed when the path does not exist.
- Add shaness test for removing nonexistant paths
- Refactor duplicated code to find a parent dir into a function

I've been writing scripts against the files api, and having to stat things before removing them is a pain. So this PR aims to make --force do what I'd expect it to.

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2019-11-25 11:38:29 +00:00
5fbf0d35fb test(sharness): fix dht tests 2019-11-15 09:15:50 -08:00
c93adf6701 test(sharness): fix flaky repo test
Just make sure we've removed all the blocks. We can't guarantee that the size
will revert.
2019-10-29 00:20:37 -07:00
3f30a7caca fix(sharness): fix ambigious multiaddr 2019-10-28 22:55:21 -07:00
67da056908 test(sharness): improve reliability of ma-pipe-unidir
Write the PID file after listening.
2019-10-28 21:54:47 -07:00
f20db0cce8 fix(pin): wait till after fetching to remove direct pin
Otherwise, we could abort while fetching the graph and stay in a state where the
direct pin is removed.

fixes #4650
2019-10-08 17:12:44 +09:00
4391ef92e5 fix(sharness): spelling 2019-10-08 08:34:55 +09:00
6f4f9b4cbb Add test for buzhash
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-07 18:17:01 +02:00
8e346a993e test(sharness): fix tests for commands lib update
We no longer spit out the annoying http error.
2019-09-30 18:47:55 -07:00
460c2119e4 daemon: support unix domain sockets for the API/gateway
All the work was client-side. Unix domain socket multiaddrs already worked
server-side.

fixes #4218
2019-09-30 17:21:28 -07:00
2147f50240 test(sharness): fix circuit tests 2019-09-27 15:50:47 -07:00
6722a38535 pin: fix pin update X Y where X==Y
We were pining Y then removing the pin for X. When X == Y, we'd remove the new
pin.

fixes #6648
2019-09-23 16:29:26 -07:00
315a3c9e48 build: fix golangci again
The patches that required the replace directives have been merged upstream.
Unfortunately, those branches have now been deleted, breaking the build.

GAH!
2019-09-12 13:56:35 -07:00
a8fbd066d7 make: move all test deps to a separate module
1. This means those deps don't get pulled in unless we actually need to test.
2. It means we can cordon all the golangci-lint module replace hacks off into a
   separate package.
2019-09-11 11:43:50 -07:00
150b6dd1bd plugins: add support for plugin configs
For now, configs specified in `daemon --init-config` and `init CONFIG` are not
available. We should fix this eventually but isn't necessary for now (and
supporting this will be annoying).
2019-08-29 17:17:23 -07:00
e7e7000611 add init config tests 2019-08-28 19:00:38 -04:00
ce964404a2 test: handle murmur3 rename 2019-08-23 17:07:53 -07:00
403b322914 test: handle id -> identity rename
"identity" is the official name
2019-08-23 17:02:23 -07:00
17533b4378 sharness: disable broken test
We can no longer test this with bad keys. Unfortunately, good keys will likely
contain a newline and we have no way to send such keys to the server due to how
API requests are formatted.
2019-08-23 17:02:19 -07:00
a2a70d2cc0 use 2048 keys everywhere else 2019-08-23 14:36:42 -07:00