Работая с развертыванием Sitecore на основе сценариев ARM и PowerShell, разработанного ROB HABRAKE (ROB накрыла их в серии сообщений в блоге на его собственный блог ) и оптимизирован мной Я заметил, что у нас возникла проблема: эти сценарии используются на основе на основе проекта и однажды реализованы, они начинают старение. С момента обновления вручную сценарии для каждого проекта является тусклая и громоздкая задача, она обычно никогда не выполняется. Поэтому я решил построить VSTS Выпуск задачи , который может быть повторно использован в каждом из наших проектов и упрощает всегда иметь последнюю версию сценариев ARM и PowerShell для определенной версии SiteCore.
Как это работает
Вы можете проверить скрипт PowerShell в Мой репозиторий Отказ
Это расширение использует конечную точку подключения VSTS для авторизации Azure и примет следующий вход:
Путь шаблона руки Шаблон руки, опубликованный артефактом источника. Обычно это сборка. Путь параметров руки Файл параметров руки для шаблона, опубликованный источником артефакта. Они будут проанализированы во время выполнения и, в случае типа развертывания «развертывания» в сочетании с выходом типа развертывания «инфраструктуры» и подается в шаблон.
Имя группы ресурсов Название целевой группы ресурсов, где будут проживать ресурсы. Если тип развертывания является «инфраструктурой», и группа ресурсов не существует, скрипт попытается создать его, но Для типа развертывания «развертываем» он будет бросать ошибку.
Расположение Раскрывающийся список с имеющимися местоположениями для ваших ресурсов.
Тип развертывания Существует несколько различий между типами развертывания: Тип развертывания «Инфраструктура» попытается создать группу ресурсов, если оно не существует и обеспечивает инфраструктуру, в то время как тип развертывания «Развертывание» получит вывод типа развертывания «Инфраструктура» И объедините его с параметрами в файле параметров шаблона для развертывания приложения.
Генерировать SAS? Если это установлено значение «Да», скрипт попытается создать коротковесную SAS для пакетов SCWDP, прошедших в параметрах. Учетная запись для хранения должна принадлежать той же подписке, в которую мы развертываем. Если невозможно генерировать SAS, он не будет продолжаться. Если файл License.xml должен быть получен из URL-адреса, и если он хранится на учетной записи хранилища, которая принадлежит к текущей подписке, скрипт постарается также генерировать SAS для него.
Лицензия Местоположение Раскрывающийся список, который позволяет выбрать, как лицензия будет передана на установку SiteCore. Это может быть URL или быть указанным встроенным (например, копировать-вставку из фактического файла в поле или, что более безопасно, хранит значение в защищенной переменной сборки и добавить ссылку на него здесь). Но это также может быть ссылка на файловую систему (опубликованная как артефакт сборки), и, наконец, вы можете сказать, что ваш файл лицензий.xml вставлен в качестве параметра в файл параметра шаблона.
Раздел «Безопасность»
Рекомендуется Чтобы отрицать доступ к роли обработки каждого и разрешить доступ к роли отчетности только для Azure. Кроме того, я проверил Sitecore и по умолчанию вам не нужно развертывать любой пользовательский код для этих ролей, что может значительно ускорить свое развертывание. Таким образом, эти флажки необходимы только в том случае, если вы не развертываете свой собственный пользовательский код на ролях обработки и отчетности, и вы не работаете в ASE (так как ASE позволяет развертывать дополнительные брандмауэры перед вашим веб-приложением).
Ограничьте доступ к роли КНР по IP Эта «броская» установка. Если вы проверите шаблоны Sitecore и пакеты SCWDP с 8,2 до 9.0.1, вы заметите, что во всех полноценных развертывании вам разрешено устанавливать IP-маску клиента и клиента, чтобы ограничить доступ к экземплярам CM и PRC. Пакеты Msdeploy (SCWDP) будут иметь поле для него поля. По умолчанию это 0.0.0.0/0.0.0.0. Проблема в том, этот параметр позволяет указывать один и только один IP, который является странным, потому что вам понадобится как минимум два: 127.0.0.1, чтобы разрешить applyInizationization, выпущенную веб-приложением, чтобы правильно завершить инициализацию, и ваш собственный IP для доступа к см. IP и маска, указанные в соответствующих параметрах, будут передаваться в Web.config и будет записан в разделе. И вот еще один улов, потому что раздел определяется следующим образом: «», и этот «четкий» узел удаляет любые правила, определенные в веб-приложении в сетевом разделе Azure Web App. Таким образом, единственное возможное решение для защиты веб-приложения PRC с развернутыми пакетами SCWDP по умолчанию (например, роль PRC + модулей) — ввести параметры IP 127.0.0.1 и маску 255.255.255.255. Это будет эффективно развернуть одно и то же ограничение в веб-приложении CM, но в конце обычно вы разворачиваете свой собственный набор файлов конфигураций в экземпляре CM в любом случае.
Ограничьте доступ к роли REP по IP Следуя наилучшей практике Sitecore, рекомендуется ограничить доступ к роли отчетности IP, позволяя только Azure IPS. Тем не менее, я вижу это как это: нам нужно разрешить доступ к роли отчеты от других ролей развернутого решения (см, CD, PRC) и, возможно, из наших собственных IP (ы). Включение этого флажба будет: а) Показать дополнительное управление для ввода IP/Mask в строке разделенной запятой b) При выполнении скрипта — все исходящие IP-адреса других ролей будут добавлены для разрешения списка (наряду с 127.0.0.1 и все введено в дополнительном управлении) Поскольку пакет Rep SCWDP не имеет встроенной IPSecurity, это работает безупречно: ограничение на основе IP будет развернуто на уровне веб-приложения (вы можете увидеть его в сетевом разделе Azure Web App).
Это все, что я хотел описать об этом новом расширении. Не стесняйтесь Свяжитесь со мной Для дополнительных вопросов, PRS PRS и обсудить его на репозитории.
Оригинал: «https://dev.to/akuryan/sitecore-deployer-38el»