Azure Powershell... Grrrr

Azure Powershell... Grrrr

I'm working on re-writing MTG Discovery and doing all of the infrastructure through Azure PowerShell.
It's great... I like it... but fuck...

If I'd known how much friction I'd run into for various bits, I'd have gone with using the Azure CLI.

I don't want to bash on the product, it is GOOD. I interviewed for the team. I like building these types of things. But it's missing KEY functionality. The fact I wrote "KEY" there is double hilarious as that's one of my complaints.
I can't use Azure PowerShell to add a Azure KeyVault Reference to Azure App Configuration. OK, it's a really weak segue... Whatever.
You can't actuall set ANY key-value-pairs through the powershell. And there are open issues since 2020 about it!?

Core Functionality of a product (store Key Value Pairs) isn't available through Azure Powershell... bit of a fucking miss. I get it, team priorities. But... Yeah... I'd just have gone with Azure CLI.
There's a couple other places I had to use Azure CLI to get what I wanted... Like...
*seaches code* - Creating a Serverless CosmosDB.
Those are the only two actually.

But it's CORE FUNCTIONALITY! Core offerings... and .. NOPE. SIGH

There's some other stuff that I worked around that could be cleaner through Azure CLI, but I was trying very hard to stick with a single tech.

Hilariously, in the end, my Azure DevOps pipeline runs the Azure CLI task. The Azure Powershell task's login doesn't work for the Azure CLI code I'm forced to use.
The Azure CLI tasks login works just fine for all the Azure Powershell stuff I have.

I shoulda just used Azure CLI.

I think the Azure Powershell stuff is easier to understand what to do/use; but it's lacking in feature development comparatively, in my experience.

Caveat

I am doing this as a "Powershell first" approach. There may be things I'd try in Azure CLI that I'd find only could be done through Azure Powershell... maybe?

There's definitely stuff I want to do that's not even available in Azure CLI. API Management has a soft delete. And you have to do raw HTTP requests, with auth provided, to purge it. No other way. Not even through the Azure Portal (at the time of writing). Honestly... if you do something that'd FUCKING BREAK environment automation... please fucking provide a way to fix it that doesn't require the most base level of interaction. It's not an APIM command to call, it's base Azure behavior that you're just providing the details of. I assume most of the HTTP calls are like that... but if the answer is, "You can do it all through raw HTTP calls" then you've fucked up building tools for developers to use.

End Rant

Mostly a rant about one of the frustrations I've had working on deploying infrastructure with Azure Powershell.

Show Comments