Octopus Deploy не развертывает некоторые файлы, присутствующие в пакете

Я разрабатываю веб-приложение .NET и хочу развернуть его с помощью Octopus Deploy. Когда я создаю приложение в режиме выпуска, все выходные файлы сохраняются в папке bin\Release, как и ожидалось. Когда я развертываю проект с помощью Octopus Deploy, все файлы, расположенные в bin\Release, копируются в C:\Octopus\Applications\Development\MyService\1.0.0.0_N. Это нормально.

Проблема в том, что сегодня я добавил в проект 2 новых файла. Когда я создаю, они сохраняются в папке bin\Release, как и ожидалось, но при развертывании они не копируются в C:\Octopus\Applications\Development\MyService\1.0.0.0_N вместе с другими файлами. Что это?


person nix86    schedule 28.09.2017    source источник
comment
Как вы развертываете свои артефакты в Octopus? ОктоПак? Бамбук? Эти новые файлы присутствуют в ваших артефактах?   -  person CodeCaster    schedule 28.09.2017
comment
Я использую OctoPack для упаковки. Я не знаю.   -  person nix86    schedule 28.09.2017
comment
Да, они присутствуют в упаковке.   -  person nix86    schedule 28.09.2017


Ответы (2)


Это было потому, что в C:\Octopus\Packages\MyService уже был старый пакет с именем MyService.1.0.0.0. Поэтому он даже не пытался загрузить новый обновленный пакет. Теперь я удалил старый пакет и вставил новый, и он работает. Единственное, что меня до сих пор смущает, так это то, что замена пакетов должна происходить автоматически...

person nix86    schedule 28.09.2017

Похоже, у вас в проекте установлена ​​опция "пропускать уже установленные пакеты" и/или вы неправильно заменяете версию пакета в библиотеке...

Проверьте настройки вашего проекта Octopus:

Вариант повторного развертывания пакета

Повторное развертывание пакета

  • Всегда развертывайте все пакеты
  • Пропустить любой шаг пакета, который уже установлен

Если выбран вариант пропуска и Octopus обнаружит, что та же версия пакета уже установлена ​​в целевом объекте развертывания, все функции шага пакета будут пропущены. По умолчанию Octopus всегда повторно развертывает каждый включенный пакет. Отключить этот проект

Проверьте библиотеку пакетов

Загрузить пакет

Обратите особое внимание на флажок Заменить версию, если она существует.

https://octopus.com/docs/packaging-applications/package-repositories/pushing-packages-to-the-built-in-repository

Для Octo.exe вам нужно указать переключатель --replace-existing, чтобы имитировать это поведение.

Осторожность!

Вы должны быть очень осторожны при замене версий вещей в библиотеке.

Если вы изменили код/репозиторий/и т.д. вы создали новую версию, поэтому номер вашей версии не должен совпадать.

Вы можете потенциально испортить свою способность откатиться к предыдущей версии, если вы заменили версию, которая использовалась.

person gvee    schedule 29.09.2017
comment
Прямо сейчас у меня выбран параметр «Всегда развертывать все пакеты». - person nix86; 29.09.2017
comment
@ nix86 обновил ответ, чтобы включить настройки библиотеки - person gvee; 29.09.2017