Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

What is a valid binding name for azure function?

When I try to run the azure function defined below, I get the following error log

The 'my_function' function is in error: The binding name my_function_timer is invalid. Please assign a valid name to the binding.

What is the format of a valid binding name for Azure Function ?

Function definition

I have two files in my_function directory:

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

  • __init__.py contains the python code of the function
  • function.json contains the configuration of the function

Here is the content of those two files

__init__.py

import azure.functions as func
import logging

def main(my_function_timer: func.TimerRequest) -> None:
    logging.info("My function starts")
    print("hello world")
    logging.info("My function stops")

function.json

{
  "scriptFile": "__init__.py",
  "bindings": [
    {
      "name": "my_function_timer",
      "type": "timerTrigger",
      "direction": "in",
      "schedule": "0 0 1 * * *"
    }
  ]
}

I deploy this function using Azure/functions-action@v1 github action

>Solution :

I didn’t find anything on the documentation, but by looking at the source code of azure-functions-host, it uses following regex to validate the binding name.

^([a-zA-Z][a-zA-Z0-9]{0,127}|\$return)$

This means that a validate binding name must be either,

  • Alpha numeric characters(With at most 127)
  • Literal string $return

Since your binding name contains an _, the above regex does not match which will result in validation error.

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading