refac: use embed instead of go-bindata, secure closing of transactions
This commit is contained in:
@ -1,12 +1,6 @@
|
||||
package imp
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/url"
|
||||
|
||||
"git.cryptic.systems/volker.raschek/flucky/pkg/config"
|
||||
"git.cryptic.systems/volker.raschek/flucky/pkg/repository"
|
||||
"git.cryptic.systems/volker.raschek/go-logger"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
@ -35,47 +29,47 @@ func InitCmd(cmd *cobra.Command) error {
|
||||
}
|
||||
|
||||
func importSources(cmd *cobra.Command, args []string) error {
|
||||
configFile, err := cmd.Flags().GetString("config")
|
||||
if err != nil {
|
||||
return fmt.Errorf("No config file defined")
|
||||
}
|
||||
// configFile, err := cmd.Flags().GetString("config")
|
||||
// if err != nil {
|
||||
// return fmt.Errorf("No config file defined")
|
||||
// }
|
||||
|
||||
cnf, err := config.Read(configFile)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// cnf, err := config.Read(configFile)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
destURL, err := url.Parse(cnf.DSN)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// destURL, err := url.Parse(cnf.DSN)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
logLevelString, err := cmd.Flags().GetString("loglevel")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// logLevelString, err := cmd.Flags().GetString("loglevel")
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
logLevel, err := logger.ParseLogLevel(logLevelString)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// logLevel, err := logger.ParseLogLevel(logLevelString)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
flogger := logger.NewLogger(logLevel)
|
||||
// flogger := logger.NewLogger(logLevel)
|
||||
|
||||
sourceURL, err := url.Parse(args[0])
|
||||
if err != nil {
|
||||
return fmt.Errorf("Failed to parse source url: %w", err)
|
||||
}
|
||||
// sourceURL, err := url.Parse(args[0])
|
||||
// if err != nil {
|
||||
// return fmt.Errorf("Failed to parse source url: %w", err)
|
||||
// }
|
||||
|
||||
err = repository.Import(sourceURL, destURL, flogger, repository.OptImport{
|
||||
Sensors: importSensors,
|
||||
Humidities: importHumidities,
|
||||
Pressures: importPressures,
|
||||
Temperatures: importTemperatures,
|
||||
})
|
||||
if err != nil {
|
||||
return fmt.Errorf("Failed to import: %w", err)
|
||||
}
|
||||
// err = repository.Import(sourceURL, destURL, flogger, repository.OptImport{
|
||||
// Sensors: importSensors,
|
||||
// Humidities: importHumidities,
|
||||
// Pressures: importPressures,
|
||||
// Temperatures: importTemperatures,
|
||||
// })
|
||||
// if err != nil {
|
||||
// return fmt.Errorf("Failed to import: %w", err)
|
||||
// }
|
||||
|
||||
return nil
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package sensor
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"net/url"
|
||||
"os"
|
||||
@ -184,7 +185,7 @@ func addSensor(cmd *cobra.Command, args []string) error {
|
||||
}
|
||||
|
||||
// add sensor entry to list
|
||||
err = repo.AddSensors(sensor)
|
||||
err = repo.AddSensors(context.Background())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -227,7 +228,21 @@ func disableSensor(cmd *cobra.Command, args []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
return repo.DisableSensorsByNames(args...)
|
||||
s, err := repo.GetSensorsByNames(context.Background(), args...)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for i := range s {
|
||||
s[i].Enabled = false
|
||||
}
|
||||
|
||||
err = repo.UpdateSensors(context.Background(), s...)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func enableSensor(cmd *cobra.Command, args []string) error {
|
||||
@ -259,7 +274,21 @@ func enableSensor(cmd *cobra.Command, args []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
return repo.EnableSensorsByNames(args...)
|
||||
s, err := repo.GetSensorsByNames(context.Background(), args...)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for i := range s {
|
||||
s[i].Enabled = true
|
||||
}
|
||||
|
||||
err = repo.UpdateSensors(context.Background(), s...)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func listSensors(cmd *cobra.Command, args []string) error {
|
||||
@ -292,7 +321,7 @@ func listSensors(cmd *cobra.Command, args []string) error {
|
||||
}
|
||||
|
||||
// add sensor entry to list
|
||||
sensors, err := repo.GetSensorsByDeviceID(cnf.DeviceID)
|
||||
sensors, err := repo.GetSensorsByDeviceIDs(context.Background(), cnf.DeviceID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -334,7 +363,7 @@ func removeSensor(cmd *cobra.Command, args []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
return repo.RemoveSensorsByNames(args...)
|
||||
return repo.RemoveSensorsByNames(context.Background(), args...)
|
||||
}
|
||||
|
||||
func renameSensor(cmd *cobra.Command, args []string) error {
|
||||
@ -366,5 +395,20 @@ func renameSensor(cmd *cobra.Command, args []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
return repo.RenameSensors(args[0], args[1])
|
||||
s, err := repo.GetSensorsByNames(context.Background(), args[0])
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for i := range s {
|
||||
s[i].Name = args[1]
|
||||
}
|
||||
|
||||
err = repo.UpdateSensors(context.Background(), s...)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
|
||||
}
|
||||
|
@ -72,7 +72,9 @@ func readTemperature(cmd *cobra.Command, args []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
sensorTypes, err := repo.GetSensors()
|
||||
ctx := context.Background()
|
||||
|
||||
sensorTypes, err := repo.GetSensors(ctx)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -123,7 +125,7 @@ LOOP:
|
||||
}
|
||||
|
||||
if persist {
|
||||
err = repo.AddMeasuredValues(measuredValues...)
|
||||
err = repo.AddMeasuredValues(ctx, measuredValues...)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
Reference in New Issue
Block a user