如何在Azure功能应用程序中创建文件夹结构?

时间:2017-11-24 11:14:47

标签: azure azure-functions azure-powershell

我正在使用ARMTemplate部署Azure Functions并添加PowerShell中的所有函数文件。

PowerShell代码:

<table style="width: 100%; height: 100%; border: 1px solid black;">
    <tr>
        <td style="border: 1px solid black;">
            <h1 id="titol">HELLO</h1>
        </td>
    </tr>
    <tr style="height: 100%;">
        <td style="border: 1px solid black;">
            <div style="height: 100%; overflow-y: auto;">
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
                Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>Hello<br>
            </div>
        </td>
    </tr>
</table>

我想在已部署的功能应用中创建文件夹结构。 例如:SampleAzureFunction是我的函数名称,此函数中包含的文件是:

  • 共享\ Model.csx
  • function.json
  • project.json
  • run.csx

    enter image description here

我想创建共享文件夹并将Model.csx文件添加到Azure功能中的文件夹

wwwroot / Kudu中的功能文件夹结构:

enter image description here

如何创建此结构?

1 个答案:

答案 0 :(得分:-1)

您可以在本地计算机上手动创建文件夹结构,然后压缩内容并使用下面的代码使用Kudu Api轻松发布。

$creds = Invoke-AzureRmResourceAction -ResourceGroupName $ResourceGroupName -ResourceType Microsoft.Web/sites/config -ResourceName $functionAppName/publishingcredentials -Action list -ApiVersion 2015-08-01 -Force
$username = $creds.Properties.PublishingUserName
$password = $creds.Properties.PublishingPassword
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $username, $password)))
$apiUrl = "https://" + $functionAppName + ".scm.azurewebsites.net/api/zip/site/wwwroot"
$filePath = ".\yourfunctions.zip"
$Headers = @{Authorization = ("Basic {0}" -f $base64AuthInfo)}
Invoke-RestMethod -Uri $apiUrl -Headers $Headers -Method PUT -InFile $filePath -ContentType "multipart/form-data"