Friday, March 6, 2020

I saw Mike Benkovich speak on YAML pipelines in Azure DevOps at the Twin Cities .NET User Group last night.

From left to right in the photo here are Mike Benkovich followed by the three heads-of-state of the Twin Cities .NET User Group, Elsa Vezino, Jason "J" Erdahl, and William Austin. William told the crowd that he had learned that you could use Cosmos DB for free up to a certain point and Mike clarified that the cutoff was at 400 RUs (request units) of throughput. Consistent with the one other time I saw Mike speak, there seemed to be an upfront understanding that the audience was savvy with the ins and outs of Azure and he was covering territory really faster than I could follow along. What this talk boiled down to at its heart was the notion that a "Classic Pipeline" comprised of tasks is the old way of doing things and the future will be comprised of pipelines made up of YAML markup. You may still pick out tasks as you have and cast them into YAML markup. I got to see the YAML for the first time this evening. It kind of nests things under other things (headers I suppose) with indentation and the indented will sometimes have a leading hyphen. I do not pretend to understand it comprehensively. There are a few patterns to be had with the YAML rolling. "Containers" has to do with publishing to containers. "DocFX" entails using DocFX (FX for effects) to generate HTML documentation for a wiki from other markdown. "App Inflation" allows for inflating a team's permissions so that they may just publish to a file folder somewhere. "Golden Image Builder" is the fourth of the four which Mike did not get around to explaining to us. Once you take a "Classic Pipeline" into YAML, you never go back. It seems pipelines as code (PaC) is the future. There are all sorts of marketplace third party helpers such as Replace Tokens to make your magic more magical. Replace Tokens will replace otherwise not dynamic drab "markup" enclosed in hashtags at build and drop elsewhere time with whatever you want to match against what is enclosed. Mike spun up an IaC (infrastructure as code) project in Visual Studio and did some things with it before he really got around to the YAML part of the talk and herein I found what he was trying to convey the most murky. He was showing us the ARM stuff he showed us in the other talk I saw him give and he was breezing through its knobs and dials like it was nothing. When you deploy to a "Resource Group" it will make three files which are the app insights object, the website itself, and the plan. I do not know exactly what the app insights object and plan are. I asked in the talk and then couldn't understand. Ha ha. Did you know that @System.Environment.OSVersion in Razor will spit out your operating system version?

No comments:

Post a Comment