···11+pub mod album;
22+pub mod album_track;
33+pub mod artist;
44+pub mod artist_album;
55+pub mod artist_track;
66+pub mod loved_track;
77+pub mod playlist;
88+pub mod playlist_track;
99+pub mod scrobble;
1010+pub mod track;
1111+pub mod user;
1212+pub mod user_album;
1313+pub mod user_artist;
1414+pub mod user_playlist;
1515+pub mod user_track;
···3232 .subcommand(Command::new("spotify").about("Start Spotify Listener Service"))
3333 .subcommand(Command::new("tracklist").about("Start User Current Track Queue Service"))
3434 .subcommand(Command::new("webscrobbler").about("Start Webscrobbler API"))
3535+ .subcommand(
3636+ Command::new("pull")
3737+ .about("Pull data from a remote PostgreSQL database to your local PostgresSQL instance")
3838+ .long_about("Pull data from a remote PostgreSQL database to your local PostgresSQL instance. Ensure that the SOURCE_POSTGRES_URL environment variable is set to your remote PostgreSQL connection string."),
3939+ )
3540}
36413742#[tokio::main]
···8489 }
8590 Some(("webscrobbler", _)) => {
8691 cmd::webscrobbler::start_webscrobbler_service().await?;
9292+ }
9393+ Some(("pull", _)) => {
9494+ cmd::pull::pull_data().await?;
8795 }
8896 _ => {
8997 println!("No valid subcommand was used. Use --help to see available commands.");