ФорумПрограммированиеPHP для идиотов → Система обновления сайта

Система обновления сайта

  • Baboot

    Сообщения: 440 Репутация: N Группа: Адекваты

    Spritz 21 мая 2009 г. 9:21, спустя 4 минуты 17 секунд

    helldude, конечн хуево. Нужно продумать детальную систему полного ролбэка в случае неисправностей. И продумать как проверить что все прошло шоколадно. Поэтапно производить проверку, структуру БД, записи, файлы, в случае если что то не так, откат на рабочую версию, писать логи и отсылать тебе.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 9:30, спустя 9 минут 39 секунд

    думаю что перед совершением каких либо действий надо будет для файлов:
    - проверять чек суммы изменяемых и на что изменяют
    - проверять "is_writable"
    - проверять свободное место
    - проверять права на файлы(чмод маски)

    для бд:
    - проверять хватит ли прав пользователю для изменения структуры базы данных
    - проверять хватит ли пользователю прав для инсертов и тп
    - проверять структуру бд, соответствует ли она нужной
    - делать оптимайзы таблиц
    - проверять таблицу на наличие критических записей (типа роль в таблице ролей)

    потом:
    - полный бекап бд (нахуй?)
    - полный бекап файлов, которые предполагается изменить. + бекапы сохраняются НАВСЕГДА
    - удаление временных файлов системы(сайта), если таковые имеются.
    - очистка кешей
    - копирование файлов, если все плохо роллбак
    - изменение структуры бд (расстановка новых индексов)
    - изменение структуры бд (добавление колонок)
    - изменение структуры бд (расстановка новых индексов)
    - изменение структуры бд (вставка новых записей, например роли пользователей)
    - изменение структуры бд (удаление колонок)
    - изменение структуры бд (удаление индексов)
    - изменение структуры бд (оптимизация всех таблиц сайта - optimize table)
    - записи о том что обновление прошло успешно
    - говорим нашему серверу что обновились коректно

    в случае ошибки сообщаем серверу о ошибке и ее тексте.

    говорим пользоваттелю что он счастливчик и теперь может порадоваться обновленному хую
    Сапожник без сапог
  • Baboot

    Сообщения: 440 Репутация: N Группа: Адекваты

    Spritz 21 мая 2009 г. 9:35, спустя 4 минуты 37 секунд

    полный бекап бд (нахуй?)

    Можно в xml слать имена таблиц, которые будут обновлятся и делай их бэкап. Если где то try не пропрет то генери ошибку и востанавливай из бэкапа

    проверять чек суммы изменяемых и на что изменяют

    Точно, а вдруг там чото ручками делали…
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 9:47, спустя 11 минут 45 секунд


    полный бекап бд (нахуй?)

    Можно в xml слать имена таблиц, которые будут обновлятся и делай их бэкап. Если где то try не пропрет то генери ошибку и востанавливай из бэкапа

    проверять чек суммы изменяемых и на что изменяют

    Точно, а вдруг там чото ручками делали…
    ну думаю что все таки сериализованный массив, однако, там будет слаться структура обновления, а не скл запросы в чистом виде. ко всему будут билдеры, которые смогут вернуть структуру назад в случае ошибки, котрые должны понимать что в таблицу добавляли такое то поле и тп.

    сейчас же у меня есть идея - как подготовительный этап, я хочу сделать пхп приложеньице, которое сможет взять 2 таблицы из разных(не обязательно) таблиц и сказать какие поля разные, какие ключи разные и куда что надо добавить до полного(одностороннего?) соответствия таблиц(баз данных, соответственно сравнение всех таблиц)

    и на выходе хочу от него получить скл запрос(запросы?) либо структуру для дальнейшей работы с ними
    Сапожник без сапог
  • ubica

    Сообщения: 530 Репутация: N Группа: Кто попало

    Spritz 21 мая 2009 г. 22:40, спустя 12 часов 53 минуты 54 секунды

    для обновления/отката файлов - однозначно, система контроля версий с некоторыми доп. проверками
    для бд - да, дифф вручную
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 22:54, спустя 13 минут 40 секунд


    для обновления/отката файлов - однозначно, система контроля версий с некоторыми доп. проверками
    для бд - да, дифф вручную
    как ты на ЛЮБОМ клиенте установишь/используешь систему контроля версий?
    Сапожник без сапог
  • ubica

    Сообщения: 530 Репутация: N Группа: Кто попало

    Spritz 21 мая 2009 г. 23:05, спустя 10 минут 48 секунд

    helldude, в prerequisites :)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 23:08, спустя 2 минуты 58 секунд


    helldude, в prerequisites :)
    надо на пхп писать))

    к тому же вот нахуй дифф для файлов системы? … там и так можно заменять, и 99% моей уверенности, что возможны случаи что мердж не получится сделать и все нахуй упадет))))))))
    Сапожник без сапог
  • ubica

    Сообщения: 530 Репутация: N Группа: Кто попало

    Spritz 21 мая 2009 г. 23:12, спустя 4 минуты 5 секунд

    helldude, rm -rf + checkout/wget + chmod + …
    привет, Эдворд)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 23:15, спустя 3 минуты 2 секунды


    helldude, rm -rf + checkout/wget + chmod + …
    привет, Эдворд)
    аха аха ))

    как там … "lm -parliament" ?)))
    Сапожник без сапог
  • ubica

    Сообщения: 530 Репутация: N Группа: Кто попало

    Spritz 21 мая 2009 г. 23:20, спустя 5 минут 21 секунду

    helldude, создавай)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 23:37, спустя 16 минут 11 секунд


    helldude, создавай)
    ))))))))
    Сапожник без сапог
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 мая 2009 г. 23:38, спустя 58 секунд

    Для фанатов ПЫХИ. ПЫХОбаны и банеры!


    жесть было бы таг

    Для фанатов ПЫХИ. Фтп пользователи и пароли
    Сапожник без сапог
  • rider-sx

    Сообщения: 2706 Репутация: N Группа: Адекваты

    Spritz 25 мая 2009 г. 23:44, спустя 4 дня 6 минут

    phpdude, ))))
  • rider-sx

    Сообщения: 2706 Репутация: N Группа: Адекваты

    Spritz 25 мая 2009 г. 23:45, спустя 1 минуту 31 секунду

    А на конецном этапе можно написать програмку которая шифрует и упаковывает эти данные внутри xml(по типу WinRAR) Чтоб уж было вообще ппц как модно ))) Ну или же заюзать зенд

Пожалуйста, авторизуйтесь, чтобы написать комментарий!