diff --git a/.changeset/heavy-toes-cheer.md b/.changeset/heavy-toes-cheer.md new file mode 100644 index 0000000..519d97d --- /dev/null +++ b/.changeset/heavy-toes-cheer.md @@ -0,0 +1,5 @@ +--- +'@emigrate/storage-fs': minor +--- + +Adapt to the new plugin structure and rename from "@emigrate/plugin-storage-fs" to just "@emigrate/storage-fs" diff --git a/packages/plugin-storage-fs/README.md b/packages/plugin-storage-fs/README.md deleted file mode 100644 index ac3e9f3..0000000 --- a/packages/plugin-storage-fs/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# @emigrate/plugin-storage-fs - -A file system storage plugin for Emigrate, suitable for simple migration setups. To support containerized environments, it is recommended to use a database storage plugin instead. - -## Installation - -Install the plugin in your project, alongside the Emigrate CLI: - -```bash -npm install --save-dev @emigrate/cli @emigrate/plugin-storage-fs -``` - -## Usage - -Configure the plugin in your `emigrate.config.js` file: - -```js -import storageFs from '@emigrate/plugin-storage-fs'; - -export default { - directory: 'migrations', - plugins: [storageFs({ filename: '.migrated.json' })], -}; -``` diff --git a/packages/plugin-storage-fs/CHANGELOG.md b/packages/storage-fs/CHANGELOG.md similarity index 94% rename from packages/plugin-storage-fs/CHANGELOG.md rename to packages/storage-fs/CHANGELOG.md index 06c6d89..284bf6a 100644 --- a/packages/plugin-storage-fs/CHANGELOG.md +++ b/packages/storage-fs/CHANGELOG.md @@ -1,4 +1,4 @@ -# @emigrate/plugin-storage-fs +# @emigrate/storage-fs ## 0.1.1 diff --git a/packages/storage-fs/README.md b/packages/storage-fs/README.md new file mode 100644 index 0000000..3fc6e65 --- /dev/null +++ b/packages/storage-fs/README.md @@ -0,0 +1,30 @@ +# @emigrate/storage-fs + +A file system storage plugin for Emigrate, suitable for simple migration setups. To support containerized environments, it is recommended to use a database storage plugin instead. + +## Installation + +Install the storage plugin in your project, alongside the Emigrate CLI: + +```bash +npm install --save-dev @emigrate/cli @emigrate/storage-fs +``` + +## Usage + +Configure the storage in your `emigrate.config.js` file: + +```js +import storageFs from '@emigrate/storage-fs'; + +export default { + directory: 'migrations', + storage: storageFs({ filename: '.migrated.json' }), +}; +``` + +Or use the CLI option `--storage` (or `-s`): + +```bash +emigrate up --storage fs # the @emigrate/storage- prefix is optional +``` diff --git a/packages/plugin-storage-fs/package.json b/packages/storage-fs/package.json similarity index 89% rename from packages/plugin-storage-fs/package.json rename to packages/storage-fs/package.json index b09ea01..fb6f7dc 100644 --- a/packages/plugin-storage-fs/package.json +++ b/packages/storage-fs/package.json @@ -1,5 +1,5 @@ { - "name": "@emigrate/plugin-storage-fs", + "name": "@emigrate/storage-fs", "version": "0.1.1", "publishConfig": { "access": "public" @@ -24,14 +24,14 @@ }, "keywords": [ "emigrate", - "emigrate-plugin", + "emigrate-storage", "plugin", "migrations", "storage" ], "author": "Aboviq AB (https://www.aboviq.com)", - "homepage": "https://github.com/aboviq/emigrate/tree/main/packages/plugin-storage-fs#readme", - "repository": "https://github.com/aboviq/emigrate/tree/main/packages/plugin-storage-fs", + "homepage": "https://github.com/aboviq/emigrate/tree/main/packages/storage-fs#readme", + "repository": "https://github.com/aboviq/emigrate/tree/main/packages/storage-fs", "bugs": "https://github.com/aboviq/emigrate/issues", "license": "MIT", "dependencies": { diff --git a/packages/plugin-storage-fs/src/index.ts b/packages/storage-fs/src/index.ts similarity index 95% rename from packages/plugin-storage-fs/src/index.ts rename to packages/storage-fs/src/index.ts index 4b5b474..05d4801 100644 --- a/packages/plugin-storage-fs/src/index.ts +++ b/packages/storage-fs/src/index.ts @@ -1,7 +1,7 @@ import fs from 'node:fs/promises'; import path from 'node:path'; import process from 'node:process'; -import { type StoragePlugin, type MigrationStatus } from '@emigrate/plugin-tools/types'; +import { type EmigrateStorage, type MigrationStatus } from '@emigrate/plugin-tools/types'; export type StorageFsOptions = { filename: string; @@ -13,7 +13,7 @@ type SerializedError = { stack?: string; }; -export default function storageFs({ filename }: StorageFsOptions): StoragePlugin { +export default function storageFs({ filename }: StorageFsOptions): EmigrateStorage { const filePath = path.resolve(process.cwd(), filename); const lockFilePath = `${filePath}.lock`; diff --git a/packages/plugin-storage-fs/tsconfig.json b/packages/storage-fs/tsconfig.json similarity index 100% rename from packages/plugin-storage-fs/tsconfig.json rename to packages/storage-fs/tsconfig.json diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 84f7f4c..0a2ac9a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -95,16 +95,6 @@ importers: specifier: workspace:* version: link:../tsconfig - packages/plugin-storage-fs: - dependencies: - '@emigrate/plugin-tools': - specifier: workspace:* - version: link:../plugin-tools - devDependencies: - '@emigrate/tsconfig': - specifier: workspace:* - version: link:../tsconfig - packages/plugin-tools: dependencies: import-from-esm: @@ -115,6 +105,16 @@ importers: specifier: workspace:* version: link:../tsconfig + packages/storage-fs: + dependencies: + '@emigrate/plugin-tools': + specifier: workspace:* + version: link:../plugin-tools + devDependencies: + '@emigrate/tsconfig': + specifier: workspace:* + version: link:../tsconfig + packages/tsconfig: {} packages: