PKGBUILD/cmd/db/db.go

63 lines
1.2 KiB
Go
Raw Normal View History

2019-08-20 19:37:45 +00:00
package db
import (
"context"
"log"
"github.com/Masterminds/semver"
"github.com/go-flucky/flucky/pkg/config"
database "github.com/go-flucky/flucky/pkg/storage/db"
2019-08-20 19:37:45 +00:00
"github.com/go-flucky/flucky/pkg/types"
"github.com/spf13/cobra"
)
var (
configFile *string
version *semver.Version
)
2019-08-20 19:37:45 +00:00
var dbCmd = &cobra.Command{
Use: "db",
Short: "Operates with the configured database",
Run: func(cmd *cobra.Command, args []string) {
// read configuration
cnf, err := config.Read(*configFile)
if err != nil {
log.Fatalln(err)
}
postgresDB, err := database.New(cnf.DatabaseSettings)
2019-08-20 19:37:45 +00:00
if err != nil {
log.Fatalf("%v", err)
}
ctx := context.Background()
devices := []*types.Device{
&types.Device{
DeviceID: "1684df26-bc72-4435-a4f9-74b24bdb286c",
DeviceName: "raspberr-pi",
},
&types.Device{
DeviceID: "1684df26-bc72-4435-a4f9-74b24bdb286c",
DeviceName: "raspberr-pi",
},
}
if err := postgresDB.InsertDevices(ctx, devices); err != nil {
log.Fatalln(err)
}
},
}
// Execute a
func InitCmd(cmd *cobra.Command, cnfFile *string, sversion *semver.Version) {
2019-08-20 19:37:45 +00:00
configFile = cnfFile
version = sversion
2019-08-20 19:37:45 +00:00
cmd.AddCommand(dbCmd)
}