Commit Graph

267 Commits

Author SHA1 Message Date
Olaoluwa Osuntokun
87bb996a40 Merge pull request #103 from Roasbeef/amp-sqlite-bug-fixes
challenger+config: fix bugs related to config parsing and AMP invoice handling
v0.2-beta
2023-07-04 17:49:36 -07:00
Olaoluwa Osuntokun
c1dea365a1 config: fix config parsing for new dbbackend option
For the yaml parser, since the public attribute differs from the name of
the yaml field, we need to specify the `yaml` flag.
2023-07-04 17:32:46 -07:00
Olaoluwa Osuntokun
599eb2ee99 challenger: skip trying to load+parse AMP invoices
AMP invoiecs don't have a payment hash, as it's based on payment addr
and set id.
2023-07-04 17:32:38 -07:00
Olaoluwa Osuntokun
510d40955e Merge pull request #98 from positiveblue/lnc
[feature] Use LNC to connect to the LND node
2023-07-04 17:31:26 -07:00
positiveblue
aa9ca467da aperture: initialize server with the configured authenticator 2023-06-30 15:22:28 -07:00
positiveblue
a6ff4a9e7b challenger: add LNCChallenger 2023-06-30 15:22:28 -07:00
positiveblue
4e81f5ddb5 challenger: move challenger logic to its own package
The new package contains a new interface (`Challenger`) that any
new challenger must implement.

Because aperture uses the new interface instead of using directly the
`LndChallenger` struct I added the `Stop()` method to the
`mint.Challenger`. Instead of also adding the `Start()` method the constructor
returns a Challenger already "started".
2023-06-30 15:22:28 -07:00
positiveblue
a04f3b1e0f challenger: custom context for LightningClient methods
Whenever we use the LightningClient from an LNC connection we need to
add the macaroon to the headers.
2023-06-30 15:22:27 -07:00
positiveblue
3d53f20597 multi: use InvoiceClient in NewLndChallenger
Stop creating the connection inside the `NewLndChallenger`. That will
allow us reuse the function with an LNC connection.
2023-06-30 15:22:27 -07:00
positiveblue
0e02476dd2 aperturedb: implement lnc sessions store 2023-06-30 15:22:27 -07:00
positiveblue
ea2fb836b7 sqlc: add table+queries for sessions 2023-06-30 15:22:27 -07:00
positiveblue
baec26209e lnc: add lnc session package 2023-06-30 15:22:25 -07:00
positiveblue
8dde304da5 config: support config for LNC connections 2023-06-30 13:30:22 -07:00
Oliver Gugger
57ddbf7e05 Merge pull request #102 from lightninglabs/grpc-status-code-fix
proxy: always return 200 status code to gRPC client
v0.1.21-beta
2023-06-19 10:21:09 +02:00
Oliver Gugger
f17b877806 multi: address linter issues 2023-06-15 14:11:09 +02:00
Oliver Gugger
e571d6f13c lsat: clarify non-usage of invalid status code 2023-06-15 13:53:14 +02:00
Oliver Gugger
1536ce4bc2 mod: upgrade google.golang.org/grpc to v1.51.0 2023-06-15 13:40:42 +02:00
Oliver Gugger
e2757ebca8 proxy: always return 200 status code to gRPC client
It turns out that sending a non-200 HTTP status code was against the
gRPC spec and the older versions of the `grpc` library just didn't
validate that. The validation was added in v1.40.0, which is the version
that we couldn't update to before.
With this fix the error is still parsed correctly on the client side.
But this requires a small change to the L402 spec because the status
code is no longer 402.
2023-06-15 13:32:14 +02:00
Oliver Gugger
369489feb7 Merge pull request #96 from positiveblue/sql
Add support for sqlite/postgres database backends
2023-06-15 10:42:59 +02:00
positiveblue
33d53b2a2f ci: run unit tests against sqlite and postgres 2023-06-14 21:44:20 -07:00
positiveblue
bf96592f63 aperture: initialize server with the configured db backend 2023-06-14 21:44:20 -07:00
positiveblue
a9fb600044 config: support params for different database backends 2023-06-14 21:44:19 -07:00
positiveblue
680da97b62 aperturedb: implement onion store 2023-06-14 21:44:19 -07:00
positiveblue
9c5453b410 aperturedb: implement secrets store 2023-06-14 21:44:19 -07:00
positiveblue
6700d01b39 aperturedb: add support for postgres/sqlite 2023-06-14 21:44:17 -07:00
positiveblue
bddbc9326d ci: add sqlc codegen check to pipeline 2023-06-14 21:36:19 -07:00
positiveblue
f5dd767145 aperturedb: add table+queries for secrets and onion 2023-06-14 21:30:56 -07:00
positiveblue
f0c27c896c sqlc: add support for code generation 2023-06-14 21:30:53 -07:00
Olaoluwa Osuntokun
481a8f5a47 Merge pull request #101 from Roasbeef/rpc-yaml-fix
build: fix yaml indentation issue
2023-06-14 22:46:46 -05:00
Olaoluwa Osuntokun
520e40dedc build: properly add check-rest-annotations.sh
The builds fails otherwise. The Makefile has also been modified to use
the proper path here.
2023-06-14 20:13:12 -05:00
Olaoluwa Osuntokun
fa51fd5d8a build: fix yaml indentation issue 2023-06-14 19:48:26 -05:00
Olaoluwa Osuntokun
68b8d1b491 Merge pull request #99 from Roasbeef/pricesrpc-full-req
multi: extend the pricesrpc interface to pass in the full HTTP request context
2023-06-14 19:44:47 -05:00
Olaoluwa Osuntokun
c396ca51b7 prices: rename proto file to prices.proto
This fixes a registration conflict with the set of etcd protos.
2023-06-13 20:43:18 -05:00
Olaoluwa Osuntokun
40df8f8339 proxy+pricer: pass in the entire HTTP requests for GetPrice
In this commit, we modify the `GetPrice` method and interface to accept
the full request instead of _just_ the path. For backwards compat, we
leave the path in place, but also include the full serialized HTTP
request.
2023-06-13 20:43:14 -05:00
Olaoluwa Osuntokun
3a5dd96a95 pricesrpc: add http_request_text to GetPrice
In this commit, we add the http_request_text to the `GetPrice` RPC call.
This'll contain the fully serialized HTTP request, which'll permit the
back end to check things like the set of headers or request body, which
may be useful in more fine grained pricing functions.

