Como você implanta um WebJob e Aplicativo do Azure no mesmo Serviço de Aplicativo via VSTS?

Eu tenho uma solução do Visual Studio 2017 com um projeto de Aplicativo da Web ASP.NET (chamado UI) e um projeto do Azure WebJob (chamado WebJobs). Eu configurei os dois para implantar no Azure no Visual Studio (clique com o botão direito do mouse, publique) no mesmo Serviço de Aplicativo. A solução também está configurada para ser criada sempre que eu enviar para o VSTS.

Gostaria de configurar o VSTS para também implantar os dois projetos em compilações bem-sucedidas, mas estou tendo problemas.

Meu entendimento é que, para conseguir isso, preciso criar uma definição de versão vinculada à minha definição de compilação com uma tarefa "Implantar o Serviço de Aplicativo do Azure" adicionada ao pipeline. Eu tentei isso e ocorreu um erro porque mais de um arquivo .zip foi encontrado na pasta de artefatos, o que me aconselhou a tornar o filtro mais específico, por isso mudei a opção "Pacote ou pasta" de$(System.DefaultWorkingDirectory)/**/*.zip para$(System.DefaultWorkingDirectory)/**/UI.zip. Isso contornou o erro, mas agora obviamente está implantando apenas meu aplicativo (UI).

Meu próximo passo foi tentar criar um ambiente separado para o projeto WebJob e especificar$(System.DefaultWorkingDirectory)/**/WebJobs.zip como o pacote. Agora, os dois ambientes são implantados com êxito, mas eles quebram meu aplicativo e tenho certeza de que ele implementou o WebJob por cima do aplicativo (não sei como confirmar essa crença ...).

Percebo que, quando você adiciona um Ambiente à definição de versão e escolhe um modelo, em "Implantação do Serviço de Aplicativo do Azure", ele diz: "Implante seu aplicativo nos Serviços de Aplicativo do Azure. Escolha no Web App no Windows, Linux, Containers, Function Function ouEmpregos na Web"mas quando escolher este modelo, o WebJob não está listado no menu suspenso" Tipo de aplicativo "!

Encontrei alguns recursos online sobre a implantação de WebJobs no VSTS, mas todos estão desatualizados e as opções descritas não coincidem mais com as atualmente no VSTS.

RESOLVIDO:

Meu problema foi resolvido como resultado de ambosDavid Ebbo'areiachen starianrespostas abaixo.

Em primeiro lugar vocêdevo clique com o botão direito do mouseaplicativo web projeto no Visual Studio e selecioneAdicionar> Projeto Existente como Azure WebJob e siga o assistente. Em seguida, você deve garantir que a tarefa de implantação do VSTS encontre apenas um pacote .zip a ser implantado, atualizando oPacote ou pasta filtro de caminho para encontrar apenas oaplicativo webé um; no meu caso foi$(System.DefaultWorkingDirectory)/**/UI.zip.

Muito obrigado a @DavidEbbo e @starianchen por sua ajuda!

questionAnswers(2)

yourAnswerToTheQuestion