navidrome/db/migrations/20210626213026_add_scrobble...

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

40 lines
888 B
Go
Raw Normal View History

2021-06-24 06:01:05 +02:00
package migrations
import (
2023-11-27 20:46:44 +01:00
"context"
2021-06-24 06:01:05 +02:00
"database/sql"
2023-04-04 15:57:00 +02:00
"github.com/pressly/goose/v3"
2021-06-24 06:01:05 +02:00
)
func init() {
2023-11-27 20:46:44 +01:00
goose.AddMigrationContext(upAddScrobbleBuffer, downAddScrobbleBuffer)
2021-06-24 06:01:05 +02:00
}
2023-11-27 20:46:44 +01:00
func upAddScrobbleBuffer(_ context.Context, tx *sql.Tx) error {
2021-06-24 06:01:05 +02:00
_, err := tx.Exec(`
create table if not exists scrobble_buffer
(
user_id varchar not null
constraint scrobble_buffer_user_id_fk
references user
on update cascade on delete cascade,
service varchar not null,
media_file_id varchar not null
constraint scrobble_buffer_media_file_id_fk
references media_file
on update cascade on delete cascade,
play_time datetime not null,
enqueue_time datetime not null default current_timestamp,
constraint scrobble_buffer_pk
unique (user_id, service, media_file_id, play_time, user_id)
);
`)
return err
}
2023-11-27 20:46:44 +01:00
func downAddScrobbleBuffer(_ context.Context, tx *sql.Tx) error {
2021-06-24 06:01:05 +02:00
return nil
}