One example is: when proxying requests to an LLM platform provider, the
backed may want to charge more based on the length of the
context/message and/or which model is being used.
2023-06-13 20:43:12 -05:00
Olaoluwa Osuntokun
e8fa845478 pricesrpc: run new proto generation script for pricesrpc 2023-06-13 20:43:10 -05:00
Olaoluwa Osuntokun
1fbafb04f9 build: add proto generation script for pricesrpc and CI integration 2023-06-13 20:43:07 -05:00
Olaoluwa Osuntokun
9b85f8bbc6 Merge pull request #93 from Roasbeef/doc-updates
docs: update docs, mention new minimum Go version
2023-04-28 12:46:21 -05:00
Oliver Gugger
27ccd581b1 Merge pull request #81 from bucko13/poc-creation-time-caveat
Timeout Caveat Support
2023-04-26 08:55:32 +02:00
Buck Perley
62f604bfe8 aperture: adds timeout option for services for relative expiration 2023-04-25 23:29:31 -05:00
Olaoluwa Osuntokun
d19168130b docs: update docs, mention new minimum Go version 2023-04-20 15:50:37 -07:00
Oliver Gugger
fa7df9e11f Merge pull request #92 from lightninglabs/lnd-0-16-0-final
mod: bump lnd to v0.16.0-beta
v0.1.20-beta
2023-03-29 15:36:41 +02:00
Oliver Gugger
fec2bbee26 mod: bump lnd to v0.16.0-beta 2023-03-29 15:30:04 +02:00
Oliver Gugger
b952e4ee6f Merge pull request #85 from lightninglabs/lnd-16
prepare for lnd 0.16
2023-02-27 13:43:49 +01:00
Oliver Gugger
27f3a1e15a multi: fix grpc version issue 2023-02-27 13:36:56 +01:00
Oliver Gugger
2b1feae753 multi: bump lnd+lndclient compile time dependency 2023-02-27 13:36:54 +01:00
Oliver Gugger
f7883eb1a5 Merge pull request #89 from lightninglabs/dependabot/go_modules/golang.org/x/crypto-0.1.0
build(deps): bump golang.org/x/crypto from 0.0.0-20211215153901-e495a2d5b3d3 to 0.1.0
2023-02-27 12:26:48 +01:00
dependabot[bot]
eabc2c1dc2 build(deps): bump golang.org/x/crypto
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20211215153901-e495a2d5b3d3 to 0.1.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](https://github.com/golang/crypto/commits/v0.1.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-27 08:33:29 +00:00
Oliver Gugger
28849d1205 Merge pull request #88 from lightninglabs/dependabot/go_modules/golang.org/x/net-0.7.0
build(deps): bump golang.org/x/net from 0.0.0-20220722155237-a158d28d115b to 0.7.0
2023-02-27 09:32:40 +01:00
dependabot[bot]
71136e6b96 build(deps): bump golang.org/x/net
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.0.0-20220722155237-a158d28d115b to 0.7.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/commits/v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-25 01:46:07 +00:00