feat: Add auth flow (#146)

This adds a simple way to incorporate a centralized authentication flow.

The idea is to have the user, API and SSH (for machine authentication)
all in one place using `openauthjs` + `SST`

We also have a database now :)

> We are using InstantDB as it allows us to authenticate a use with just
the email. Plus it is super simple simple to use _of course after the
initial fumbles trying to design the db and relationships_
This commit is contained in:
Wanjohi
2025-01-04 00:02:28 +03:00
committed by GitHub
parent 33895974a7
commit fc5a755408
136 changed files with 3512 additions and 1914 deletions

View File

@@ -0,0 +1,26 @@
package api
import (
"context"
"fmt"
"nestrilabs/cli/internal/resource"
"github.com/nestrilabs/nestri-go-sdk"
"github.com/nestrilabs/nestri-go-sdk/option"
)
func RegisterMachine(token string) {
client := nestri.NewClient(
option.WithBearerToken(token),
option.WithBaseURL(resource.Resource.Api.Url),
)
machine, err := client.Machines.New(
context.TODO(),
nestri.MachineNewParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", machine.Data)
}