python azure функция приложения определяет переменные для пути - PullRequest
1 голос
/ 28 марта 2020

Я определил привязку out для сохранения файла в blobstorage:

function. json:

{
  "type": "blob",
  "direction": "out",
  "name": "outputBlob",
  "path": "outcontainer/{outname}",
  "connection": "storagevoyager_STORAGE"
}

Теперь я пытаюсь указать "outname" в python коде :

outputBlob.outname = "test.txt"
outname = "test.txt"
outputBlob.set(fileobj)

System.Private.CoreLib: Исключительная ситуация при выполнении функции: Функции..Microsoft. Azure .WebJobs.Host: Нет значения для именованного параметра 'outname'.

Так, как я могу определить outname в моем коде? Я не могу найти хорошую ссылку.

Нужно ли мне обновлять переменные окружения? Также с {rand-guid} это будет работать.

Ответы [ 2 ]

0 голосов
/ 04 апреля 2020

Кажется невозможным изменить переменную с помощью Python, в C# ее можно изменить.

Чтобы использовать ее в python я использую python sdk и подключаюсь вручную к своему хранилищу :

from azure.storage.blob import BlockBlobService

blob_service_client = BlockBlobService(account_name="storageacc", account_key="acckey")
blob_service_client.create_container(container_name)
blob_service_client.create_blob_from_bytes(container_name="container_name", blob_name="filename.txt", blob=b"blob")
0 голосов
/ 02 апреля 2020

Если вы хотите изменить имя выходного блоба с помощью кода, это невозможно. Если вы хотите динамически создать имя выходного двоичного объекта, вы можете использовать выражение привязки {rand-guid} в функции. json для его реализации.

Например,

{
  "type": "blob",
  "direction": "out",
  "name": "outputBlob",
  "path": "outcontainer/{rand-guid}.txt",
  "connection": "storagevoyager_STORAGE"
}

Для получения более подробной информации, пожалуйста, обратитесь к документу

...