grim/devweb

4f1533323fbc
Clean up the way the vue app is emebded and start our own ui
package access
import (
"fmt"
"github.com/gofrs/uuid"
"github.com/shengdoushi/base58"
"keep.imfreedom.org/grim/devweb/db"
)
type CreateCmd struct {
db.Options
}
func (c *CreateCmd) newToken() (string, error) {
uuid, err := uuid.NewV4()
if err != nil {
return "", err
}
token := base58.Encode(uuid.Bytes(), base58.BitcoinAlphabet)
return token, nil
}
func (c *CreateCmd) Run() error {
err := db.Setup(c.Options.Driver, c.Options.Options)
if err != nil {
return err
}
accessKey, err := c.newToken()
if err != nil {
db.Teardown()
return err
}
secretKey, err := c.newToken()
if err != nil {
db.Teardown()
return err
}
apiKey := db.APIKey{
AccessKey: accessKey,
SecretKey: secretKey,
}
if err := apiKey.Create(); err != nil {
db.Teardown()
return err
}
fmt.Printf("New API Key created:\n")
fmt.Printf("Access Key: %s\n", accessKey)
fmt.Printf("Secret Key: %s\n", secretKey)
return db.Teardown()
}