diff --git a/docs/migrate.md b/docs/migrate.md index 9709c1cf1..4d9b9cb66 100644 --- a/docs/migrate.md +++ b/docs/migrate.md @@ -31,14 +31,11 @@ git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git git fetch origin git stash push rm -rf fluent-emojis misskey-assets -git switch main # or beta or develop -git pull --ff +git checkout v2023.11.4 # or any other tag or dev wget -O renote_muting.patch https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/docs/renote_muting.patch git apply renote_muting.patch -pnpm install -NODE_ENV=production pnpm run build -pnpm run migrate +# build and migrate using preferred method git stash push ``` @@ -71,11 +68,9 @@ If no other errors happened, your Iceshrimp is ready to launch! ```sh git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git git fetch -git checkout main # or beta or develop -git pull --ff +git checkout v2023.11.4 # or any other tag or dev -NODE_ENV=production pnpm run migrate -# build using prefered method +# build and run migrations using preferred method ``` ## FoundKey @@ -84,23 +79,28 @@ NODE_ENV=production pnpm run migrate wget -O fk.patch https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/docs/fk.patch git apply fk.patch cd packages/backend +``` -LINE_NUM="$(npx typeorm migration:show -d ormconfig.js | grep -n uniformThemecolor1652859567549 | cut -d ':' -f 1)" -NUM_MIGRATIONS="$(npx typeorm migration:show -d ormconfig.js | tail -n+"$LINE_NUM" | grep '\[X\]' | wc -l)" - -for i in $(seq 1 $NUM_MIGRATIONS); do - npx typeorm migration:revert -d ormconfig.js -done +Run `npx typeorm migration:revert -d ormconfig.js` for every migration until you see that `uniformThemecolor1652859567549` has been reverted. Command will not terminate properly after reverting, so you'll have to Ctrl-C +``` git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git git fetch -git checkout main # or dev -git pull --ff +git checkout v2023.11.4 # or any other tag or dev -NODE_ENV=production pnpm run migrate -# build using prefered method +# build and migrate using preferred method ``` +## Firefish +Run `docker exec -it firefish_web /bin/sh` if using docker, before doing reverts. +Go to `packages/backend`, revert migrations manually using `pnpm run revertmigration:typeorm` for every migration, until `FirefishRepo1689957674000` has been reverted. Command will not terminate properly after reverting, so you'll have to Ctrl-C. +If you are migrating from versions newer than 1.0.3, you'll also have to run `pnpm run revertmigration:cargo` for every migration, until `m20230806_170616_fix_antenna_stream_ids` has been reverted. + +Build and run migrations using your preferred method. + +### Troubleshooting +If migration `IncreaseHostCharLimit1692374635734` failed to revert, please run `DELETE FROM "migrations" WHERE "name" = 'IncreaseHostCharLimit1692374635734';` + ## Reverse -You ***cannot*** migrate back to Misskey from Iceshrimp due to re-hashing passwords on signin with argon2. You can migrate from Iceshrimp to FoundKey, although this is not recommended due to FoundKey being end-of-life, and may have some problems with alt-text. +You ***cannot*** migrate back to Misskey from Iceshrimp due to re-hashing passwords on signin with argon2, however theoretically you should be able to migrate from Iceshrimp to Firefish. You can migrate from Iceshrimp to FoundKey, although this is not recommended due to FoundKey being end-of-life, and may have some problems with alt-text.