Hi all, we have setup: serverless azure functions ...
# automation-api
q
Hi all, we have setup: serverless azure functions with c# pulumi automation API and we use it to deploy cosmosDBs. We orchestrate process with durable functions. And it just works. However when we try to destroy stack, we observe weird behavior, that when azf API is heated (ex. we run dummy timer trigger), everything works fine, but if azf goes in cold state before orchestration is finished, it fails with random exceptions (mostly lacking dotnet sdk but there are others too). In the end it removes cosmosdb but pulumi doesn't verify it correctly. Did you see such behavior before?
m
I think durable functions require that something can be killed and restarted. This is not the case for a the pulumi destroy. Imagine pulumi destroy is slowly tearing things down and then the function is killed and later restarted. That might be fine if you're calculating the nth Fibonacci digit, but not so fine for cloud orchestration and making changes outside the bounds of that function.
q
that makes sense. However, shouldn't we see similar behavior on pulumi up? Creating cosmosDB takes like 15+ minutes for us when destroying takes 5-10 minutes
m
You would think it would happen in up as well. That is odd. But my take would both are a bad idea. If i'm understanding how durable functions work, they assume everything is rerunable, so whatever is causing it to think it can reap it in destroy could happen in up as well. It could just be a long network call that is perceives as meaning its stalled or who knows. It'd be interesting to know what triggered that behaviour, but if you knew, you'd never wantto depend upon