web-service/apps/assets/src/database/migrations/20230722190600_assets.ts

23 lines
783 B
TypeScript

import { Knex } from 'knex';
export async function up(knex: Knex): Promise<void> {
return knex.schema.createTable('assets', (table) => {
table.uuid('id').primary().defaultTo(knex.raw('uuid_generate_v4()'));
table.uuid('user_id').nullable();
table.text('asset_tag').nullable();
table.text('source_uri').notNullable();
table.text('source').nullable();
table.text('originalname').notNullable();
table.string('mimetype').notNullable();
table.integer('filesize').unsigned().notNullable();
table.text('upload_ip').nullable();
table.boolean('public').defaultTo(false);
table.timestamps(true, true);
table.timestamp('deleted_at');
});
}
export async function down(knex: Knex): Promise<void> {
return knex.schema.dropTable('assets');
}