2009-09-12 6 views
6

Я использую phing для некоторого процесса автоматического строительства на проекте и задавался вопросом: как я могу получить полный журнал по электронной почте?phing: отправка полного журнала по электронной почте?


Когда я запускаю phing с помощью командной строки, отображается журнал здания; Я хотел бы это:

  • отправлены по электронной почте,
  • нескольким получателям,
  • удалось ли строить или не
  • идеально: с темой по почте, говоря, если построить удалось или не удалось
  • идеально: какой-то HTML почты, с форматированием, цветами, ... было бы неплохо

Я, хотя о конвейеру выводе из phing в команду mail, но я хотел бы, чтобы решение работало как на Linux, так и на Windows и не требует установки какого-либо дополнительного программного обеспечения ...

У кого-нибудь есть идеи?


Как заметка на полях: Я думал о добавлении своего рода «отчет» цели, запущенной в конце сборки, но:

  • Он запускается только тогда, когда все предыдущие цели не терпеть неудачу
  • Я не вижу, как получить полный войти нем

ответ

0

Это то, что вы можете обойтись без установки дополнительного программного обеспечения, если вы можете написать скрипт для сервера Linux вы имеете доступ к.

Имейте скрипт php, используя команду exec() или system() для получения полного журнала. Отправьте это как http post data, используя curl для вашего удаленного скрипта на сервере linux, к которому у вас есть доступ.

На сервере у вас есть доступ, чтобы написать сценарий, чтобы принять переменную post post и отправить содержимое на ваш адрес электронной почты. И вы могли бы подумать: «О нет, у меня есть открытый доступ к людям, которые меня по электронной почте!» Если они знают ваш адрес или у вас есть контактная форма в Интернете ... то же дело. Так что это решение;) Если проблема безопасности отправляется через https.

+0

Было ли это полезно? Если нет, я могу удалить. – 2009-11-12 01:49:44

3

Я думаю, вы могли бы написать пользовательский Phing build listener/logger, который обрабатывает ваш описанный пример использования. Взгляните на этот отличный блог post от Philip Norton, чтобы вы пошли.

+0

Спасибо за этот ответ!Сейчас немного поздно (проект, над которым я работал, закончен ^^), но я мог бы попробовать в тот или иной день, просто чтобы узнать, как я могу заставить это работать ;-) –

4

Отличная идея; просто добавили билет для реализации этого @http://phing.info/trac/ticket/539

+1

Привет, рад видеть вас здесь ^^ ;; Я полностью забыл этот вопрос, так как в конце проекта мне это было нужно ... Но, все же, довольно уверен, что это будет полезно кому-то в тот или иной день ;-) –

0

Мы используем sth. как это завернуто в php-скрипт.

exec('phing' . $target . ' -f ' . $buildfile . ' | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g"', $out); //remove bash color 
$info = implode("\n", $out); 
$subj = sprintf('Deployed %s', $catalogInfo['name']); 
mail($data->email, $subj, $info); 

Работы хорошо.

 Смежные вопросы

  • Нет связанных вопросов^_^