[docs] Add firefish migration docs

This commit is contained in:
Jeder 2023-12-11 15:52:48 +01:00
parent 8a642be6d9
commit 204f8bcd01
No known key found for this signature in database
GPG key ID: 5896D495990EB20C

View file

@ -31,14 +31,11 @@ git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git
git fetch origin git fetch origin
git stash push git stash push
rm -rf fluent-emojis misskey-assets rm -rf fluent-emojis misskey-assets
git switch main # or beta or develop git checkout v2023.11.4 # or any other tag or dev
git pull --ff
wget -O renote_muting.patch https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/docs/renote_muting.patch wget -O renote_muting.patch https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/docs/renote_muting.patch
git apply renote_muting.patch git apply renote_muting.patch
pnpm install # build and migrate using preferred method
NODE_ENV=production pnpm run build
pnpm run migrate
git stash push git stash push
``` ```
@ -71,11 +68,9 @@ If no other errors happened, your Iceshrimp is ready to launch!
```sh ```sh
git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git
git fetch git fetch
git checkout main # or beta or develop git checkout v2023.11.4 # or any other tag or dev
git pull --ff
NODE_ENV=production pnpm run migrate # build and run migrations using preferred method
# build using prefered method
``` ```
## FoundKey ## 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 wget -O fk.patch https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/docs/fk.patch
git apply fk.patch git apply fk.patch
cd packages/backend cd packages/backend
```
LINE_NUM="$(npx typeorm migration:show -d ormconfig.js | grep -n uniformThemecolor1652859567549 | cut -d ':' -f 1)" 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
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
```
git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git
git fetch git fetch
git checkout main # or dev git checkout v2023.11.4 # or any other tag or dev
git pull --ff
NODE_ENV=production pnpm run migrate # build and migrate using preferred method
# build using prefered 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 ## 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.