Выполнить триггер изменения-отправки для запуска скрипта на клиенте

Я искал различные сообщения в StackExchange, на форумах Perforce и т. Д., Чтобы найти решение для следующей проблемы, и был бы благодарен за ваше руководство и опыт!

описание проблемы

Я хочу иметь возможность инициировать с сервера Perforce серию этапов проверки на стороне клиента для файлов, открытых в списке изменений, перед тем как разрешить отправку списка изменений.

Например, я хочу убедиться, что если файл будет открыт для добавления, редактирования или удаления как часть списка изменений, то соответствующий связанный файл будет обработан соответствующим образом на основе матрицы условий для этого соответствующего файла:

  • Соответствующий файл открывается для добавления / редактирования / удаления
  • Соответствующий файл существует на диске, а не на диске
  • Соответствующий файл существует в депо, а не существует в депо
  • Соответствующий файл был изменен и не изменен относительно файла депо

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

Компоненты

  • Сервер Perforce 2017.2
  • Компьютеры MacOS и Windows, отправляющиеся в разные ветви

Начальные попытки

  • Первоначальный дизайн был сугубо клиентским пользовательским инструментом, но он не идеален, так как это было бы изменением потока, с которым знакомы пользователи, и мне также пришлось бы реализовать пользовательский графический интерфейс.

  • Среди других подходов я рассмотрел создание триггеров в 2017 году.2; однако даже если бы мне пришлось использовать триггер содержимого изменений со всеми файлами списков изменений, доступными на сервере, я не смог бы должным образом выполнить шаги проверки и исправления.

  • Другой возможностью было бы использование триггера отправки-изменения и использования переменных сценария триггера в 2017.2 для получения IP- адреса клиента, имени хоста, текущего рабочего каталога клиента и т. Д., Чтобы можно было запустить скрипт на сервере, чтобы попытаться подключиться удаленно к компьютер клиента. Однако запуск любого сценария на клиентском компьютере и, в частности, работа на его локальной рабочей области потребуют учетных данных, которые, скорее всего, не будут доступны.

Желаемый подход

Я хотел бы использовать триггер отправки изменений на сервере Perforce для запуска сценария / связанного исполняемого файла на клиентском компьютере для выполнения операций p4 в их рабочей области для выполнения шагов проверки. Однако ссылки, которые я нашел (хотя и несколько лет назад), указывают на то, что это невозможно:

Еще раз спасибо за чтение и за вашу помощь!

РЕДАКТИРОВАТЬ: я разместил в StackOverflow, чтобы посмотреть, смогу ли я получить представление от более широкой аудитории:D

0 ответов

Другие вопросы по тегам