1
resposta

Pode não funcionar nos dias atuais

olá, isso não é bem uma duvida mas pode ajudar no futuro, eu precisei reescrever a funćão para que funcionasse. segue abaixo.

  • versao python: 3.10.6
  • versao azure functions: core tools: 4.0.5455
  • s.o: linux mint
import datetime
import logging

import os
import azure.functions as func
from azure.storage.blob import BlobServiceClient, ContainerClient


def main(mytimer: func.TimerRequest) -> None:
    utc_timestamp = datetime.datetime.utcnow().replace(
        tzinfo=datetime.timezone.utc).isoformat()

    logging.info('Funcao bakup executada as: %s', utc_timestamp)
    copy_azure_files()

def copy_azure_files():
    blob_service = BlobServiceClient.from_connection_string(os.environ["AzureWebJobsStorage"])
    
    container_client_prod = blob_service.get_container_client('prod')
    container_client_bkp = blob_service.get_container_client('bkp')

    
    print("\nList blobs in the container")
    listagem = container_client_prod.list_blobs()
    if not listagem:
         print("Sem dados para transferir do container prod para bkp.")
    else:
        for blob in listagem:
            source_blob_client = container_client_prod.get_blob_client(blob.name)
            destination_blob_client = container_client_bkp.get_blob_client(blob.name)
            destination_blob_client.start_copy_from_url(source_blob_client.url)
            print(blob.name)
1 resposta

Obrigado por compartilhar