Fela Maslen b74159c56f feat: route to fetch song info by ID 5 years ago
..
cmd e2f37eb5c6 feat: barebones http server, websocket API and react app 5 years ago
migrations 9c43ce622a feat: scanner cronjob (#2) 5 years ago
pkg b74159c56f feat: route to fetch song info by ID 5 years ago
.dockerignore 9c43ce622a feat: scanner cronjob (#2) 5 years ago
.gitignore 4775d52a09 Feature/music scanner (#1) 5 years ago
Dockerfile 9c43ce622a feat: scanner cronjob (#2) 5 years ago
Makefile 8df665e4a4 feat: project-wide makefile 5 years ago
README.md 9c43ce622a feat: scanner cronjob (#2) 5 years ago
docker-compose.yml e2f37eb5c6 feat: barebones http server, websocket API and react app 5 years ago
example.env d7cf87b649 chore: updated example env files 5 years ago
go.mod 99736ae3f5 feat: cors middleware 5 years ago
go.sum 99736ae3f5 feat: cors middleware 5 years ago
init.sql 4775d52a09 Feature/music scanner (#1) 5 years ago
test.env d7cf87b649 chore: updated example env files 5 years ago

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