Что происходит, когда версия пакета хостинга .NET Core отстает от версий машины разработки - PullRequest
2 голосов
/ 10 апреля 2019

Положение

Сегодня в .NET Core 2.1 есть уязвимость безопасности, и мы заставляем всех наших разработчиков обновлять свои .NET Core 2.1.x до .NET Core 2.1.10, но не имеем понятия, когда мы доберемся до обновления .NET Базовые пакеты хостинга на наших производственных веб-серверах.

Вопросы * * 1005 Является ли тот факт, что мы обновили наши машины разработчика, аннулированными, потому что мы еще не обновили веб-серверы? Как только код нашего разработчика будет запущен в производство, будут ли эти приложения работать со старыми библиотеками для .NET Core, которые находятся на наших веб-серверах, или они каким-то образом будут работать в более новой версии, с помощью которой наши машины для разработчиков создаются? Если наши проекты, когда-то запущенные в промышленную эксплуатацию, работали под старой версией библиотек .NET Core, возникнут ли у нас проблемы совместимости, поскольку наши разработчики использовали более старую версию? Полагаю, мой главный вопрос в том, должна ли у нас всегда быть политика в нашей компании по обновлению пакетов хостинга на наших веб-серверах, прежде чем мы будем обновлять наши машины для разработки?

1 Ответ

3 голосов
/ 10 апреля 2019
  1. Если вы хотите получить выгоду от обновления, сделанного с .NET Core 2.1.x до .NET Core 2.1.10, я бы сказал: пока вы не обновляете серверы, да.

  2. Приложения будут пытаться работать под установленной платформой на ошибках.Если вы публикуете в режиме по умолчанию, ваш код будет зависеть от платформы, установленной на ваших рабочих машинах.Однако вы можете перейти в режим автономного развертывания и встроить фреймворк с вашим кодом для работы на «целевой платформе» (https://www.danielcrabtree.com/blog/496/net-core-self-contained-and-framework-dependent-deployments-explained).

  3. . Он должен оставаться совместимым, поскольку версииоба являются 2.1.x. Однако я бы не стал пробовать его в работе до того, как протестировал его в отдельной среде.

  4. Я считаю, что вам не следует обновлять свои производственные серверы до тестирования новой версииСначала я бы изменил целевую среду на моей машине разработки, затем я бы обновил среду и код в (по крайней мере) среде pre-prod. Я бы протестировал ее в этой среде. И только потом я бы рассмотрел изменениена производственных серверах.

Пункт 3. ИЗМЕНЕНО на основании комментария Daboul

...