mirror of
https://github.com/balena-os/balena-supervisor.git
synced 2025-03-03 05:09:34 +00:00
39 lines
794 B
CoffeeScript
39 lines
794 B
CoffeeScript
Promise = require 'bluebird'
|
|
Knex = require 'knex'
|
|
|
|
knex = Knex.initialize(
|
|
client: 'sqlite3'
|
|
connection:
|
|
filename: '/data/database.sqlite'
|
|
)
|
|
|
|
knex.init = Promise.all([
|
|
knex.schema.hasTable('config')
|
|
.then (exists) ->
|
|
if not exists
|
|
knex.schema.createTable 'config', (t) ->
|
|
t.string('key').primary()
|
|
t.string('value')
|
|
|
|
knex.schema.hasTable('app')
|
|
.then (exists) ->
|
|
if not exists
|
|
knex.schema.createTable 'app', (t) ->
|
|
t.increments('id').primary()
|
|
t.string('name')
|
|
t.string('containerId')
|
|
t.string('commit')
|
|
t.string('imageId')
|
|
t.boolean('privileged')
|
|
t.json('env')
|
|
else
|
|
knex.schema.hasColumn('app', 'commit')
|
|
.then (exists) ->
|
|
if not exists
|
|
knex.schema.table 'app', (t) ->
|
|
t.string('commit')
|
|
|
|
])
|
|
|
|
module.exports = knex
|