Commit Graph

1341 Commits

Author SHA1 Message Date
Širhoe Biazhkovič
3d48b882c5 fix pg test and lint warning
TODO: update doc and sample config
2022-10-17 19:50:59 +03:00
Širhoe Biazhkovič
3506865329 add download count number while scrape
* remove storage configuration print
* change test for pg storage
2022-10-17 18:37:07 +03:00
Širhoe Biazhkovič
505f7020ad (not tested) add named queries support in PG storage
* update dependencies
2022-10-17 14:08:17 +03:00
Lawrence, Rendall
640c6c605b fix lint warning 2022-10-01 20:18:31 +03:00
Lawrence, Rendall
2c6ecf64df update pgx driver 2022-10-01 20:17:40 +03:00
SOT-TECH
c02cf2f1d5 Merge pull request #19 from sot-tech/dependabot/go_modules/github.com/anacrolix/torrent-1.47.0
build(deps): bump github.com/anacrolix/torrent from 1.46.0 to 1.47.0
2022-10-01 19:03:06 +03:00
SOT-TECH
309b796e88 Merge branch 'master' into dependabot/go_modules/github.com/anacrolix/torrent-1.47.0 2022-10-01 18:58:10 +03:00
SOT-TECH
b799147ae6 Merge pull request #18 from sot-tech/dependabot/go_modules/github.com/MicahParks/keyfunc-1.4.0
build(deps): bump github.com/MicahParks/keyfunc from 1.2.2 to 1.4.0
2022-10-01 18:57:12 +03:00
dependabot[bot]
d3c14bcf7f build(deps): bump github.com/anacrolix/torrent from 1.46.0 to 1.47.0
Bumps [github.com/anacrolix/torrent](https://github.com/anacrolix/torrent) from 1.46.0 to 1.47.0.
- [Release notes](https://github.com/anacrolix/torrent/releases)
- [Commits](https://github.com/anacrolix/torrent/compare/v1.46.0...v1.47.0)

---
updated-dependencies:
- dependency-name: github.com/anacrolix/torrent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 12:05:16 +00:00
dependabot[bot]
b522712ce5 build(deps): bump github.com/MicahParks/keyfunc from 1.2.2 to 1.4.0
Bumps [github.com/MicahParks/keyfunc](https://github.com/MicahParks/keyfunc) from 1.2.2 to 1.4.0.
- [Release notes](https://github.com/MicahParks/keyfunc/releases)
- [Commits](https://github.com/MicahParks/keyfunc/compare/v1.2.2...v1.4.0)

---
updated-dependencies:
- dependency-name: github.com/MicahParks/keyfunc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 12:04:58 +00:00
SOT-TECH
5d70d6b00d Merge pull request #17 from sot-tech/jwt_mod
Reimplement JWT middleware
2022-09-06 15:08:03 +03:00
Lawrence, Rendall
d843c42931 restore example config commented blocks formatting 2022-09-06 14:59:01 +03:00
Lawrence, Rendall
694592f881 fix list warnings
* remove deprecated lint checks
* reformat files
* update dependencies
2022-09-06 13:34:57 +03:00
Lawrence, Rendall
170639eb3e (minor) remove double bearer trim 2022-08-26 11:58:22 +03:00
Lawrence, Rendall
d7777ca583 (minor) refactor jwt 2022-08-26 11:13:18 +03:00
Lawrence, Rendall
498779aeaf (partially tested) add scrape JWT validation
* remove `xorshift` package, add internal function in `varinterval`
* change `bittorrent.QueryParams` getters to search case insensitive keys
2022-08-25 18:31:48 +03:00
Lawrence, Rendall
f5a58630db (tested) add simple jwt middleware tests 2022-08-18 17:06:22 +03:00
Lawrence, Rendall
048ace4d42 (untested) reimplement jwt middleware
* change github.com/SermoDigital/jose to github.com/golang-jwt/jwt
* remove pkg/errors dependency
* update dependencies

TODO:
* add test
* flag if announce/scrape handle needed
2022-08-17 15:10:23 +03:00
SOT-TECH
917d2f2307 Merge pull request #13 from sot-tech/filter_private_ips
add `filter_private_ips` option to discard private IPs.
2022-07-23 16:05:56 +03:00
Lawrence, Rendall
11b74b3b74 fix exposed metrics port protocol in Dockerfile 2022-07-23 15:59:25 +03:00
Lawrence, Rendall
96653c45a3 add filter_private_ips option to discard private IPs.
Might be used when tracker is behind reverse proxy and one of provided
addresses in `real_ip_header` is private/local address.

Additional changes:

* check if provided address is not multicast/broadcast
* configure `http.Server.ReadHeaderTimeout` with `http.ReadTimeout` to mitigate Slowloris
* update dependencies
* minor docs fixes
2022-07-23 15:49:22 +03:00
SOT-TECH
3e36ad7cbf Update Dockerfile
Fix exposed ports (again)
v0.0.2
2022-07-12 14:39:52 +03:00
SOT-TECH
03136c54c7 Update Dockerfile
Fix exposed ports
2022-07-12 14:27:49 +03:00
SOT-TECH
0905b13a4a Update Dockerfile
fix exposed ports
2022-07-12 14:08:58 +03:00
SOT-TECH
865942a154 Update Dockerfile
Copy example configuration
2022-07-12 13:38:46 +03:00
Lawrence, Rendall
37f5b0bc53 Fix lint warnings 2022-07-12 13:09:10 +03:00
Lawrence, Rendall
9d8440667c (tested) Add reuseport feauture.
SO_REUSEPORT allows multipple instances to use same port.
It might be used for better scalability and performance.

* update dependencies
* fix data race of http's srv and tlsSrv variables
2022-07-11 13:38:37 +03:00
SOT-TECH
25de42e3d0 Merge pull request #12 from sot-tech/dependabot/go_modules/github.com/stretchr/testify-1.8.0
build(deps): bump github.com/stretchr/testify from 1.7.4 to 1.8.0
2022-07-05 11:12:21 +03:00
dependabot[bot]
5b6a62f30e build(deps): bump github.com/stretchr/testify from 1.7.4 to 1.8.0
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.7.4 to 1.8.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.7.4...v1.8.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 12:08:06 +00:00
Lawrence, Rendall
92ce0df932 (minor) fix invalid PG gc query example 2022-06-27 15:59:34 +03:00
Lawrence, Rendall
4a16fc62a0 (minor) fix invalid random seed 2022-06-23 21:37:17 +03:00
Lawrence, Rendall
0fd0e06360 (tested) change DataStorage interface to accept byte array as value 2022-06-23 21:01:05 +03:00
SOT-TECH
4468794de1 Merge pull request #11 from sot-tech/sql-backend
PostgreSQL backend
2022-06-21 18:26:58 +03:00
SOT-TECH
17f98763bf Update postgres github service auth
set auth method to `trust`, because it only needed for testing
2022-06-21 18:16:56 +03:00
Lawrence, Rendall
73d8922c74 (partially tested) add pg storage configuration and man
* update test query for `pg`
* attach `pg` to supported storages
* fix lint warnings
* update dependencies
2022-06-21 18:01:08 +03:00
Lawrence, Rendall
8c12cd9b35 (partially tested) fix pg tests, add postgres service in workflows 2022-06-20 17:19:23 +03:00
Lawrence, Rendall
0564dfce4b (untested) add pg storage tests 2022-06-18 20:52:57 +03:00
Lawrence, Rendall
21eaea2b8a (untested) implement gc, stats and scrape in pg storage
fix query call to use columns names while row scan
2022-06-16 17:49:20 +03:00
Lawrence, Rendall
8430e1f31f Initial work on implementing postgresql storage
Generated placeholders to use raw sql queries with `pgx` driver
and implemented put/del peer and announce functions

* inline GCAware and StatisticsAware to PeerStorage
* fix redis doc configuration sample
* update dependencies
2022-06-15 21:42:43 +03:00
Lawrence, Rendall
615bcb2050 update dependencies
Resolves #9 #10
2022-06-01 19:59:05 +03:00
Lawrence, Rendall
79c92df0f8 (tested) add hooks check when ping http route called 2022-05-14 01:36:21 +03:00
Lawrence, Rendall
cf2adad4c9 (tested) fix invalid parsing of multivalued and comma-separated addresses from HTTP header v0.0.1 2022-05-02 23:12:13 +03:00
SOT-TECH
607f9da00a Merge pull request #8 from sot-tech/zerolog
Zerolog
2022-05-02 18:37:40 +08:00
Lawrence, Rendall
463d478dad (minor) sanitize code 2022-05-02 13:30:11 +03:00
Lawrence, Rendall
c50a532181 (tested) complete replace logrus with zerolog
* remove cobra dependency and split execs to mochi and e2e

* add log init synchronization
2022-05-02 03:13:58 +03:00
Lawrence, Rendall
4d646f7c09 (wip) migrate to zerolog 2022-05-01 01:39:21 +03:00
Lawrence, Rendall
6aab7e8340 (minor) change log level in HandleAnnounce 2022-04-27 01:01:07 +03:00
Lawrence, Rendall
64b27c2df6 (tested) preserve all addresses of peer
* add multiple addresses in request structures and frontend parsers

* move per-ip peer fetch/store from storage to internal hooks

* fetch/store both v1 and v2 info hashes
2022-04-27 00:52:17 +03:00
Lawrence, Rendall
b365abd296 (untested) sanitize code
* remove peer argument from scrape swarm storage call

* replace Peer field with netip.Addr in ScrapeRequest

* add man for keydb storage

* update readme
2022-04-25 19:05:41 +03:00
Lawrence, Rendall
081d3752d8 (tested) fix static check warnings
* UDP writer: defer buffer close
* HTTP writer: remove duplicated compact4/6
2022-04-25 16:05:19 +03:00