Как развернуть пользовательскую DLL вместе с функцией Azure, используя Appveyor
Развернуть функцию Azure с помощью appveyor очень просто, как описано в этой статье - https://alastairchristian.com/deploying-azure-functions-from-appveyor-75fe03771d0c
Кроме того, я не могу понять, как развернуть пользовательскую библиотеку dll (часть библиотеки того же репо) в папке / bin, чтобы иметь возможность использовать #r и использовать ссылку.
Ручной процесс - это просто скопировать dll в папку / bin с помощью Kudu и начать использовать ее.
Также обратитесь к этому обсуждению на appveyor - http://help.appveyor.com/discussions/questions/2842-deployment-to-azure-function-app
Вот мой appveyor.yml -
-
branches:
only:
- master
version: 0.0.{build}
os: Visual Studio 2015
configuration: Release
init:
- nuget sources update -Name nuget.org -Source https://api.nuget.org/v3/index.json
environment:
SolutionDir: $(APPVEYOR_BUILD_FOLDER)\
cache:
- packages -> **\packages.config
assembly_info:
patch: true
file: '**\AssemblyInfo.*'
assembly_version: '{version}'
assembly_file_version: '{version}'
assembly_informational_version: '{version}'
before_build:
- nuget restore -verbosity detailed
build:
verbosity: normal
project: MyLibrary\MyLibrary.csproj
publish_wap: true
publish_azure: true
parallel: true
artifacts:
- path: AzureFuncCIPOC
name: AzureFuncCIPOC
deploy:
- provider: WebDeploy
server: https://functioncipoc.scm.azurewebsites.net:443/msdeploy.axd?site=FunctionCIPOC
website: FunctionCIPOC
username: $FunctionCIPOC
password:
secure: <secure>
artifact: AzureFuncCIPOC
2 ответа
Если ваш процесс сборки собирает эту библиотеку и перемещает вывод (вашу пользовательскую DLL) так, чтобы он был упакован в артефакт, созданный AppVeyor, он будет развернут со сценариями.
Я смог скопировать требуемые библиотеки dll как событие после сборки проекта, а затем использовать тот же.yml, который был опубликован в вопросе, чтобы достичь того, чего я добился. Очень надеюсь, что VS 2017 получит лучшую поддержку для этого, когда будут запущены инструменты функций Azure для VS2017.
ниже приведена команда события после сборки
if not exist "$(SolutionDir)AzureFuncCIPOC\\ManualTriggerCSharp\bin\" mkdir "$(SolutionDir)AzureFuncCIPOC\\ManualTriggerCSharp\bin\"
copy /y "$(TargetDir)" "$(SolutionDir)AzureFuncCIPOC\\ManualTriggerCSharp\bin\"