Files
payloadcms/test/migrations-cli/config.ts
Elliot DeNolf 2198445df9 Feat/migrations cli (#2940)
* feat: migrate cli call db adapter

* feat: mongoose adapter migrate:create

* feat: implement migrate command

* feat: use mongooseAdapter in test config

* feat: use filename as migration name

* feat: intelligently execute migrations, status table

* feat: implement migrate:down

* feat: implement migrate:reset

* feat: implement migrate:refresh

* feat: move common adapter operations to database/migrations dir

* feat: delete migrations instead of storing ran property

* feat: createMigration cleanup

* feat: clean up logging and add duration to output

* chore: export type, handle graphQL false

* chore: simplify getting latest batch number

* chore: remove existing migration logging noise

* feat: remove adapter export from top level

* chore: fix some db types
2023-07-07 11:02:56 -04:00

53 lines
1.6 KiB
TypeScript

/* eslint-disable no-console */
import path from 'path';
import { buildConfig } from '../buildConfig';
import { CollectionConfig } from '../../types';
import { mongooseAdapter } from '../../src/mongoose';
import payload from '../../src';
const Users: CollectionConfig = {
slug: 'users',
auth: true,
fields: [
{
name: 'custom',
type: 'text',
},
{
name: 'checkbox',
type: 'checkbox',
},
],
};
// // @ts-expect-error partial
// const mockAdapter: DatabaseAdapter = {
// // payload: undefined,
// migrationDir: path.resolve(__dirname, '.migrations'),
// migrateStatus: async () => console.log('TODO: migrateStatus not implemented.'),
// createMigration: async (): Promise<void> =>
// console.log('TODO: createMigration not implemented.'),
// migrate: async (): Promise<void> => console.log('TODO: migrate not implemented.'),
// migrateDown: async (): Promise<void> =>
// console.log('TODO: migrateDown not implemented.'),
// migrateRefresh: async (): Promise<void> =>
// console.log('TODO: migrateRefresh not implemented.'),
// migrateReset: async (): Promise<void> =>
// console.log('TODO: migrateReset not implemented.'),
// migrateFresh: async (): Promise<void> =>
// console.log('TODO: migrateFresh not implemented.'),
// };
export default buildConfig({
serverURL: 'http://localhost:3000',
admin: {
user: Users.slug,
},
collections: [Users],
typescript: {
outputFile: path.resolve(__dirname, 'payload-types.ts'),
},
db: mongooseAdapter({ payload, url: 'mongodb://localhost:27017/migrations-cli-test' }),
});