ARM Templates Parameter Files | Pass your parameters like a pro

Поділитися
Вставка
  • Опубліковано 9 лип 2024
  • With JSON-based Parameter Files you can supply environment variables consistently and conviniently to your ARM Templates.
    In this episode I give you introduction to parameter files for Azure Resource Manager (ARM) templates with use of parameter types, optional parameters, default values, etc.. I will show you best practices and showcase few use-cases.
    Source code for demos: github.com/MarczakIO/azure4ev...
    In this episode live demo of
    - Creating parameter files manually
    - Automatically generated parameter files
    - Deployment from Azure Portal
    - Deployment from Azure CLI
    - Overriding parameters from files with Azure CLI
    Next steps for you after watching the video
    1. Parameter files intro
    - docs.microsoft.com/en-us/azur...
    2. Pass reference types with Azure Key Vault
    - docs.microsoft.com/en-us/azur...
    Want to connect?
    - Blog marczak.io/
    - Twitter / marczakio
    - Facebook / marczakio
    - LinkedIn / adam-marczak
    - Site azure4everyone.com
  • Наука та технологія

КОМЕНТАРІ • 46

  • @Albelipreeti
    @Albelipreeti 2 роки тому

    Super. This is what I was looking for to start with for ARM template deployment.

  • @saeidnikbakht765
    @saeidnikbakht765 2 роки тому

    Hi Adam. Thank you so much for these videos.They are fantastic.:)

  • @vivekharin
    @vivekharin 3 роки тому +1

    Awesome, exactly the stuff I was looking for! Thanks. :)

  • @seftekhari
    @seftekhari 3 роки тому

    Great video. Thanks a lot Adam. Waiting for your other trainings :)

  • @MrDhaval1993
    @MrDhaval1993 2 роки тому

    Thanks a lot, helped me in my project.

  • @georgezviadgoglodze7810
    @georgezviadgoglodze7810 3 роки тому +1

    Good work Adam as usual!

  • @faiz5909
    @faiz5909 2 роки тому

    Hi Adam ,thanks for the video

  • @josunin75
    @josunin75 3 роки тому

    again, thank you for the great video.

  • @amitagnihotri8695
    @amitagnihotri8695 3 роки тому

    Nicely explained dear Adam !! Keep it up...

  • @ash3rr
    @ash3rr 3 роки тому

    I found it a little bit tricky using objects within parameter files, for example the SKU object for Azure SQL DB. After watching this, I got the gist of it and was able to get my template to work, thanks a lot.

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому

      I avoid using objects as input parameters. It's just a management hell later on. But sometimes there isn't simply a better option. If I can, I avoid them.

    • @ash3rr
      @ash3rr 3 роки тому

      @@AdamMarczakYTThanks for the reply. I am a DBA and the reason I am using them is that I am trying to make a Git Repo with a basic template for all the types of databases we will deploy. For any new infra we deploy, I intend to just clone this template repo, modify it and run it through the pipeline. (Using a CI DevOps methodology). Would you recommend another approach for my scenario to avoid using these object parameters?

  • @goutamir1729
    @goutamir1729 2 роки тому

    Hi Adam,How to create a storage account with file share with output as connection strings.

  • @ChallusMercer
    @ChallusMercer 4 роки тому +3

    Hi Adam, thank you for this great video!
    What are your thoughts on building the azure infrastructure with Terraform instead of ARM templates? Would you cover this topic too in future?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +3

      Thanks. Terraform is something that is definitely on my list! Thanks for watching :)

  • @melk48111
    @melk48111 2 роки тому

    Hi Adam, I have a question. Once I deploy it, then I need to make some changes to my logic app. Do I need to do some manual steps?

  • @abdulthakur5608
    @abdulthakur5608 3 роки тому +1

    Thank you

  • @bismsit29
    @bismsit29 2 роки тому

    HI Adam, Since ARM has so many inbuilt integrations with Azure, why would we use TF ?

  • @VikramKumar-ci3tq
    @VikramKumar-ci3tq 3 роки тому

    Hi Adam - great video! Thanks for sharing this. I’m working on passing azure key vault secret in azure database for postgreSql. Do u have any good reference video ?

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому

      Hey there. I'm not sure I understand. What exactly do you want to do? Both of those services are storage services, that means they typically have a middleware service in between which consists business logic. What is you scenario?

  • @markvogt70
    @markvogt70 Рік тому

    NICE VIDEO - I did notice one oddity though...
    @ 6:07 you just got done creating a SEPARATE storage.parameters.json file which contains the "parameters" section...
    ... but then you LEFT the entire "parameters" sections back in the ORIGINAL ARM template storage.json as well :-O
    This leads to an interesting dilemma/question: WHICH "parameters" section does Azure consider AUTHORITATIVE (which one WINS) ?
    Time for a follow-up video ;-O
    Keep up the create videos !
    -Mark in North Aurora IL (USA)

  • @faiz5909
    @faiz5909 2 роки тому

    how we pass the URL in arm template as parameter

  • @tallgeese1
    @tallgeese1 3 роки тому +1

    Is there an advantage to using Azure CLI vs. PowerShell?

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому +1

      In general I'd say no. But there are some cool features that in certain cases make CLI better than powershell. For example --generate-ssh-keys for vm creation automatically generates SSH key for azure VM, in powershell you have to do this on your own. AZ INTERACTIVE is super cool for learning command line, no such mode in the powershell.
      I tend to use both for my work. :)

  • @NavneetKumar-fs2mc
    @NavneetKumar-fs2mc 4 роки тому +1

    Is there any additional cost to use template deployment?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      No additional cost! All the tools like CLI, PowerShell, SDks etc also use the same API. They are all free because Azure Resource Manager is free.

  • @basireddy3884
    @basireddy3884 2 роки тому

    how to create 100 VM's at time using ARM
    template in azure ?

  • @LencoTB
    @LencoTB 4 роки тому

    Hej Adam. Great video. Where is your video where you talk about accessing KeyVaults secrets in a parameters.json file? I know how to do it but wanted to see how you handle different environments. Do you generally always create a single parameters.[envName].json per environment? What if you could have 1 single parameters.json file for all environments and pass in the environment varibales via Azure DevOps pipeline?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Hey! thanks! I don't have key vault backed parameters video up yet unfortunately. I will add it to the lis, thanks! I actually mix param files but yes I have one param files for entire environment as I have many templates I try to use powershell to extract parameters I need for specific template.

    • @LencoTB
      @LencoTB 3 роки тому

      Adam Marczak - Azure for Everyone I have gone from parameter.[ENV].json to having a single parameters.json file for all environments. I take in environment name as parameter and then I concat that as a suffix and store it in a variable in the template.json. That works out better for me.

  • @rahulgoud3092
    @rahulgoud3092 4 роки тому

    Hi Adam, Hope you are doing good.
    How do i pass the paramters from powershell to ARM template and invoke it which is stored in blob storage. For example, how to pass the below parametes to JSON arm template. Thanks in Advance.
    $Parameters = @{
    "clusterName"=${clusterName}
    "location"="westeurope"
    "managedIdentity"=${managedIdentity_Id}
    "clusterVersion"="3.6"

    }

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Hey, thanks! I am doing good. Hope you are too.
      If you need to pass parameters from powershell object then use TemplateParameterObject cmdlet parameter.
      reference: docs.microsoft.com/en-us/powershell/module/az.resources/new-azresourcegroupdeployment?view=azps-3.7.0

    • @rahulgoud3092
      @rahulgoud3092 4 роки тому

      @@AdamMarczakYT Thanks so much for the prompt reply!!

  • @raghavendrareddynagareddy8393
    @raghavendrareddynagareddy8393 4 роки тому

    In dev resource group I have multiple resources like function apps, logic apps,api connection, logic apps calling key vaults, service bus queues, liquid maps.
    How I can deploy entire resource to defferent environment resource groups using ARM template.for each environment I am using different key vaults, service bus queue, liquid maps are different how I can automate these changes.
    Note: developer creating these resources in azure portal for Dev environment,I need to automate using azuredevops
    If you have any idea call me 7989154106

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +1

      Hey just create template, create parameters for things that change from environment to environment, store those in parameter files or pull dynamically using PowerShell/CLI. But it's too generic question to answer. If your developer already created resource try export template and fix it from there but it's quite difficult if you never wrote ARM templates before.
      docs.microsoft.com/en-us/azure/azure-resource-manager/templates/export-template-portal

    • @raghavendrareddynagareddy8393
      @raghavendrareddynagareddy8393 4 роки тому

      @@AdamMarczakYT generally if I export resources from entire resource group,it has template.json and parameters.json.i don't want to edit template.json to maintain consistency across environments.in templates for each environment we are different keyvaults, service bus queues with extension environment name and liquid maps also extension with environment name,for Dev and itg we are using same service bus and integration account but queues and maps are different,how I can automate deployment.pleas help me in this scenario.if you are able to connect call also fine

    • @raghavendrareddynagareddy8393
      @raghavendrareddynagareddy8393 4 роки тому

      I am trying to automate using azuredevops

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +1

      I'm sorry but this is too complex for to explain using youtube comments. But I can''t connect with you because I don't do consulting work in my free time because I barely have any time left. I'm sure you will figure it out! Hope the video helps with getting the right direction.

    • @raghavendrareddynagareddy8393
      @raghavendrareddynagareddy8393 4 роки тому

      @@AdamMarczakYT thanks Adam,I am beginner in arm template ,I need to focus more

  • @rickyv.2790
    @rickyv.2790 2 роки тому

    You don't need all these, just download the templates before you hit the create (do not download it when it's already created, it won't work because it got already other interfaces). You open the template, create new and add the templates (you only need the template.json), when you deploy, you edit the parameters and copy the parameters from the download parameter.json, then you deploy! crap!!!