So I have been mucking around with Logic App Standard and the below happened. I have no idea how I made it happen but just making some notes for when it happens again or to help anyone else out who gets this problem.

Background

Im happily developing away with my Logic App like you do then suddenly I start getting the below error when I F5 in vscode.

Workflow Error: operationName='WorkflowDefinitionProvider.ProcessWorkflow', message='Workflow 'dataverse-sync' template validation failed, the error is 'The 'type' property of template trigger 'manual' at line '256' and column '23' has the value 'Manual' which is deprecated in schema version '2016-04-01-preview' and onwards.'', exception='Microsoft.Azure.Workflows.Templates.Exceptions.TemplateValidationException: The 'type' property of template trigger 'manual' at line '256' and column '23' has the value 'Manual' 
which is deprecated in schema version '2016-04-01-preview' and onwards.

So the issue here is there is something wrong with the trigger but lets walk through some notes.

Currently Deployed Logic App

In azure you can see the currently deployed Logic App with the manual trigger and note its type is manual.

What I had in VS Code

In VS code I have the below snippet in the workflow.json

"triggers": {                            
            "manual": {
                "type": "Manual",
                "kind": "Http",
                "inputs": {
                    "schema": {
                        "type": "object",
                        "properties": {
                            "Entity": {
                                "type": "string"
                            }
                        }
                    }
                }
            }
        },

You can see the error below when I deploy locally to func.exe

What do I do to fix it VS Code

In VS Code I changed the type of the trigger to Request.

"triggers": {                            
            "manual": {
                "type": "Request",
                "kind": "Http",
                "inputs": {
                    "schema": {
                        "type": "object",
                        "properties": {
                            "Entity": {
                                "type": "string"
                            }
                        }
                    }
                }
            }
        },

Now when I F5 it runs fine.

What do I have now in Azure

If I do a deployment to Azure and I can see it has the updated setting and when I run the logic app in Azure it works fine.

What if I put it back

If I put the logic app back the way it was with the manual type and deploy it to Azure then the logic app still works in Azure. It only doesnt work when I run it in the local functions host.

Observations

One observation I did notice is that when the type is set to Request then you get the additional menu “Run with Payload”. When the trigger type is “manual” then this menu is not present. You only get “Run”

Thoughts

This feels like another case of my machine getting in a knot when I have been sorting out some issues with the functions core tools. I am guessing I may have setup the workflow originally with an older version of core tools and then when I have updated it doesnt like it.

Im sure this will be a pain in the butt again at some point so hopefully this article will save me or someone else some time wasted chasing it down.

 

Buy Me A Coffee