Azure DevOps Pipelines with Terraform and Stages

  Рет қаралды 69,837

Travis Roberts

Travis Roberts

Күн бұрын

Пікірлер: 71
@Kevin.Gilbert
@Kevin.Gilbert Жыл бұрын
Thank you so much for making this video. It took a process that is quite daunting to new DevOps engineers and made it very easy to follow.
@michaelcordtz1402
@michaelcordtz1402 7 күн бұрын
Still relevant, just made my first Terraform pipelines, using this video. A minor detail: the field where you select the service connection has changed name from "Azure subscription" to "Azure Provider Service Connection"
@kevinm2567
@kevinm2567 2 жыл бұрын
Wow! I just witnessed a professional at work. Subscribed.
@Ciraltos
@Ciraltos 2 жыл бұрын
Thanks for the sub!
@jakegoodlett9608
@jakegoodlett9608 2 жыл бұрын
Great video, we're moving away from classic pipelines so this was very helpful.
@nageshwarkatta910
@nageshwarkatta910 Жыл бұрын
Wow Its nice video. Explanation to deploy different stages using azure pipeline. facing couple of issues regarding destroy stage. finally we fixed based on your video reference. Thanks sooo muchhh.
@akash25446
@akash25446 Жыл бұрын
Wow, Great Explanation. This helped me to clear my concepts from basic . Very Professional !! Thanks a lot !
@dansmith5381
@dansmith5381 2 жыл бұрын
Thanks Travis, this was a great video for getting started with pipelines using yaml rather than using the classic pipeline builder UI
@Fullywtf
@Fullywtf 2 жыл бұрын
After a bunch of googling, this video was gold. Thank you!
@rajojha449
@rajojha449 8 ай бұрын
Great teaching .to the point what is needed . Thanks for the content
@Max-cq6hl
@Max-cq6hl 9 ай бұрын
Exactly what I was looking for. Tyty!
@stevencuddihee
@stevencuddihee Жыл бұрын
6:26 where do you find the backend storage key? Is that from ADO or from the Azure portal?
@jarrrred
@jarrrred 9 ай бұрын
I super appreciate this video. Thank you! This was an awesome tutorial.
@johnvbrennan
@johnvbrennan 2 жыл бұрын
Great video. Really did a good job of explaining yaml stages and use of terraform tasks.
@leopoldocardoso2970
@leopoldocardoso2970 6 ай бұрын
Thank you so much for making this video. Amazing
@suhailnepal9819
@suhailnepal9819 2 жыл бұрын
Thank you, everything is well explained in a simple manner.
@Ciraltos
@Ciraltos 2 жыл бұрын
Glad it was helpful!
@tanliz765
@tanliz765 2 ай бұрын
This is very helpful. Thank you!
@kaio100ken
@kaio100ken 10 ай бұрын
I dont know if I commented this earlier but what a great video.
@marybecken2358
@marybecken2358 2 жыл бұрын
great explanation- thank you!
@brunoccs
@brunoccs 9 ай бұрын
I ran into a problem, no file was created for the tfstate in the container.
@AshokKumar-js4st
@AshokKumar-js4st 8 ай бұрын
amazing.. excellent.. superb explanation
@bhavanibattina4864
@bhavanibattina4864 9 ай бұрын
@Travis if we are not providing the working Directory in the pipeline steps how this pipeline knows where is the code?
@MinDTraX
@MinDTraX 7 ай бұрын
did you manage to find the answer?
@MrFallout86
@MrFallout86 2 жыл бұрын
Great video. But how does this approach accommodate different environments? Wouldn't it be better to run the majority of these commands in the release pipeline, so you can distinguish the environment in the release lanes?
@AlexanderBishop-cadent
@AlexanderBishop-cadent 2 ай бұрын
how would this work for deploying to multiple subscriptions, one of each dev, stage prod etc
@rahul128ful
@rahul128ful Жыл бұрын
how did you get the variables you are specifying under variables from line no 11
@cloudhandle
@cloudhandle 8 ай бұрын
So because it needs terraform installer in yml file on top inside stages, you can just put - validate, apply, destroy without preceding with 'terraform' keyword? E.g.: just 'validate' instead of 'terraform validate' cmd? Please correct me if I am wrong.
@_devik
@_devik Жыл бұрын
in the gitignore you have the .tfvars, yet the file is and needs to be present in the repo?
@andyhuynh2450
@andyhuynh2450 Жыл бұрын
Hi Travis. If I ran terraform in visual code ebrything seems to work. When I push this to devops and ran the pipeline , it error on unit stating tfstate rg , storage and tfstae already existed. How do I run pipeline without getting errors saying the tfstae has change?
@akhilendragautam5921
@akhilendragautam5921 26 күн бұрын
Nice explanation
@rest822
@rest822 6 ай бұрын
Excellent video. Question: How do we move the lock.hcl file back to our ADO repository ?
@SeChelios
@SeChelios Жыл бұрын
Hi, how did you use variables in backend block in terraform configuration? Terraform doesn't allow to do that
@oldmonk5600
@oldmonk5600 Жыл бұрын
You explained very well each steps of YAML pipeline , can you please make video for multistage deployment as well. Appreciate your help and couldn't find YAML file which you provided gitrepo
@cloudhandle
@cloudhandle 9 ай бұрын
Clear cut what was needed.
@MrMitsumatsu
@MrMitsumatsu 2 жыл бұрын
You rock, keep it coming
@Ciraltos
@Ciraltos 2 жыл бұрын
Thanks!
@madhurshukla23jan
@madhurshukla23jan 11 ай бұрын
great explanation, though I was not able to find pipelines in git repo only tf files are stored.
@Carlesgl81
@Carlesgl81 2 жыл бұрын
Great Help Travis!
@marsamuk
@marsamuk Жыл бұрын
Hi Travis. What’ll happen if you enable trigger to the main branch and make a code change and commit. Will it re-create the same resources? From what I understand it won’t because the current resources will exist in tfstate. Trying to understand how this will work in a prod environment when code changes should deploy new infra. Thanks
@ThomasJSweet
@ThomasJSweet Жыл бұрын
Anyone know a workaround for: Failed to get existing workspaces: containers.Client#ListBlobs: Failure responding to request: StatusCode=403. The App Registration has "owner" and Storage Account Blob owner. Thx?
@ThomasJSweet
@ThomasJSweet Жыл бұрын
I found it, it is due to restricting the storage account to a specific IP. It seems that for this to work, the storage account must be "accessible from all networks", even if you have "allow azure services on the trusted services list to access this storage account" selected.
@jordanfox470
@jordanfox470 2 жыл бұрын
@travis is there a way to create the back end storage in the project itself or is that just not best practice?
@Ciraltos
@Ciraltos 2 жыл бұрын
The backend storage has to be available for the initialization. It has to be in place before apply command runs.
@adamzachary6947
@adamzachary6947 2 жыл бұрын
Great! but I have a quick question. What if I need to add an environment between the two stages?? For manual approval. Say I have created the same, two stages, first one to validate and plan. and if plan is completed successfully it moves to the second stage, which is apply stage. But before I run the apply I want to make sure that someone goes manually and approve the pipeline to apply the changes ....
@bibinvarughese9132
@bibinvarughese9132 Жыл бұрын
There is a task called "manualvalidation". You can add this in between the "stages" and the recipients can do a validation to decide whether to approve or not.
@satishraju5188
@satishraju5188 Жыл бұрын
Hi @Travis Is there a way we can avoid initializing terraform multiple times in the pipeline ?? Thanks, Satish
@scerons
@scerons 9 ай бұрын
Hi! I believe you can use self-hosted agents when running your pipeline and that would allow you to preserve data and pass it on from one stage to the next. Haven't really tried it myself though
@reya4182
@reya4182 9 ай бұрын
@scerons that makes sense will try once...thank you
@kbrajeshwaran
@kbrajeshwaran 2 жыл бұрын
Much appreciated your efforts.Need to understand how to deploy azure resources like vent and subnet and vm & SQL paas and kV for different subscription via azure pipeline also queries on branch pipeline for the respective environment.
@omarrob6894
@omarrob6894 Жыл бұрын
Thanks for your wonderful videos. just wondering if you have done any CI/CD videos?
@LokendraSinghmourya1983
@LokendraSinghmourya1983 Жыл бұрын
Its detailed . thank for help ,is it possible to share this sample pipeline ?
@saiedbilal4305
@saiedbilal4305 11 ай бұрын
this is just wow !!
@Ciraltos
@Ciraltos 11 ай бұрын
Thanks!
@DavidBenOtto
@DavidBenOtto Жыл бұрын
Great video. I would like to know how to import existing resources in my pipelines.
@gally.streetphotography
@gally.streetphotography Жыл бұрын
Great video
@andrehahnemarsaioli7730
@andrehahnemarsaioli7730 2 жыл бұрын
Awesome! thanks
@gerardr727
@gerardr727 Жыл бұрын
Great job! Super easy to understand and follow, thank you very much. Being said that, I have a question: How do you manage the storage for multiple deployments? Do you use the same? Let's imagine that we have a pipeline to deploy RG1 for project1. Another pipeline to deploy RG2 for project2. All this TF status can be/should be stored in the same blob container? How I can use a TF destroy only for RG1 and keep RG2 available? Thanks in advance
@socisback
@socisback Жыл бұрын
This only works if first manually create the resource group, storage account, and container in Azure. If fails otherwise!
@kumarnandi3592
@kumarnandi3592 Жыл бұрын
thankyou sir ❤
@lmb25315
@lmb25315 2 жыл бұрын
Have always loved your videos my man. First time posting a question here. What is a solution in Azure or Windows to auto-deploy and Azure File Share to Windows VMs as a drive letter? I have tried using the PowerShell connect script to run on startup via GPO (for servers or users in OUs) but have been unsuccessful. Thanks!
@tambahako628
@tambahako628 Жыл бұрын
Nice!
@TulsiKhan-p4c
@TulsiKhan-p4c 6 ай бұрын
Jai ho
@rajeshchamanthula3201
@rajeshchamanthula3201 11 ай бұрын
╷ │ Error: No configuration files │ │ Apply requires configuration to be present. Applying without a │ configuration would mark everything for destruction, which is normally not │ what is desired. If you would like to destroy everything, run 'terraform │ destroy' instead. ╵ ##[error]Terraform command 'apply' failed with exit code '1'. ##[error]╷ │ Error: No configuration files │ │ Apply requires configuration to be present. Applying without a │ configuration would mark everything for destruction, which is normally not │ what is desired. If you would like to destroy everything, run 'terraform │ destroy' instead.
@MinDTraX
@MinDTraX 7 ай бұрын
I have the same issue, did you manage to resolve it?
@anilrepala505
@anilrepala505 Жыл бұрын
Destroy pipeline is not deleting the resources 😑
@arjanpetersen
@arjanpetersen Жыл бұрын
Well
@SameedAhmed
@SameedAhmed 2 жыл бұрын
Thanks
@ozshiffytech5389
@ozshiffytech5389 2 жыл бұрын
The video is blurry
@ermiaskeno1986
@ermiaskeno1986 6 ай бұрын
thank you for you best content, I am getting error running azure devops pipeline , its not initializing terraform , I appreciate your suggestion, /opt/hostedtoolcache/terraform/0.14.11/x64/terraform init -backend-config=storage_account_name=xxx -backend-config=container_name=xxx -backend-config=key=xxx -backend-config=resource_group_name=xxx -backend-config=arm_subscription_id=xxx -backend-config=arm_tenant_id=*** -backend-config=arm_client_id=*** -backend-config=arm_client_secret=*** ##[error]Error: There was an error when attempting to execute the process '/opt/hostedtoolcache/terraform/0.14.11/x64/terraform'. This may indicate the process failed to start. Error: spawn /opt/hostedtoolcache/terraform/1.0.0/x64/terraform ENOENT Finishing: terraform init
@sebaas97z
@sebaas97z 5 ай бұрын
Hi, check the working directory! i faced the same issue
Modules and Outputs with Terraform and Azure
28:02
Travis Roberts
Рет қаралды 34 М.
Every team from the Bracket Buster! Who ya got? 😏
0:53
FailArmy Shorts
Рет қаралды 13 МЛН
Using For_Each in a Terraform Module with Azure VNets and Bastion Host
15:06
8 Terraform Best Practices that will improve your TF workflow immediately
8:57
Azure DevOps Tutorial for Beginners | CI/CD with Azure Pipelines
36:29
TechWorld with Nana
Рет қаралды 1,4 МЛН
Deploy resources on AWS using Azure DevOps
7:28
geralexgr
Рет қаралды 6 М.
Self-Hosted Agents in Azure DevOps: A Step-by-Step Deployment Guide
12:22
EP12: Learn Azure DevOps Pipelines with Terraform Builds
38:25
Someone Elses Cloud
Рет қаралды 5 М.
Using Terraform with Azure
1:14:43
HashiCorp
Рет қаралды 3,3 М.