Azure / functions-action

Enable GitHub developers to deploy to Azure Function Apps using GitHub Actions
MIT License
152 stars 75 forks source link

Isolated Linux Premium Plan Deploy Null Reference Exception #210

Open jdmoore1618 opened 9 months ago

jdmoore1618 commented 9 months ago

Hello,

I am able to zip deploy into my Linux Azure Function App using Azure/functions-action@v1.

Setup

Here is my yaml:

on:
  pull_request:
    branches: [ "main", "releases/**" ]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - name: Azure Login
      uses: azure/login@v1
    # omitted

    - name: Checkout Code
      uses: actions/checkout@v3

    - name: Setup .NET
      uses: actions/setup-dotnet@v3
      with:
        dotnet-version: 6.0.x

    - name: Restore dependencies
      run: |
        # omitted

    - name: Build Project
      run: |
        pushd './project'
        dotnet build --no-restore --configuration Release --output ./artifacts
        popd

    - name: Upload Code Artifacts
      uses: actions/upload-artifact@v3
      with:
        name: Code_Artifacts
        path: ./project/artifacts
        if-no-files-found: error

  Deploy_To_Dev:

    if: github.ref == 'refs/heads/main'
    needs: build
    runs-on: ubuntu-latest
    environment: environment1

    steps:
    - name: Download all workflow run artifacts
      uses: actions/download-artifact@v3
      with:
        name: Code_Artifacts
        path: .

    - name: Run Azure Functions Action
      uses: Azure/functions-action@v1
      with:
        app-name: appName
        package: .
        publish-profile: ${{ secrets.PUBLISH_PROFILE  }}

The pipeline produces the following:

image

My function app is setup with the follow environment configurations:

image

I also set the LINUX_FX_VERSION to DOTNET-ISOLATED|6.0.

Outcome

As expected upon reviewing kudu's, I do not see any files in wwwroot because of the zip deploy. I do see the zip file in the site packages and the packagename.txt references the correct most to date zip file. I see my environment configurations populated in the environment tab.

However, I get the following error:

Object reference not set to an instance of an object.

System.NullReferenceException: at Microsoft.Azure.WebJobs.Script.WorkerFunctionMetadataProvider+d11.MoveNext (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/WorkerFunctionMetadataProvider.cs:80) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at Microsoft.Azure.WebJobs.Script.WebHost.FunctionMetadataProvider+d10.MoveNext (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/FunctionMetadataProvider.cs:45) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at Microsoft.Azure.WebJobs.Script.FunctionMetadataManager.LoadFunctionMetadata (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/FunctionMetadataManager.cs:146) at Microsoft.Azure.WebJobs.Script.FunctionMetadataManager.GetFunctionMetadata (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/FunctionMetadataManager.cs:90) at Microsoft.Azure.WebJobs.Script.ScriptHost.GetFunctionsMetadata (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/ScriptHost.cs:372) at Microsoft.Azure.WebJobs.Script.ScriptHost+d93.MoveNext (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/ScriptHost.cs:279) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at Microsoft.Azure.WebJobs.Script.ScriptHost+d92.MoveNext (Microsoft.Azure.WebJobs.Script, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script/Host/ScriptHost.cs:256) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at Microsoft.Extensions.Hosting.Internal.Host+d12.MoveNext (Microsoft.Extensions.Hosting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e) at Microsoft.Azure.WebJobs.Script.WebHost.WebJobsScriptHostService+d52.MoveNext (Microsoft.Azure.WebJobs.Script.WebHost, Version=4.27.0.0, Culture=neutral, PublicKeyToken=null: /src/azure-functions-host/src/WebJobs.Script.WebHost/WebJobsScriptHostService.cs:328)

The Azure Function is a dummy project with only an HttpTrigger. I added an extension bundle to the host.json and explicitly set the website port of 80. As I expected, both of these solutions did not help. Am I doing something wrong or is there a bug?

github-actions[bot] commented 9 months ago

This issue is idle because it has been open for 14 days with no activity.