Fela Maslen cbe9b8a4e2 chore: squashed migrations for this branch %!s(int64=5) %!d(string=hai) anos
..
cmd 02919625e6 feat: updated dockerfile %!s(int64=5) %!d(string=hai) anos
migrations cbe9b8a4e2 chore: squashed migrations for this branch %!s(int64=5) %!d(string=hai) anos
pkg 15866124e7 chore: moved batching logic into subscriber with better logging and naming %!s(int64=5) %!d(string=hai) anos
.dockerignore 02919625e6 feat: updated dockerfile %!s(int64=5) %!d(string=hai) anos
.gitignore 4775d52a09 Feature/music scanner (#1) %!s(int64=5) %!d(string=hai) anos
Dockerfile 02919625e6 feat: updated dockerfile %!s(int64=5) %!d(string=hai) anos
Makefile 8f5bc53f26 feat: ginkgo for testing and sqlx %!s(int64=5) %!d(string=hai) anos
README.md 7e664670d3 chore: makefile command to make a new migration %!s(int64=5) %!d(string=hai) anos
docker-compose.yml 4775d52a09 Feature/music scanner (#1) %!s(int64=5) %!d(string=hai) anos
example.env 4775d52a09 Feature/music scanner (#1) %!s(int64=5) %!d(string=hai) anos
go.mod bb1cff6949 feat: batch filtering of scanned files %!s(int64=5) %!d(string=hai) anos
go.sum 8f5bc53f26 feat: ginkgo for testing and sqlx %!s(int64=5) %!d(string=hai) anos
init.sql 4775d52a09 Feature/music scanner (#1) %!s(int64=5) %!d(string=hai) anos
test.env f8ab29e06b feat: library directory environment variable %!s(int64=5) %!d(string=hai) anos

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:

  • NAME=create_some_table make migrate.make

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