Commit Graph

1973 Commits

Author SHA1 Message Date
Adin Schmahmann
353dd49be2
refactor: switch gateway code to new API from go-libipfs (#9681)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-03-30 13:20:37 +00:00
Gus Eggert
a24cfb89a5
test: port remote pinning tests to Go (#9720)
This also means that rb-pinning-service-api is no longer required for
running remote pinning tests. This alone saves at least 3 minutes in
test runtime in CI because we don't need to checkout the repo, build
the Docker image, run it, etc.

Instead this implements a simple pinning service in Go that the test
runs in-process, with a callback that can be used to control the async
behavior of the pinning service (e.g. simulate work happening
asynchronously like transitioning from "queued" -> "pinning" ->
"pinned").

This also adds an environment variable to Kubo to control the MFS
remote pin polling interval, so that we don't have to wait 30 seconds
in the test for MFS changes to be repinned. This is purely for tests
so I don't think we should document this.

This entire test suite runs in around 2.5 sec on my laptop, compared to
the existing 3+ minutes in CI.
2023-03-30 07:46:35 -04:00
Arthur Gavazza
e89cce63fd
feat: add identify option to swarm peers command
Fixes #9578
2023-03-30 04:34:57 +00:00
Gus Eggert
9fb09dd398
test: port routing DHT tests to Go (#9709) 2023-03-29 19:28:55 -04:00
Gus Eggert
f4d361dd4e
test: fix autoclient flakiness (#9769)
The test trims all whitespace bytes from the output of 'ipfs cat' but
if the random bytes end in a whitespace char then it trims that too,
resulting in random test failure.

Instead this updates the test harness to only trim a single trailing
newline char, so that it doesn't end up chomping legitimate output.
2023-03-29 11:56:25 -04:00
Gus Eggert
6ebbd9d39b
test: skip flaky pubsub test (#9770)
This test flakes very often and we plan on removing this feature
entirely, so disabling this test since its failures are pretty disruptive.
2023-03-29 11:56:11 -04:00
Jorropo
3ab1086f71 chore: migrate go-libipfs to boxo
Resolves #9677, #9676, #9675, #9736
2023-03-28 22:05:25 -04:00
Jorropo
1e3b6c9857 feat: add tracing to the commands client 2023-03-28 22:05:25 -04:00
Jorropo
2bd6d22617 chore: bump sharness-deps for go 1.20 2023-03-28 22:05:25 -04:00
Gus Eggert
4c49967d9c feat: add client-side metrics for routing-v1 client 2023-03-27 18:19:28 -04:00
Gus Eggert
60ba0b1821 test: increase max wait time for peering assertion
The peering test is flaky and fails waiting for peers to be connected
to each other, I don't know if this will fix it, but worth trying.
2023-03-27 23:32:04 +02:00
Henrique Dias
88d431c812
feat: remove writable gateway (#9743)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-03-27 15:19:55 +02:00
Henrique Dias
b975593920
feat(gateway): invalid CID returns 400 Bad Request (#9726) 2023-03-20 14:14:38 +01:00
Henrique Dias
63b2a0e069
fix: apply API.HTTPHeaders to /webui redirect 2023-03-17 15:14:10 +01:00
Jorropo
a3b417779c fix: future proof with > rcmgr.DefaultLimit for new enum rcmgr values 2023-03-16 13:41:24 +01:00
Jorropo
8b05cf05b0 test: add test for presarvation of unlimited configs for inbound systems 2023-03-16 13:41:24 +01:00
Gus Eggert
684d9dc79f test: fix flaky rcmgr test 2023-03-15 22:45:56 -04:00
Henrique Dias
5b9442cfed
Revert "chore: add hamt directory sharding test"
This reverts commit d23702bbf8.
2023-03-14 13:53:17 +01:00
Henrique Dias
d23702bbf8
chore: add hamt directory sharding test 2023-03-14 13:51:59 +01:00
Gus Eggert
676e557daf test: port peering test from sharness to Go
This is the slowest test in the sharness test suite, because it has
very long sleeps. It usually takes 2+ minutes to run.

This new impl runs all peering tests in about 20 seconds, since it
polls for conditions instead of sleeping, and runs the tests in
parallel.

This also has an additional test case for a peer that was never online
and then connects.
2023-03-13 10:54:53 -04:00
Eng Zer Jun
7f7a5ab1b9 test: use T.TempDir to create temporary test directory
This commit replaces `os.MkdirTemp` with `t.TempDir` in tests. The
directory created by `t.TempDir` is automatically removed when the test
and all its subtests complete.

Prior to this commit, temporary directory created using `os.MkdirTemp`
needs to be removed manually by calling `os.RemoveAll`, which is omitted
in some tests. The error handling boilerplate e.g.
	defer func() {
		if err := os.RemoveAll(dir); err != nil {
			t.Fatal(err)
		}
	}
is also tedious, but `t.TempDir` handles this for us nicely.

Reference: https://pkg.go.dev/testing#T.TempDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2023-03-13 10:29:36 -04:00
Laurent Senta
fc81639af4 test: name --verify forgets the verified key 2023-03-13 09:54:10 -04:00
Gus Eggert
0d94bac30c feat: add "autoclient" routing type
This routing type is the same as "auto" but it creates the DHT in
"client" mode and hence does not start a DHT server.
2023-03-09 08:18:14 -05:00
Gus Eggert
fdbe363eb1 test: parallelize more of rcmgr Go tests 2023-03-09 08:18:14 -05:00
Gus Eggert
ad5a0fea0e test: port legacy DHT tests to Go 2023-03-09 08:18:14 -05:00
Piotr Galar
eb8a72d919
Merge pull request #9696 from ipfs/galargh-patch-2
fix: t0116-gateway-cache.sh
2023-03-08 10:19:28 +01:00
Jorropo
7986196414 feat: Reduce RM code footprint
Co-Authored-By: Antonio Navarro Perez <antnavper@gmail.com>
2023-03-06 12:46:58 +01:00
Piotr Galar
7aed2163d3
fix: t0116-gateway-cache.sh 2023-03-06 12:30:04 +01:00
galargh
fe8f72e707 ci: replace junit html generation with gh action 2023-03-02 10:52:23 +01:00
Gus Eggert
145795b148 test: port rcmgr sharness tests to Go 2023-02-28 15:34:23 +01:00
Marcin Rataj
cf9276db02
Merge pull request #9657 from laurentsenta/test/sharness-with-car-fixtures
test(gateway): use deterministic CAR fixtures
2023-02-28 14:22:40 +01:00
Henrique Dias
1794649bf2
feat(gateway): error handling improvements (500, 502, 504) (#9660)
* fix(gateway): return 500 for all /ip[nf]s/id failures
* fix: replace deprecated structs
* chore: bump go-libipfs to version from main
2023-02-28 02:21:50 +01:00
Laurent Senta
92a068a82b fix: remove leftover fixtures & notes 2023-02-27 12:16:44 +01:00
Laurent Senta
42132f1dfc fix: add versions 2023-02-27 12:16:33 +01:00
Laurent Senta
3ed8f394e0 test: use car fixtures in sharness t0400 2023-02-27 12:16:33 +01:00
Laurent Senta
7f3c0baa5d test: use car fixtures in sharness t0123 2023-02-27 12:16:33 +01:00
Laurent Senta
a57ca965c1 test: use car fixtures in sharness t0122 2023-02-27 12:16:33 +01:00
Laurent Senta
26b493d3c5 test: use car fixtures in sharness t0118 2023-02-27 12:16:33 +01:00
Laurent Senta
284bb8c819 test: use car fixtures in sharness t0116 2023-02-27 12:16:33 +01:00
Laurent Senta
8a3591b860 test: fix prometheus test folder path 2023-02-27 12:16:33 +01:00
Laurent Senta
8641d16a2b test: use car fixtures in sharness t0115 2023-02-27 12:16:33 +01:00
Laurent Senta
771d62c8f4 test: use car fixtures in sharness t0114 2023-02-27 12:16:33 +01:00
Laurent Senta
64ccdbd6f2 test: use car fixtures in sharness t0113 2023-02-27 12:16:33 +01:00
Laurent Senta
0d7c892cec test: use car fixtures in sharness t0117 2023-02-27 12:16:33 +01:00
Marten Seemann
a3366c522a
chore: update go-libp2p to v0.26 (#9656)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-02-24 10:34:10 +01:00
Henrique Dias
4db6ae1772
fix(gateway): return HTTP 500 on ErrResolveFailed (#9589) 2023-02-22 03:22:03 +01:00
ElPaisano
714a968faa
docs: bulk spelling edits (#9544)
Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-02-20 23:37:10 +01:00
Jorropo
0ff406170d fix: update rcmgr for go-libp2p v0.25 2023-02-14 22:19:46 +01:00
Henrique Dias
fb7f7b15b3
fix: restore wire format for /api/v0/routing/get|put (#9639)
Closes #9638
2023-02-10 02:41:45 +01:00
Henrique Dias
14649aa8ba
refactor: new go-libipfs/gateway API, deprecate Gateway.Writable (#9616) 2023-02-02 02:50:46 +01:00