Initial implementation for Spotify listens export

This commit is contained in:
Philipp Wolfer 2023-11-20 08:43:10 +01:00
parent 3ded679d80
commit 3d3685d8bc
No known key found for this signature in database
GPG key ID: 8FDF744D4919943B
11 changed files with 2355 additions and 3 deletions

View file

@ -43,15 +43,19 @@ var listensCmd = &cobra.Command{
targetName, targetConfig := getConfigFromFlag(cmd, "to")
fmt.Printf("Transferring listens from %s to %s...\n", sourceName, targetName)
// Setup database
db, err := storage.New(viper.GetString("database"))
cobra.CheckErr(err)
// Initialize backends
exportBackend, err := backends.ResolveBackend[models.ListensExport](sourceConfig)
cobra.CheckErr(err)
importBackend, err := backends.ResolveBackend[models.ListensImport](targetConfig)
cobra.CheckErr(err)
// Setup database
db, err := storage.New(viper.GetString("database"))
cobra.CheckErr(err)
// Authenticate backends, if needed
backends.Authenticate(exportBackend, db, viper.GetViper())
backends.Authenticate(importBackend, db, viper.GetViper())
// Read timestamp
timestamp := time.Unix(getInt64FromFlag(cmd, "timestamp"), 0)