Тестирование мигратора INSTANTCMS1.1.* - INSTANTCMS2.7.1
Очередной мигратор
Что делает этот мигратор? Создает демо-контент (если он не создан при установке), создает три типа контента blogs, catalog и faq, а также создает таблицы для форума от Loadырь .
Файлы форума нужно будет скопировать в корень сайта из папки package установочного архива форума.
После этого мигратор просто выбирает данные из таблиц базы-источника и вставляет их в таблицы новой базы.
Мигратор полностью уничтожает все записи в таблице нового сайта и записывает туда данные из базы источника на Instantcms1. Поэтому ничего "дописать" в уже существующую базу не получится.
Создается новый тип контента "Блоги" со связанным типом контента "Посты", как в первой ветке.
Создается папка upload/old, куда нужно скопировать все папки с картинками из images и uploads старого сайта.
В этой же папке создается временный файл config.php, который после переноса обязательно нужно удалить из соображения безопасности!
Установка мигратора; скопировать содержимое архива в корень сайта.
Запуск мигратора site.ru/emigrator
Пока все не отлажено — рекомендуется проводить тестирование на тестовом локальном сайте. При этом база источника может располагаться где угодно.
Сам архив с мигратором:
instantcms.ru/users/files/download6421.html
Все ошибки, нюансы, предложения и пожелания просьба писать в эту тему.
Если кто захочет участвовать в данной разработке — буду рад.
протестирую на выходных.
Специально на выходные и представляю.
Все это было изобрАжено еще в новогодние праздники, но все время обнаруживались какие-либо детали (дьявол в деталях).
А тут длинные праздники. Хотел вчера выложить, но пал в борьбе со змием на работе.
С праздником, мужики!
Завтра обновлю сайт до 2,7,1 и протестирую перенос форума.
Этот мигратор основан на коде от разработчиков Инстанта на Гите или полностью свой?
Пробовал написать пулреквест к мигратору от разработчиков, но так и не понял, как вывести там дебаг. Постоянно смотреть на зависшую картинку загрузчика и лазить в логи быстро надоело. Поэтому это скорее развитие вот этого.Этот мигратор основан на коде от разработчиков Инстанта на Гите или полностью свой?
Сначала просто хотел немножко доработать тот мигратор, чтобы была возможность миграции из удаленной базы. Потом выяснил, что контент лучше добавлять при помощи родных функций движка. Как-то он мяхше ложится.
Потом файл модели начал зашкаливать за 2000 строк — стало невозможно разбираться, разбил функции по файлам. Потом при переносе реальной базы массив данных перестал помещаться в полтора гига оперативки — сделал циклы на яваскрипте с переключением лимита выборки из базы источника.
Потом замылился глаз, замылились пальцы, замылилось всё. Хотел выложить на тестирование людям со свежим взглядом, а тут бац, 2.7.0 вышла.
И опять дорабатывать…
интересуют 10.3 и 10.7 (два разных сайта
и что еще нужно учитывать при миграции, хотелось бы небольшую инструкцию
С 1.10 до 1.10.7 — вообще без каких-либо видимых проблем. Я пробовал мигрировать свою базу на 1.9. Прошелся по ней родным мигратором от 1.10 (то есть проапгрейдил базу до 1.10) и дальше без проблем.А с какой версии icms он позволяет мигрировать?
Инструкция по применению:
1.Устанавливаете новый сайт 2.7.1 желательно на локальном сервере. Хотя на реальном сервере у меня тоже всё работало. Но у меня VDS с двумя гигами оперативки. На недорогом хостинге может не хватить памяти. C демо контентом или без него — без разницы. Мигратор всё равно создаст демоконтент. В админке включаете отладку:
4. Заполняете реквизиты для подключения к базе источника. Она может находиться где угодно, хоть на локальном сервере, хоть на удаленном.
1. В форуме лоадыря категория с id=1 занята как Корневая, поэтому темы и сообщения из форума с id=1 не переносятся (у меня там 50% жизни форума).
Предлагаю дописать отдельную проверку на id=1 и переносить его последним.
2. Мигратор не заполняет поле is_first. Из-за этого при просмотре тем при наведении на глазик получаем ошибки в консоли, и выводится только название темы, а должно быть еще часть сообщения.
Надо составить какой-то запрос, чтобы он прошелся по таблице и расставил у первых сообщений в темах 1. Я не осилил😥
Радует, что у всего совпадает id (кроме раздела с id=1), можно будет попробовать допилить редирект со старых урл на новые.
у меня на сайте пользователи активно пользуются:
— личными файлами
— стеной (для записей, ведут ее вместо блогов)
в 2.7 версии нет личных файлов, что делать?
Но как это дело мигрировать…
Да, у меня то же самое. Но я считал, что это я криво настроил форум на первой ветке, а у всех остальных людей темы имеют категорию 1000 и выше.1. В форуме лоадыря категория с id=1 занята как Корневая, поэтому темы и сообщения из форума с id=1 не переносятся (у меня там 50% жизни форума).
Не вариант. Первая категория — root_category. Если её занять, дерево категорий превратится в бонсай.Предлагаю дописать отдельную проверку на id=1 и переносить его последним.
У себя вручную просто создал новую категорию и заменил у тем категорию 1 на номер новой категории. Но думаю, как это автоматизировать.
Да, что-то я упустил этот момент… Надо подумать.тип контента, туда тип поля — файл.
Но как это дело мигрировать..
Вроде всё что есть по умолчанию в первой ветке — все переносится.Ris, а сам контент не переносится? только блоги фак и форум?
Другой вопрос, что я не всё смог проверить, так как например объявлений и каталога у меня не было на первой ветке.