88 lines
2.1 KiB
TOML
88 lines
2.1 KiB
TOML
[env]
|
|
LAST_FM_USER = 'change-me'
|
|
LAST_FM_API_KEY = 'change-me'
|
|
OPENAI_KEY = 'change-me'
|
|
FLUXON_KEY_FINGERPRINT = 'change-me'
|
|
FLUXON_LICENSE_KEY = 'change-me'
|
|
DBUI_URL = 'sqlite:data/music_library_dev.db'
|
|
|
|
[tools]
|
|
hurl = 'latest'
|
|
sqlite = 'latest'
|
|
gh = 'latest'
|
|
|
|
# PUBLIC TASKS
|
|
|
|
# CI
|
|
|
|
[tasks."ci:watch"]
|
|
description = "Monitor CI status"
|
|
run = "gh run watch"
|
|
|
|
# PRODUCTION
|
|
|
|
[tasks."prod:console"]
|
|
description = 'Open an ssh console to the production env'
|
|
run = 'ssh music-library-prod'
|
|
|
|
[tasks."prod:prune-backups"]
|
|
confirm = 'Are you sure you want to delete all downloaded database backups?'
|
|
description = 'Deletes all downloaded database backups'
|
|
run = 'rm data/music_library_prod*'
|
|
|
|
[tasks."prod:test"]
|
|
description = 'Run HTTP tests against production'
|
|
run = 'hurl --test test/prod.hurl'
|
|
|
|
[tasks."prod:deploy"]
|
|
description = 'Deploy on production and monitor'
|
|
run = """
|
|
hurl --test --progress-bar scripts/deploy.hurl
|
|
"""
|
|
|
|
# GIT TOOLING
|
|
|
|
[tasks.static-checks-hook]
|
|
description = '''
|
|
Pre-commit task to ensure code conforms to static checks policies.
|
|
|
|
Install with `mise generate git-pre-commit --write --task=dev:precommit`
|
|
'''
|
|
run = 'mix do format --check-formatted, credo --strict, gettext.extract --check-up-to-date'
|
|
hide = true
|
|
|
|
# DEVELOPMENT/TEST
|
|
|
|
[tasks."dev:static-checks"]
|
|
description = 'Run static checks for code formatting, translations, quality'
|
|
run = 'mix do format, credo, gettext.extract --merge'
|
|
|
|
[tasks.test]
|
|
description = 'Run project tests'
|
|
run = 'mix test'
|
|
|
|
[tasks."dev:console"]
|
|
description = 'Run the application attached to an IEx console'
|
|
run = 'iex -S mix phx.server'
|
|
|
|
[tasks."dev:readme-preview"]
|
|
description = 'Preview the README file via a GH flavoured markdown rendered'
|
|
run = 'gh gfm-preview README.md'
|
|
|
|
[tasks."dev:fix-translations-conflict"]
|
|
run = [
|
|
'git co --theirs priv/gettext/default.pot',
|
|
'git co --theirs priv/gettext/en/LC_MESSAGES/default.po',
|
|
'mix gettext.extract --merge',
|
|
]
|
|
|
|
# DOCKER
|
|
|
|
[tasks."docker:build"]
|
|
description = 'Builds and tags the application Docker image'
|
|
run = 'docker compose build'
|
|
|
|
[tasks."docker:push"]
|
|
description = 'Push the image to the registry'
|
|
run = 'docker compose push'
|