Great One Mate , Is there anyway you are covering for packer in Hashi Corp cloud ? let me know
@pikachu-rd8jyКүн бұрын
Thank you very much for such a knowledgeable video. But I have a different scenario, how to consume or call terraform modules from one project to another project within the same organisation in azure devops by using PAT. Could you pls help here? @azure-terraformer #azure-terraformer Hoping for your reply🙂 Note - I have multiple repos in my repo to represent each resource, So I have storage account module with in it I have VNET lookup sub module calling, that is in different repo. Due to this dependency I have to setup the authentication before running terraform cmdlets. I am able to achieve this when module source is GitHub.
@prateeksarangi91874 күн бұрын
Great Video Mate, Wow
@prateeksarangi91874 күн бұрын
HI Thanks for All the Azure Video , Great explanation , I have a request to make with regards to ADO Pipeline through YAML along with the release cycle , if you cloud cover that would be great. Its a request not a demand , thanks for all the packer and azure terraform video
@pradeepkhantwal4 күн бұрын
"Hi Mark, I recently completed the Terraform playlist and attended the live session, and I am thrilled to have discovered such a high-quality Azure Terraform tutorial on KZbin. I successfully implemented the same approach in my project. I truly appreciate the effort you put into creating this content, although I am surprised that it hasn't received more views."
@prateeksarangi91875 күн бұрын
Great Video Mate ,Thanks a lot for this one , really helpful . But i believe as well we can get rid of the managed_image_name and managed_image_resource_group by using the shared_image_gallery and dhared_image_gallery_destination together
@jamieratcliffe102911 күн бұрын
Thank you so much dude for this video. I was stuck banging my head on this one and this was a great help.
@azure-terraformer11 күн бұрын
Your welcome!
@whatshatnin457216 күн бұрын
YO! Quick Question. Where can one find some good information on using Terraform to pull data out of spreadsheet and spit out an xml file to be ran as a script.
@azure-terraformer16 күн бұрын
NGL, probably better done with a traditional programming language like, Python, go, C#! Just sayin’ 🫣
@whatshatnin457216 күн бұрын
@@azure-terraformer I got you. I appreciate it.
@TheMouseJerry-du1md24 күн бұрын
Great video. Really appreciate. It wuld be great, if this can be turned into a function module, so we can just call the module
@Barbara-l2x25 күн бұрын
You are trying to bend Bicep to match Terraform. For example we have tight controls where a resource group must preexist and we limit deployments to specific resource groups (no way a specific deployment pipeline would get full subscription access). So all the extra subscription stuff is less safe and unneeded. Also you do not need to put parameters into a bicep file (its why you have distinct bicep parameter files which can target different environments).
@azure-terraformer25 күн бұрын
Thanks for the response. You make a good point about environments that want to constrain folks within a RG boundary. In my experience, usually we just create new subscriptions to act as the main RBAC boundary as it often becomes unfeasible to practically isolate within an RG. It’s not necessarily less safe but it can be if you try and do everything in one subscription. I’m not sure I follow your point about parameters. In Bicep we just parameter value files and we declare parameters in Bicep just like in Terraform. Bicep uses JSONC files and calls them parameters, Terraform uses TFVARS and calls them input variables. Same, same no?
@zimcanit6647Ай бұрын
Thanks Mark!
@azure-terraformerАй бұрын
Here to serve! Your friendly neighborhood Azure Terraformer! 🤓😉
@decius596Ай бұрын
My comment may have been deleted, so I'll repost. I don't think you're right about the .terraform.lock.hcl file. This should definitely be included into source control. The `.terraform` folder itself should be ignored. Here is the relevant blurb from terraform documentation: "Terraform automatically creates or updates the dependency lock file each time you run the terraform init command. You should include this file in your version control repository so that you can discuss potential changes to your external dependencies via code review, just as you would discuss potential changes to your configuration itself."
@azure-terraformerАй бұрын
Interesting. Thanks for sharing! I’ve never included it in source. Never observed any malfeasance. I wonder what the impact is of including it. It seemed (in my head) as a file used by the local operator that would be unique to their local environment, also a file that gets dynamically generated when needed anyway. Do you have the link to the docs where you found this? I’d like to take a closer look! Thanks again for bringing this to my attention! 😊
@decius596Ай бұрын
@azure-terraformer I tried to link it before which is why I think my comment was deleted. If you've ever done node development this is something similar. You want every run of tf init to be locked to the same versions that you tested with. This essentially makes it so that you have a predictable deployment of all of your dependences. I'll post another comment with the link and see if it gets deleted by yt
@azure-terraformerАй бұрын
Rgr rgr
@decius59628 күн бұрын
@@azure-terraformer yeah it got deleted but if you search for terraform lock file and go to the link, the part I pasted is under "lock file location" or something like that
@azure-terraformer28 күн бұрын
@decius596 are you in discord?
@rs-tarxvfzАй бұрын
Hello Mark, just came here to tell you about Azure Verified Modules. Could you please throw some light on how do i am gonna use these in my main landing zones for deployment. I am clueless about these. Please make videos !
@azure-terraformerАй бұрын
Good idea! I should probably get around to talking about those! 🤣🫣🤓
@garlankashivshankarkumar4552Ай бұрын
Can kou make a video on terraformer azure tool
@azure-terraformerАй бұрын
Good idea!
@dascomp51Ай бұрын
If it's privileged, you DO want to setup a scheduled just-in-time group membership for the users in the list. If the role isn't privileged, you can let them always keep the role. This makes sure admins assume privileged roles for short periods only when they need them
@azure-terraformerАй бұрын
Thanks for chiming in!!! Very helpful insight!
@dankitchАй бұрын
Thanks for the review and tips, really appreciate it. Will look to refactor based on the encapsulation :)
@azure-terraformerАй бұрын
Thank you for the continued support! Glad you find my code reviews useful! 🤓
@ttf5782Ай бұрын
Thanks! Will buy your book right away.
@azure-terraformerАй бұрын
Thanks for the support! I hope you find it useful!
@darren-johnsonАй бұрын
Hey Mark, great video. I have a question if you don't mind. Around 1:13:00 you mention using providers in both the root and child/reusable modules. I thought this was against Hashicorp advice. Could you explain a bit further what you meant here please?
@azure-terraformerАй бұрын
I think I was referring to the required providers blocks which that should be in both root and reusable modules
@rs-tarxvfzАй бұрын
Hey I am big fan of this YT channel. Being a Az TF engineer it helps me a lot. I wanted to ask could you please make some videos in 2025 about how to architect your Landing zone setup. Do we need to use CAF Terraform Levels.
@azure-terraformerАй бұрын
Thanks for the feedback! I’ll see what I can do!
@saebom0708Ай бұрын
Hey Mark, it was great to be at HashiConf with you! The line to Mark's book signing was way long. You were a star this year!
@azure-terraformerАй бұрын
NTMU too! 🤓 Just giving away free water to a gaggle of marathon runners!!! 🏃 😅 Happy Terraforming!!!
@andrearizzioli5446Ай бұрын
I totally agree with keeping the code as simple and readable as possible. In my experience, classic developers tend to write less readable code due to their habit to write dry code with other languages. Your video is a good starting point for a discussion between dev and ops in a devops team, where generally there are more dev than ops.
@azure-terraformerАй бұрын
Glad you found it helpful! 🤗
@ArnabDeveloperАй бұрын
Please provide the URL of the PR.
@azure-terraformerАй бұрын
Hey sorry these code ninja reviews are private!
@DaveSheeksАй бұрын
Thank you for your content!
@azure-terraformerАй бұрын
Glad that you enjoy it!!! ✊🤓
@cheezespreadАй бұрын
🤣 That hallway track setting was definitely bigger than what I expected. You nailed the humor which is missing in these conference talks.
@azure-terraformerАй бұрын
Thanks mate!
@haridasamitАй бұрын
Hello Mark Can you please provide your blog link other than medium
@azure-terraformerАй бұрын
www.marktinderholt.com
@RajaseelanGaneswaranАй бұрын
Dude, really love how you walk through the problem and explain it from a terraform POV. Love it!
@azure-terraformerАй бұрын
Thanks a lot! That’s very nice of you to say!!! 😊
@DavidPazderaАй бұрын
Hi Mark, you asked about the pre-flight validation in Bicep. It is a feature of ARM, not Bicep per se, and what it does is, it simulates a deployment, so it sends your ARM deployment template (authored directly as JSON ARM or transpiled from Bicep DLS) to the ARM engine and does a series of validations like: 'Does that resource type / Azure service exist in the region I selected?', 'Do I have sufficient quota (CPU cores or similar) for deploying the resources I declared?', 'Are the resource names unique in the given scope?' or 'Will this deployment be stopped by some Azure Policy assignment?', etc. Something that requires context of the 'target environment' that might be difficult to embed as set of input validation rules. Also, preflight and what-if are two separate things.
@azure-terraformerАй бұрын
Hey thanks a lot! Super helpful!!!
@mvp27-e2gАй бұрын
I follow your terraform videos regularly. How can i buy this book? I am from India?
@azure-terraformerАй бұрын
This is gonna sound strange coming from me....but..... Amazon!!! 🤣🤓
@mvp27-e2gАй бұрын
Is there any ebook available?
@azure-terraformerАй бұрын
Kindle and through O'Reilly platform!
@mvp27-e2gАй бұрын
@@azure-terraformer thanks a lot.
@azure-terraformerАй бұрын
@venuprasad1 My pleasure! I how you find my book useful! Thanks for the support! 🙏
@karlkeskyla2 ай бұрын
Thank you for the book!
@azure-terraformerАй бұрын
Hope you like it!
@TRADITIONLAMINIATURE2 ай бұрын
Hello Azure Terraformer I hope you are well. I visited your KZbin Channel. Your content is Excellent. But your Channel is not growing, Because your Content title and Description are not SEO-friendly and do not have Enough Rank tags. This is why there is no Content Coming to the top of KZbin. As a result, your video SEO Score is very low, according to VidiQ, (your channel's video's SEO score is 23.3/ out of 100, which should be 80+). If you want, I can make it 80+, which will help your channel grow faster. If you SEO your videos Properly then the Channel Progress will be very Fast & Subscribers and Views will Increase. If you want I can solve problems and help you rank your videos Better. If you are Interested Please Let me know. Best Regards, AL-AMIN (KZbin Video SEO Expert)
@w14content602 ай бұрын
As soon as I implemented the multi-environment part, my (dev & prod) pipeline prints "var.azure_credentials" and then just keeps going without making any progress. Why could this be? The credentials seem right.
@azure-terraformer2 ай бұрын
It means your input variable “azure_credentials” is unspecified
@w14content602 ай бұрын
@@azure-terraformer Strange because they are defined in variables.tf and then they are given value in the .debug.tfvars file. This is the error in the pipeline │ │ on variables.tf line 16: │ 16: variable "azure_credentials" { │ │ The root module input variable "azure_credentials" is not set, and has no │ default value. Use a -var or -var-file command line argument to provide a │ value for this variable. My terraform.tfvars has this: azure_backends = { "dev" = { resource_group = "x" storage_account = "z" container = "y" } "prod" = { resource_group = "x" storage_account = "w" container = "y" } } And this line in the .debug.sh should allow the variables to be passed, right? terraform $* -var-file=".debug.tfvars" Please let me know if you can see what went wrong!
@w14content602 ай бұрын
And this is lines 9-10 of terraform plan: Generating script. Formatted command: exec bash '/home/vsts/work/1/s/.azdo-pipelines/scripts/terraform-with-backend.sh' plan -var-file="env-dev.tfvars" -out=myapp-dev.tfplan
@valp81982 ай бұрын
Watching this makes me realize that you can always contribute no matter at what level you find yourself in. How can I join this community?
@azure-terraformer2 ай бұрын
Links to join are in the description! The official community meetings are monthly headed up by the Microsoft Azure Terraform team! Please join us! 🤗
@valp81982 ай бұрын
@azure-terraformer I only saw your links there. Will check again. Thanks!
@DaveSheeks2 ай бұрын
Firefly does this well.
@azure-terraformer2 ай бұрын
oh really? I’ll have to check that out!
@Jandi694882 ай бұрын
Brother can you do a video on how we can bring over a hand built kubernetes cluster into the kuberntes provider. I have lost all the yaml files. And need to replicate what’s currently active.
@TheMouseJerry-du1md2 ай бұрын
As always, quality content and a real world, I have not seen this sort terraform videos anywhere on youtube. The explanation great, also it's really a good idea, that you pick the real world stuff and throw same here, which is an excellent way of teaching. That's why I have subscribed. Keep up the good quality work and thank you soo much for this wonderful video. Looking forward for more..
@azure-terraformer2 ай бұрын
Wow, thanks! Very nice of you to say! LMK if there’s anything you want to see covered!
@TheMouseJerry-du1md2 ай бұрын
@@azure-terraformer You deserve it! May be creating a real time azure module, may be azure function, webapp, IAM module etc. would be really beneficial. Thank you!
@azure-terraformer2 ай бұрын
Great ideas!!!
@byron_glover2 ай бұрын
Thanks for this video. I literally have to do this at work next week and was wondering what the approach might be. A bit tedious that the only option is reimport though. Would it b worth running a plan to see how bad the situation is on the latest version before incrementally upgrading from like 2.x to 3.x ? My project has like 150ish resources, mostly function apps.
@azure-terraformer2 ай бұрын
Glad it was helpful! Definitely do some testing in an isolated workspace! The terraform plan unfortunately only outputs the first deprecated resource it doesn’t output them all.
@byron_glover2 ай бұрын
@@azure-terraformer Oh that's good to know! In that case, should I just do a "terraform state list" and check each resource in the docs for deprecation? I think there is only like 10 or so which are created many times.
@raul37222 ай бұрын
@@byron_glover I used this command to list all the deprecations in the current plan (I was in v3.116.0): terraform plan -json | jq '.diagnostic | select( . != null )' | jq '{detail: .detail, filename: .range.filename, start_line: .range.start.line}'
@sironjuh2 ай бұрын
Just upgraded from 3.x to 4.x and luckily there were no deprecated resources, just the configuration blocks had some changes in naming and values that the new provider expects. So after upgrading the provider, I just renamed/moved those values to the new blocks to match the new setup and Terraform was happy.
@azure-terraformer2 ай бұрын
@sironjuh good job! Way to be a good steward of your infrastructure and keeping your providers updated! 🙌
@mortona42yt2 ай бұрын
Why wouldn't you use bash..
@azure-terraformer2 ай бұрын
My learner was typing in the commands manually!!! 🤓
@jonthebis3 ай бұрын
I just have one question - how do you get client secret and client id? I am having a hard time understanding how can i get these and I am getting the error "Authorization Failed - The client with object id"
@m0r4ag3 ай бұрын
I rather not super spam all your videos/shorts with this exact same comment so I will leave it right here. I love the content, it’s crazy how I find it just in the time im introducing myself with terraform, keep the good work, I appreciate it a lot.
@azure-terraformer3 ай бұрын
Comments like that….. spam away, my friend!!!! 🤣🤓
@rebornlol3 ай бұрын
Your suggestions up to 1:05 in the video helped clear things up for me. Wish the app was more descriptive with the options available. Thanks!
@user-ux3dn5eu4c3 ай бұрын
Hi❤
@azure-terraformer3 ай бұрын
👋
@valp81983 ай бұрын
This is the best tutorial I have seen about the subject. Can you please update the URL to the source code or post it in the comments? I get a 404 when I try it. Thanks
@azure-terraformer3 ай бұрын
Thanks for the kind words. Let me check the source code link!
@cheezespread3 ай бұрын
Here is to many more of those 5Ks 🎉
@ebrookman993 ай бұрын
Excellent work! I've been looking for a way to do exactly this!! Are you open to contributions to your repos?
@azure-terraformer3 ай бұрын
Thanks! Glad you found it useful! 😊 absolutely open to PRs! Also thanks for supporting the channel! You are a gentleman and a scholar! ❤️🙏🤠
@susanthasilva3 ай бұрын
Happy to congratulate and be the first member to comment 😊