{"id":615,"date":"2021-05-04T11:26:54","date_gmt":"2021-05-04T11:26:54","guid":{"rendered":"https:\/\/labornet.nl\/?p=615"},"modified":"2021-05-04T11:26:54","modified_gmt":"2021-05-04T11:26:54","slug":"getting-started-with-template-specs","status":"publish","type":"post","link":"https:\/\/www.azuregovernanceguard.com\/?p=615","title":{"rendered":"Getting started with template specs."},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">Create a a New Project<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\n  First login to <a href=\"https:\/\/dev.azure.com\/\">https:\/\/dev.azure.com\/<\/a> and select create a New Project.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"184\" height=\"58\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-160.png\" alt=\"\" class=\"wp-image-688\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-161-1.png\" alt=\"\" class=\"wp-image-689\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After the project is created you will automatically go to the new created Project. Now we need to clone the git repo from me <a href=\"https:\/\/github.com\/EelcoLabordus\/ARM-Repo\">EelcoLabordus\/ARM-Repo (github.com)<\/a>. You need to go to \u201cRepos\u201d and select \u201cImport a repository\u201d.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-162-1.png\" alt=\"\" class=\"wp-image-690\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-163-1.png\" alt=\"\" class=\"wp-image-691\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  When the import is completed the repository should look like this.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-164-1.png\" alt=\"\" class=\"wp-image-692\"\/><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Setting up the Build Pipelines<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After importing the Repo you need to setup two build pipelines, the first pipeline is validate the ARM files the second pipeline is again to validate the ARM files and create an Artifect.\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  First we will go to the repository and \u201cSet up build\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-165-1.png\" alt=\"\" class=\"wp-image-693\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  When we import the repository in the correct way we can select \u201cExisting Azure Pipelines YAML file\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"458\" height=\"78\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-166.png\" alt=\"\" class=\"wp-image-694\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-166.png 458w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-166-300x51.png 300w\" sizes=\"auto, (max-width: 458px) 100vw, 458px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  First we need to select the ARM-Build-Validation.yml file, this file is used for testing the ARM files before placing the code into the Main\/Master branche.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-167-1.png\" alt=\"\" class=\"wp-image-695\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After the build pipeline is imported into the Pipelines it is recommanded to rename this one into \u201c<strong>ARM-Build-Validation<\/strong>\u201d. If you will not do this and you will import the other pipeline it is not clear what is what.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-168-2.png\" alt=\"\" class=\"wp-image-696\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"258\" height=\"331\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-169.png\" alt=\"\" class=\"wp-image-697\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-169.png 258w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-169-234x300.png 234w\" sizes=\"auto, (max-width: 258px) 100vw, 258px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After the first pipeline is imported we need to import the second one \u201cARM-Pipelines\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-170-1.png\" alt=\"\" class=\"wp-image-698\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  And also rename this one to the \u201ccorrect\u201d one.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-171-1.png\" alt=\"\" class=\"wp-image-699\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Adding the Variables to the build pipelines<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Last for the build pipelines we need to setup the module variables, this is the same way as we had set them up with the PowerShell build release pipelines in the other vlog.\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  This needs to be done on <strong>Both<\/strong> build pipelines!!!!!!!! \n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Go to the pipeline and select \u201cEdit\u201d \n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1661\" height=\"222\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-172.png\" alt=\"\" class=\"wp-image-700\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-172.png 1661w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-172-300x40.png 300w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-172-1024x137.png 1024w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-172-768x103.png 768w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-172-1536x205.png 1536w\" sizes=\"auto, (max-width: 1661px) 100vw, 1661px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Next select \u201cVariables\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"166\" height=\"68\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-173.png\" alt=\"\" class=\"wp-image-701\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Put in the following information:\n<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\n    module.Name\n  <\/li><li>\n    Repo\n  <\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"386\" height=\"462\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-174.png\" alt=\"\" class=\"wp-image-702\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-174.png 386w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-174-251x300.png 251w\" sizes=\"auto, (max-width: 386px) 100vw, 386px\" \/><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Setting up Branches<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After the build pipelines are added to the configuration we need to add a different branch and setup the workflow for this branch.\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>This option is optional, you can also edit direct into the Main\/Master branch but I wouldn\u2019t recommend this.<\/em><\/strong>\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Go to \u201cRepos\u201d and select \u201cFiles\u201d after this selected the branches icon and \u201c+ New branche\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"208\" height=\"114\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-175.png\" alt=\"\" class=\"wp-image-703\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-176-1.png\" alt=\"\" class=\"wp-image-704\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Give the branch the name you want to give, in this example I gave it the name \u201cDevelop\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"407\" height=\"287\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-177.png\" alt=\"\" class=\"wp-image-705\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-177.png 407w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-177-300x212.png 300w\" sizes=\"auto, (max-width: 407px) 100vw, 407px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Now we need to setup branch policies, the policies can be used to validate the code that will be uploaded to the Master\/Main branch.\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Select the Git repo and go to \u201cManage repositories\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"585\" height=\"225\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-178.png\" alt=\"\" class=\"wp-image-706\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-178.png 585w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-178-300x115.png 300w\" sizes=\"auto, (max-width: 585px) 100vw, 585px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Select the \u201cMain\/Master\u201d branche select \u201cPolcies\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"306\" height=\"184\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-179.png\" alt=\"\" class=\"wp-image-707\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-179.png 306w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-179-300x180.png 300w\" sizes=\"auto, (max-width: 306px) 100vw, 306px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Select \u201cBuild Validation\u201d and select the pipeline that was created by previous steps.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-180-1.png\" alt=\"\" class=\"wp-image-708\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-181-2.png\" alt=\"\" class=\"wp-image-709\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Run the pipeline once.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After configuring everything it is recommended to run the ARM-pipelines, this is necessary for the next steps. We need the artifact been created once.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-182-1.png\" alt=\"\" class=\"wp-image-710\"\/><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Creating the release pipeline<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Last thing we need to do is creating the release pipeline to upload the ARM files into Azure Template Specs.\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  This release pipeline is the simplest way to configure, for best practices and multiple steps like Dev\/Test\/Prod environments I would recommend use the internet for that &#x1f60a;\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  First create a \u201cNew Pipeline\u201d\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-183-2.png\" alt=\"\" class=\"wp-image-711\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Select a \u201cEmpty job\u201d for this.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-184-2.png\" alt=\"\" class=\"wp-image-712\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Add a artifact to the release pipeline, this is the artifact that is created by the build pipeline.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"176\" height=\"267\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-185.png\" alt=\"\" class=\"wp-image-713\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Configure the Artifact with the following information.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"497\" height=\"724\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-186.png\" alt=\"\" class=\"wp-image-714\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-186.png 497w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-186-206x300.png 206w\" sizes=\"auto, (max-width: 497px) 100vw, 497px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After the Artifact is configured, I recommend enabling Continuous Deployment. Select the lighting button in the artifact window.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"244\" height=\"295\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-187.png\" alt=\"\" class=\"wp-image-715\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Enable Continuous Deployment.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"520\" height=\"369\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-188.png\" alt=\"\" class=\"wp-image-716\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-188.png 520w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-188-300x213.png 300w\" sizes=\"auto, (max-width: 520px) 100vw, 520px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Now we need to add steps to the first stage.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"375\" height=\"270\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-189.png\" alt=\"\" class=\"wp-image-717\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-189.png 375w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-189-300x216.png 300w\" sizes=\"auto, (max-width: 375px) 100vw, 375px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"530\" height=\"229\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-190.png\" alt=\"\" class=\"wp-image-718\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-190.png 530w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-190-300x130.png 300w\" sizes=\"auto, (max-width: 530px) 100vw, 530px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  We need to add the <strong>\u201cAzure PowerShell\u201d <\/strong>task to the first stage.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"785\" height=\"103\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-191.png\" alt=\"\" class=\"wp-image-719\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-191.png 785w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-191-300x39.png 300w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-191-768x101.png 768w\" sizes=\"auto, (max-width: 785px) 100vw, 785px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After adding the task we need to configure the task with the following information.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-192-2.png\" alt=\"\" class=\"wp-image-720\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  The Script path can be easily selected with the \u2026\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  $(System.DefaultWorkingDirectory)\/_ARM-pipelines\/ARMTemplates\/Scripts\/<strong>Upload-ARM.ps1<\/strong>\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After you have selected the script, you can use the path to update the location of the Repo, you also need to specify the ResourceGroupName. The ResourceGroupName needs to exist and you need to have the correct permission to write into this group with the Service Principal. \n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>-path<\/strong> $(System.DefaultWorkingDirectory)\/_ARM-pipelines\/ARMTemplates<strong>\/Repo <\/strong>\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>-ResourceGroupName<\/strong> ARM-Template-Spec\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-193-1.png\" alt=\"\" class=\"wp-image-721\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  After you have saved the configuration you can manually create a release to test the whole process.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-194-1.png\" alt=\"\" class=\"wp-image-722\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Select <strong>Release-1<\/strong> to monitor the process.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-195-1.png\" alt=\"\" class=\"wp-image-723\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"280\" height=\"209\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-196.png\" alt=\"\" class=\"wp-image-724\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-197-1.png\" alt=\"\" class=\"wp-image-725\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\n  Everything is done, you now have the ARM template in the Template Spec.\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1892\" height=\"299\" src=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-198.png\" alt=\"\" class=\"wp-image-726\" srcset=\"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-198.png 1892w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-198-300x47.png 300w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-198-1024x162.png 1024w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-198-768x121.png 768w, https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-198-1536x243.png 1536w\" sizes=\"auto, (max-width: 1892px) 100vw, 1892px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Happy ARM scripting.<\/strong>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an<\/p>\n<p><a href=\"https:\/\/www.azuregovernanceguard.com\/?p=615\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\">Getting started with template specs.<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-615","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Eelco Labordus\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.azuregovernanceguard.com\/?p=615\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Azure Governance Guard -\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Getting started with template specs. - Azure Governance Guard\" \/>\n\t\t<meta property=\"og:description\" content=\"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.azuregovernanceguard.com\/?p=615\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/logo-white-1.png?fit=10001000&#038;ssl=1\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/logo-white-1.png?fit=10001000&#038;ssl=1\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-05-04T11:26:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-05-04T11:26:54+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@EelcoLabordus\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Getting started with template specs. - Azure Governance Guard\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@EelcoLabordus\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/logo-white-1.png?fit=10001000&amp;ssl=1\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#blogposting\",\"name\":\"Getting started with template specs. - Azure Governance Guard\",\"headline\":\"Getting started with template specs.\",\"author\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?author=1#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/word-image-160.png\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615\\\/#articleImage\",\"width\":184,\"height\":58},\"datePublished\":\"2021-05-04T11:26:54+00:00\",\"dateModified\":\"2021-05-04T11:26:54+00:00\",\"inLanguage\":\"en\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#webpage\"},\"articleSection\":\"Uncategorized\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.azuregovernanceguard.com\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?cat=1#listItem\",\"name\":\"Uncategorized\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?cat=1#listItem\",\"position\":2,\"name\":\"Uncategorized\",\"item\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?cat=1\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#listItem\",\"name\":\"Getting started with template specs.\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#listItem\",\"position\":3,\"name\":\"Getting started with template specs.\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?cat=1#listItem\",\"name\":\"Uncategorized\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/#person\",\"name\":\"Eelco Labordus\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e156d3802a198fc2a5ec87dfdd45a0822a113d40bc8e55917bb5b76065e8322c?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Eelco Labordus\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?author=1#author\",\"url\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?author=1\",\"name\":\"Eelco Labordus\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e156d3802a198fc2a5ec87dfdd45a0822a113d40bc8e55917bb5b76065e8322c?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Eelco Labordus\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#webpage\",\"url\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615\",\"name\":\"Getting started with template specs. - Azure Governance Guard\",\"description\":\"Create a a New Project First login to https:\\\/\\\/dev.azure.com\\\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.\",\"inLanguage\":\"en\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?p=615#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?author=1#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/?author=1#author\"},\"datePublished\":\"2021-05-04T11:26:54+00:00\",\"dateModified\":\"2021-05-04T11:26:54+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/#website\",\"url\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/\",\"name\":\"Azure Governance Guard\",\"inLanguage\":\"en\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.azuregovernanceguard.com\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Getting started with template specs. - Azure Governance Guard","description":"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.","canonical_url":"https:\/\/www.azuregovernanceguard.com\/?p=615","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#blogposting","name":"Getting started with template specs. - Azure Governance Guard","headline":"Getting started with template specs.","author":{"@id":"https:\/\/www.azuregovernanceguard.com\/?author=1#author"},"publisher":{"@id":"https:\/\/www.azuregovernanceguard.com\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/05\/word-image-160.png","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615\/#articleImage","width":184,"height":58},"datePublished":"2021-05-04T11:26:54+00:00","dateModified":"2021-05-04T11:26:54+00:00","inLanguage":"en","mainEntityOfPage":{"@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#webpage"},"isPartOf":{"@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#webpage"},"articleSection":"Uncategorized"},{"@type":"BreadcrumbList","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com#listItem","position":1,"name":"Home","item":"https:\/\/www.azuregovernanceguard.com","nextItem":{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com\/?cat=1#listItem","name":"Uncategorized"}},{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com\/?cat=1#listItem","position":2,"name":"Uncategorized","item":"https:\/\/www.azuregovernanceguard.com\/?cat=1","nextItem":{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#listItem","name":"Getting started with template specs."},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#listItem","position":3,"name":"Getting started with template specs.","previousItem":{"@type":"ListItem","@id":"https:\/\/www.azuregovernanceguard.com\/?cat=1#listItem","name":"Uncategorized"}}]},{"@type":"Person","@id":"https:\/\/www.azuregovernanceguard.com\/#person","name":"Eelco Labordus","image":{"@type":"ImageObject","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/e156d3802a198fc2a5ec87dfdd45a0822a113d40bc8e55917bb5b76065e8322c?s=96&d=mm&r=g","width":96,"height":96,"caption":"Eelco Labordus"}},{"@type":"Person","@id":"https:\/\/www.azuregovernanceguard.com\/?author=1#author","url":"https:\/\/www.azuregovernanceguard.com\/?author=1","name":"Eelco Labordus","image":{"@type":"ImageObject","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/e156d3802a198fc2a5ec87dfdd45a0822a113d40bc8e55917bb5b76065e8322c?s=96&d=mm&r=g","width":96,"height":96,"caption":"Eelco Labordus"}},{"@type":"WebPage","@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#webpage","url":"https:\/\/www.azuregovernanceguard.com\/?p=615","name":"Getting started with template specs. - Azure Governance Guard","description":"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.","inLanguage":"en","isPartOf":{"@id":"https:\/\/www.azuregovernanceguard.com\/#website"},"breadcrumb":{"@id":"https:\/\/www.azuregovernanceguard.com\/?p=615#breadcrumblist"},"author":{"@id":"https:\/\/www.azuregovernanceguard.com\/?author=1#author"},"creator":{"@id":"https:\/\/www.azuregovernanceguard.com\/?author=1#author"},"datePublished":"2021-05-04T11:26:54+00:00","dateModified":"2021-05-04T11:26:54+00:00"},{"@type":"WebSite","@id":"https:\/\/www.azuregovernanceguard.com\/#website","url":"https:\/\/www.azuregovernanceguard.com\/","name":"Azure Governance Guard","inLanguage":"en","publisher":{"@id":"https:\/\/www.azuregovernanceguard.com\/#person"}}]},"og:locale":"en_US","og:site_name":"Azure Governance Guard -","og:type":"article","og:title":"Getting started with template specs. - Azure Governance Guard","og:description":"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.","og:url":"https:\/\/www.azuregovernanceguard.com\/?p=615","og:image":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/logo-white-1.png?fit=10001000&#038;ssl=1","og:image:secure_url":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/logo-white-1.png?fit=10001000&#038;ssl=1","article:published_time":"2021-05-04T11:26:54+00:00","article:modified_time":"2021-05-04T11:26:54+00:00","twitter:card":"summary_large_image","twitter:site":"@EelcoLabordus","twitter:title":"Getting started with template specs. - Azure Governance Guard","twitter:description":"Create a a New Project First login to https:\/\/dev.azure.com\/ and select create a New Project. Give the new project an awesome name and select if the project needs to be Private or Public. I would recommend starting with a Private project. After the project is created you will automatically go to the new created Project.","twitter:creator":"@EelcoLabordus","twitter:image":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/logo-white-1.png?fit=10001000&ssl=1"},"aioseo_meta_data":{"post_id":"615","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2025-09-15 13:34:25","updated":"2025-09-15 13:34:25","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.azuregovernanceguard.com\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.azuregovernanceguard.com\/?cat=1\" title=\"Uncategorized\">Uncategorized<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tGetting started with template specs.\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.azuregovernanceguard.com"},{"label":"Uncategorized","link":"https:\/\/www.azuregovernanceguard.com\/?cat=1"},{"label":"Getting started with template specs.","link":"https:\/\/www.azuregovernanceguard.com\/?p=615"}],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":412,"url":"https:\/\/www.azuregovernanceguard.com\/?p=412","url_meta":{"origin":615,"position":0},"title":"How do I govern my Governance (policies)","author":"Eelco Labordus","date":"March 5, 2024","format":false,"excerpt":"In the dynamic tech landscape, Azure policies are critical for system security and operation, requiring regular updates and monitoring for changes using alerts.","rel":"","context":"In &quot;Azure Policy&quot;","block_context":{"text":"Azure Policy","link":"https:\/\/www.azuregovernanceguard.com\/?cat=14"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2024\/02\/image-9.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2024\/02\/image-9.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2024\/02\/image-9.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2024\/02\/image-9.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":193,"url":"https:\/\/www.azuregovernanceguard.com\/?p=193","url_meta":{"origin":615,"position":1},"title":"Safeguarding Cloud Resources with Azure Policy&#8217;s DenyAction Effect","author":"Eelco Labordus","date":"July 25, 2023","format":false,"excerpt":"In this blog article, we explore the significance of safeguarding cloud resources from accidental or malicious deletion in Azure environments. To ensure the integrity and security of your cloud infrastructure, Azure Policy's DenyAction Effect provides a powerful feature. We discuss the importance of protecting resources due to accidental deletions, which\u2026","rel":"","context":"In &quot;Azure Policy&quot;","block_context":{"text":"Azure Policy","link":"https:\/\/www.azuregovernanceguard.com\/?cat=14"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/07\/Untitled.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/07\/Untitled.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/07\/Untitled.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/07\/Untitled.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":323,"url":"https:\/\/www.azuregovernanceguard.com\/?p=323","url_meta":{"origin":615,"position":2},"title":"Mastering Azure Policy: Overrides &amp; Exemptions Explained","author":"Eelco Labordus","date":"November 22, 2023","format":false,"excerpt":"Azure Policy Overrides and Exemptions play integral roles in Azure management. Overrides allow alterations of policy effects during assignments, useful for assessing policy impact. Exemptions, on the other hand, permit certain resources to be excluded from policy assignments, accommodating necessary deviations. Both features provide flexibility while ensuring compliance, illustrating their\u2026","rel":"","context":"In &quot;Azure Policy&quot;","block_context":{"text":"Azure Policy","link":"https:\/\/www.azuregovernanceguard.com\/?cat=14"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/11\/image-1.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/11\/image-1.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/11\/image-1.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/11\/image-1.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/11\/image-1.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/11\/image-1.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":362,"url":"https:\/\/www.azuregovernanceguard.com\/?p=362","url_meta":{"origin":615,"position":3},"title":"The journey that is called Microsoft Azure Stack","author":"Eelco Labordus","date":"January 4, 2021","format":false,"excerpt":"A couple of years ago, I was present at TechEd Europe 2014 for the launch of Windows Azure Pack. This version was built to give the same experience as the first version of Azure (now known as the classic portal). A big challenge was getting started with the Windows Azure\u2026","rel":"","context":"In &quot;Microsoft Azure Stack Hub&quot;","block_context":{"text":"Microsoft Azure Stack Hub","link":"https:\/\/www.azuregovernanceguard.com\/?cat=118"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/01\/Blog-eelco-labordus-azure-2.width-1118.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/01\/Blog-eelco-labordus-azure-2.width-1118.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2021\/01\/Blog-eelco-labordus-azure-2.width-1118.jpg?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":136,"url":"https:\/\/www.azuregovernanceguard.com\/?p=136","url_meta":{"origin":615,"position":4},"title":"Mastering Successful Deployments: Validating with What-If Deployment and Azure Policies","author":"Eelco Labordus","date":"June 30, 2023","format":false,"excerpt":"Explore the benefits of What-If deployment with Azure Policies for secure and compliant cloud operations. Preview changes, ensure policy alignment, and simplify cloud management for enhanced governance.","rel":"","context":"In &quot;Azure Policy&quot;","block_context":{"text":"Azure Policy","link":"https:\/\/www.azuregovernanceguard.com\/?cat=14"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-30-095316.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-30-095316.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-30-095316.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.azuregovernanceguard.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-30-095316.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":780,"url":"https:\/\/www.azuregovernanceguard.com\/?p=780","url_meta":{"origin":615,"position":5},"title":"Microsoft Azure Stack Hub","author":"Eelco Labordus","date":"January 4, 2021","format":false,"excerpt":"Azure Stack is a hybrid cloud computing software solution developed by Microsoft based on the company\u2019s Azure cloud platform. Azure Stack is designed to help organizations deliver Azure services from their own data center. Azure Stack combines infrastructure-as-a-service (IaaS) and platform-as-a-service (PaaS) services in a software stack that spans on-premises\u2026","rel":"","context":"In &quot;Microsoft Azure Stack Hub&quot;","block_context":{"text":"Microsoft Azure Stack Hub","link":"https:\/\/www.azuregovernanceguard.com\/?cat=118"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=\/wp\/v2\/posts\/615","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=615"}],"version-history":[{"count":0,"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=\/wp\/v2\/posts\/615\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=615"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=615"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.azuregovernanceguard.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=615"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}