Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat: env names updated
  • Loading branch information
spikeninja committed May 7, 2026
commit dd8078aea048c94fb671f9cb43338a1768d85d93
10 changes: 5 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ RUN corepack enable

WORKDIR /app

ENV DB_DRIVER=sqlite
ENV DB_FILE_PATH=/tmp/taskiq-admin.db
ENV TASKIQ_ADMIN_DB_DRIVER=sqlite
ENV TASKIQ_ADMIN_DB_FILE_PATH=/tmp/taskiq-admin.db

# install dependencies
COPY ./package.json /app/
Expand All @@ -36,9 +36,9 @@ COPY --from=build /app/entrypoint.sh /usr/app/entrypoint.sh

EXPOSE 3000
ENV HOST=0.0.0.0 NODE_ENV=production
ENV DB_DRIVER=sqlite
ENV DB_FILE_PATH=/usr/database/database.db
ENV BACKUP_FILE_PATH=/usr/database/backup.db
ENV TASKIQ_ADMIN_DB_DRIVER=sqlite
ENV TASKIQ_ADMIN_DB_FILE_PATH=/usr/database/database.db
ENV TASKIQ_ADMIN_BACKUP_FILE_PATH=/usr/database/backup.db

RUN npm install dotenv

Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,9 +92,9 @@ volumes:
3) run `make prod` to run it locally in prod mode

Environment variables for DB setup:
- `DB_DRIVER`: required, one of `sqlite` or `postgres`
- `DB_FILE_PATH`: required when `DB_DRIVER=sqlite`
- `DB_URL`: required when `DB_DRIVER=postgres`
- `TASKIQ_ADMIN_DB_DRIVER`: required, one of `sqlite` or `postgres`
- `TASKIQ_ADMIN_DB_FILE_PATH`: required when `TASKIQ_ADMIN_DB_DRIVER=sqlite`
- `TASKIQ_ADMIN_DB_URL`: required when `TASKIQ_ADMIN_DB_DRIVER=postgres`

### Task States
Let's assume we have a task 'do_smth', there are all states it can embrace:
Expand Down
14 changes: 8 additions & 6 deletions drizzle.config.ts
Original file line number Diff line number Diff line change
@@ -1,26 +1,28 @@
import 'dotenv/config'
import { defineConfig } from 'drizzle-kit'

const dbDriver = process.env.DB_DRIVER
const dbDriver = process.env.TASKIQ_ADMIN_DB_DRIVER

if (!dbDriver) {
throw new Error('Environment variable DB_DRIVER is required')
throw new Error('Environment variable TASKIQ_ADMIN_DB_DRIVER is required')
}

if (dbDriver !== 'sqlite' && dbDriver !== 'postgres') {
throw new Error(
'Environment variable DB_DRIVER must be "sqlite" or "postgres"'
'Environment variable TASKIQ_ADMIN_DB_DRIVER must be "sqlite" or "postgres"'
)
}

const dbUrl =
dbDriver === 'sqlite' ? process.env.DB_FILE_PATH : process.env.DB_URL
dbDriver === 'sqlite'
? process.env.TASKIQ_ADMIN_DB_FILE_PATH
: process.env.TASKIQ_ADMIN_DB_URL

if (!dbUrl) {
throw new Error(
dbDriver === 'sqlite'
? 'Environment variable DB_FILE_PATH is required for sqlite driver'
: 'Environment variable DB_URL is required for postgres driver'
? 'Environment variable TASKIQ_ADMIN_DB_FILE_PATH is required for sqlite driver'
: 'Environment variable TASKIQ_ADMIN_DB_URL is required for postgres driver'
)
}

Expand Down
8 changes: 4 additions & 4 deletions env-example
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
DB_DRIVER=sqlite
DB_FILE_PATH=database/database.db
DB_URL=postgres://postgres:postgres@localhost:5432/taskiq_admin
BACKUP_FILE_PATH=database/backup.db
TASKIQ_ADMIN_DB_DRIVER=sqlite
TASKIQ_ADMIN_DB_FILE_PATH=database/database.db
TASKIQ_ADMIN_DB_URL=postgres://postgres:postgres@localhost:5432/taskiq_admin
TASKIQ_ADMIN_BACKUP_FILE_PATH=database/backup.db
TASKIQ_ADMIN_API_TOKEN=supersecret
18 changes: 9 additions & 9 deletions shared/env.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ const getRequiredEnv = (name: string) => {
}

const getDbDriver = (): DBDriver => {
const value = process.env.DB_DRIVER
const value = process.env.TASKIQ_ADMIN_DB_DRIVER
if (!value) {
throw new Error('Environment variable DB_DRIVER is required')
throw new Error('Environment variable TASKIQ_ADMIN_DB_DRIVER is required')
}
if (value !== 'sqlite' && value !== 'postgres') {
throw new Error(
'Environment variable DB_DRIVER must be "sqlite" or "postgres"'
'Environment variable TASKIQ_ADMIN_DB_DRIVER must be "sqlite" or "postgres"'
)
}
return value
Expand All @@ -27,15 +27,15 @@ export const envVariables = {
dbDriver,
dbFilePath:
dbDriver === 'sqlite'
? getRequiredEnv('DB_FILE_PATH')
: process.env.DB_FILE_PATH || '',
? getRequiredEnv('TASKIQ_ADMIN_DB_FILE_PATH')
: process.env.TASKIQ_ADMIN_DB_FILE_PATH || '',
dbUrl:
dbDriver === 'postgres'
? getRequiredEnv('DB_URL')
: process.env.DB_URL || '',
? getRequiredEnv('TASKIQ_ADMIN_DB_URL')
: process.env.TASKIQ_ADMIN_DB_URL || '',
backupFilePath:
dbDriver === 'sqlite'
? getRequiredEnv('BACKUP_FILE_PATH')
: process.env.BACKUP_FILE_PATH || '',
? getRequiredEnv('TASKIQ_ADMIN_BACKUP_FILE_PATH')
: process.env.TASKIQ_ADMIN_BACKUP_FILE_PATH || '',
taskiqAdminApiToken: getRequiredEnv('TASKIQ_ADMIN_API_TOKEN')
}
6 changes: 3 additions & 3 deletions tests/task-flow.nuxt.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ await setup({
server: true, // up the Nitro server
env: {
NODE_ENV: 'test',
DB_DRIVER: 'sqlite',
DB_FILE_PATH: ':memory:',
BACKUP_FILE_PATH: ':memory:',
TASKIQ_ADMIN_DB_DRIVER: 'sqlite',
TASKIQ_ADMIN_DB_FILE_PATH: ':memory:',
TASKIQ_ADMIN_BACKUP_FILE_PATH: ':memory:',
TASKIQ_ADMIN_API_TOKEN: 'supersecret'
}
})
Expand Down