Fela Maslen 9abea2f5ea feat: service layer for scanner 5 år sedan
..
cmd f00d326f64 feat: more robust recursive scanning tests 5 år sedan
migrations bc244d1138 chore: moved migrations directory to root of project 5 år sedan
pkg 9abea2f5ea feat: service layer for scanner 5 år sedan
.gitignore 01354895ae feat: directory structure with dummy db package 5 år sedan
Dockerfile 01354895ae feat: directory structure with dummy db package 5 år sedan
Makefile 443c36ee05 feat: database method to insert songs from a channel 5 år sedan
README.md 443c36ee05 feat: database method to insert songs from a channel 5 år sedan
docker-compose.yml 9f1f3b5101 feat: database migrations and docker compose test DB setup 5 år sedan
example.env 9f1f3b5101 feat: database migrations and docker compose test DB setup 5 år sedan
go.mod 443c36ee05 feat: database method to insert songs from a channel 5 år sedan
go.sum 370f54fb09 feat: database pooling, migrations in test 5 år sedan
init.sql 9f1f3b5101 feat: database migrations and docker compose test DB setup 5 år sedan
test.env 8021dc78a4 feat: logger package 5 år sedan

README.md

music-scanner

This is the backend part of the music player, written in Golang.

Building

Run make build inside this directory. Binaries will be built and output to the bin directory (which will be created if it does not exist).

Testing

Run make test inside this directory, to run unit and integration tests.

Migrations

First, make sure the following environment variables are set:

  • POSTGRES_HOST
  • POSTGRES_USER
  • POSTGRES_PASSWORD
  • POSTGRES_PORT (optional, defaults to 5432)
  • POSTGRES_DATABASE

Then, run:

  • make migrate

Creating migrations

After getting the migrate CLI tool, run:

  • migrate create -ext sql -dir pkg/db/migrations -seq create_some_table

Components

Music scanner

This is intended to be run as a scheduled job. It will scan a directory and add relevant metadata to a PostgreSQL database.

Usage

bin/scan