Консольное приложение .net core на PCF

Я могу развернуть консольное приложение .net core на PCF, которое вызывает некоторые внутренние события, работает какое-то время (с помощью Thread.Delay ()) и завершает работу. Я хочу иметь возможность запускать и останавливать это приложение удаленно, используя командный файл с компьютера Windows.

Когда я отправляю это приложение в PCF, я явно помещаю флаг --no-start в команду push. Приложение развертывается и не запускается, и я могу запустить его удаленно с помощью команды cf start. После успешного выхода PCF пытается перезапустить его, считая его неисправным, поэтому для перезапуска мне сначала нужно будет cf stop, а затем использовать команду start.

Мне нужна помощь в понимании - есть ли другой лучший способ сделать это. Изначально мы планировали использовать Задачи на PCF; но, насколько я понимаю, Задачи - это команда, которая запускается в другом приложении (пожалуйста, поправьте меня, если я ошибаюсь)

Любые мысли помогут. Заранее спасибо.


person arpymastro    schedule 13.09.2017    source источник


Ответы (1)


Для этого я изменил логику своего приложения. Я сделал следующее -

  • Развернутое приложение с флагом --no-start
  • В методе ввода приложения я проверяю значение arg, переданное из командной строки
  • если arg == required_key, тогда запустите задание иначе return
  • Я делаю cf start, который создает, устанавливает приложение и приложение запускается, но на консоли не отображаются результаты
  • cf stop
  • cf run-task APP_NAME "dotnet appname.dll required_key"

Вышеупомянутая задача запускается один раз и уничтожает себя.

person arpymastro    schedule 14.09.2017