Мы создаем плагин для Outlook на C #. Он без проблем собирается в VS и подписывается временным сертификатом pfx. Мы хотим поместить процесс сборки в Jenkins и запустить его автоматически.
Мы попытались запустить решение VS с помощью MSBuild. Он отлично работает на машине разработки, но в Jenkins есть ошибка:
Невозможно импортировать следующий ключевой файл: OutlookPlugin_TemporaryKey.pfx. Ключевой файл может быть защищен паролем. Чтобы исправить это, попробуйте снова импортировать сертификат или вручную установить сертификат в CSP строгого имени со следующим именем контейнера ключей: VS_KEY_A688DC31A30F3EF1
Мы не знаем, как указать пароль pfx для автоматической сборки. Или иначе автоматизируйте процесс подписи.
Мы нашли одно решение: открыть проект в VS на том же компьютере и от имени того же пользователя, что и для автоматизированного процесса, и ввести пароль. Это не работает, вероятно, потому, что Дженкинс каждый раз стирает рабочее пространство. Если мы попытаемся скомпилировать без подписи, а затем подписать его, он жалуется, что сборка ClickOnce должна быть подписана. Кажется, что плагины Office должны использовать ClickOnce.
Итак, как указать пароль pfx где-нибудь в файле сборки?
Мы используем VS 2010 с инструментами Office.