Как выглядит хороший рабочий процесс Phing?

Я пытаюсь понять мышление CI, и на этих выходных играл с Phing. Все это кажется достаточно простым для использования, и уже есть много примеров.

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

Например, у нас есть несколько веб-сайтов, в настоящее время мы редактируем исходный код локально и при сохранении загрузки на действующий сайт (я знаю, насколько это плохо ...), мы проводим быстрое тестирование и убеждаемся, что код работает так, как планировалось. . Если это так, мы берем на себя обязательства по репо и продолжаем. Если нет, мы можем откатиться или отредактировать отмену и повторное сохранение. Хотя сейчас это кажется безумным, простота сработала для нас хорошо.

Теперь у нас небольшая команда, поэтому я пытаюсь включить Phing в этот процесс, чтобы получить все дополнительные преимущества линтинга / сниффинга / обнаружения беспорядка и т. Д. однако я не могу понять наилучший порядок событий.

Не могли бы вы предложить:

  • Отредактировать код локально.
  • При сохранении загрузить файл на тестовый сайт.
  • Протестируйте сайт на промежуточном сервере.
  • Если все в порядке, зафиксируйте изменения в репозиториях. Затем запустите пинг.
  • Оценка вывода Phing, обновление кода по мере необходимости, повторное сохранение, повторная фиксация, повторный запуск phing.
  • Предполагая, что Phing проходит, поскольку я запускаю phing на другом сервере, выполните экспорт svn и запустите процесс развертывания.

Сказанное выше кажется мне немного запутанным. Это потому, что похоже, что я пытаюсь объединить тестовое развертывание с живым развертыванием, что сбивает меня с толку?

Также может показаться, что фиксация выполняется немного назад, затем запускается Phing, затем приходится редактировать и, возможно, повторно фиксировать перед пытаюсь снова.

Следовательно, было бы разумнее:

  • Редактировать код локально.
  • Сохраните, выполните тестовую сборку развертывания с помощью Phing.
  • Убедитесь, что код прошел все проверки кода и т. Д.
  • Используя Phing, убедитесь, что код скопирован на промежуточный сервер.
  • Протестируйте сайт на промежуточном сервере.
  • Все в порядке, зафиксируйте изменения в репозиториях.
  • Затем сборка развертывания в реальном времени с помощью Phing.

Проблема в том, что, допустим, я просто хотел исправить написание слова, жестко закодированного на HTML-странице, кажется излишним?

Наконец, как люди настраивают свои серверы, у вас есть один сервер для действующего сайта, один для промежуточного и один для размещения Phing (и любого программного обеспечения CI)?

9
задан halfer 10 November 2015 в 02:30
поделиться