Add depot, attendant, jetfire, optimus, ota services with kustomize overlays
This commit is contained in:
63
services/jetfire/utils/functions.go
Normal file
63
services/jetfire/utils/functions.go
Normal file
@@ -0,0 +1,63 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"math"
|
||||
"os"
|
||||
"time"
|
||||
|
||||
"github.com/fiskerinc/cloud-services/pkg/logger"
|
||||
"github.com/intel-go/fastjson"
|
||||
"github.com/sony/gobreaker"
|
||||
)
|
||||
|
||||
// Converts float64 (as decimal seconds in unix epoch) to Time.Time struct
|
||||
func FloatToTime(float float64) time.Time {
|
||||
s := int64(math.Floor(float))
|
||||
ns := int64((float - math.Floor(float)) * 1e9)
|
||||
return time.Unix(
|
||||
s,
|
||||
ns,
|
||||
)
|
||||
}
|
||||
|
||||
func TimeToFloat(timestamp time.Time) float64 {
|
||||
return float64(timestamp.UnixNano()) / 1e9
|
||||
}
|
||||
|
||||
func FixFloatTimestampScale(float float64) float64 {
|
||||
for float > 9999999999 {
|
||||
float /= 1000
|
||||
}
|
||||
return float
|
||||
}
|
||||
|
||||
// marchTimer increments the value at timer until newTime has been reached.
|
||||
// This is used to try to maintain consistent downsample and insertion periods.
|
||||
func MarchTimer(timer *time.Time, newTime *time.Time, delay time.Duration) {
|
||||
for timer.Before(*newTime) {
|
||||
*timer = timer.Add(delay)
|
||||
}
|
||||
}
|
||||
|
||||
func ReadVarListFromFile(varsFile string) []string {
|
||||
data, err := os.ReadFile(varsFile)
|
||||
if err != nil {
|
||||
// when running tests, pwd is in the wrong directory to find the default json files.
|
||||
os.Chdir("..")
|
||||
data, err = os.ReadFile(varsFile)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
var result []string
|
||||
err = fastjson.Unmarshal(data, &result)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func BreakerStateChange(name string, from gobreaker.State, to gobreaker.State) {
|
||||
logger.Warn().Stack().Msgf("%s breaker change from %d to %d", name, from, to)
|
||||
}
|
||||
Reference in New Issue
Block a user