GitHub Copilot Tutorial | How useful is it for Cloud and DevOps?
Key Takeaways
This video tutorial covers the use of GitHub Copilot, an AI assistant for coding, in writing infrastructure as code for Cloud and DevOps, using tools like Pulumi, Visual Studio Code, and Terraform.
Full Transcript
let's talk about GitHub co-pilot is it really this super revolutionary tool that makes you work as a software engineer or Cloud devops engineer and so on way easier way faster or in some cases even replace the Need For Engineers is it really as good and what are some of the common use cases of using GitHub copilot and in this case we're going to be specifically focused on the work of cloud and devops engineers and even compare that to GitHub copilot's value and usage for software development so let's get started first of all what is GitHub copilot well in very simple words it's an AI assistant for coding that means giup copilot is used in a code editor or in an integrated development environment like Visual Studio code intellig so any kind of IDs where you integrate GitHub copilot and it helps you write the code within the editor so compared to cat GPT for example we have cgp in a browser so you have to switch from your code Editor to the browser to type in your request and it gives you some code with explanations in this case you have that AI tool integrated within the editor so you don't have to leave your Editor to get the replies and get the code suggestions and so on and the way GitHub copilot works is that it has way more context than ched GPT for example that means that it actually takes your code your existing code whatever you have written and whatever you're writing as a context to answer your questions and also very important to know that the context that gets uploaded and sent to GitHub co-pilot is not your entire workspace because you may have hundreds of code files that may not be relevant for whatever you're asking so usually whatever you have open in your editor currently so you may have 5 10 20 files that you're working on currently in the editor plus you have the file that is currently open where you're working inside so it takes all of that as a context assuming these files and the code inside are relevant for your current question because that's exactly what you're working on right now and this edit context is actually a huge Advantage because you don't need to provide the entire context to co-pilot you can just say give me whatever for this high Ed code or give me whatever for my entire workspace or code base so how does GitHub copilot work behind the scenes GitHub copilot actually uses an open AI large language model behind the scenes and it's been trained with billions of lines of code and text like code explanations that are publicly available so based on that large amount of data it can give you suggestions based on the best practices and so on in addition to just replying to your request when you explicitly ask something from GitHub copilot it actually gives you code suggestions itself so when you start typing out your code it actually gives you kind of auto complete Suggestions by trying to predict what you're going to write and again as I said because it has all the context if you already have an project that you are working on so you're not just starting from the blank page and the first file it actually takes whatever you have open as a context and based on that it will try to guess okay this is what you're trying to do next and it will give you code suggestions based on that it will even give you comment suggestions with the entire block of code for example if you're creating is2 instances and you have that configuration inside it may suggest you to create Security Group with firewall configuration for those E2 instances for example if it detects that you don't have Security Group configuration yet so it tries to guiz and give you suggestions what you should write in the code now and this is a very important part there is one small problem with GitHub copilot which we're going to see later and that is that it's not up toate for coding or programming specifically GitHub copilot actually is way more helpful than for writing infrastructure as code however as I said there are still some use cases and some advantages of using GitHub copilot even for infrastructure as code scenarios and we're going to see both sides in the demo so we're going to see the usage how it helps and how it may help in writing code but also limitations of GitHub copilot so we're going to see kind of both sides in the demo so let's go directly to the demo and let's see how it all works and in the demo we're going to be using GitHub co-pilot obviously with Visual Studio code and for the infrastructure as code tool we're going to be using pumi with the Python language now if you're new to pumi or python I actually have very detailed tutorial on both of them separately so you can watch them first and then come back to this one so as a first step of course let's get our prerequisites right and let's do all the setup that we need in order to have everything installed everything up and running and ready for our demo projects and this is everything that we need for our demos first of all we need our AWS account I'm logged in as an admin user and I'm going to be creating infrastructure in in this specific region you can choose whatever region you want so we need AWS Cloud platform because we're going to be creating infrastructure here with our infrastructure as code project we also need pumi installed locally because we're going to be executing a pumi project with pomi commands and you can very easily install or download it by following their installation guide for whatever operating system you have I have mechos and I'm actually going to use the package manager to install it you can also downlo download a binary and just install it with a graphical user interface so whatever operating system you have whatever installation option you want you can use it to have pumi installed locally so I don't have pumi yet so I'm going to install it using Brew package manager and installation was successful let's validate it by executing a pumi command so let's do pumi version and this is the version that I have just installed as I mentioned with palumi you can actually choose whatever programming language you want to work with and in our case we're going to go with python and again if you're new to either plumi or python I have separate extensive videos on both topics so you can go ahead and watch those separately if you want to learn them properly first so since we're going to be using python for palumi we also need to have python installed locally and actually have python version 3 already available if you don't have it again just a simple install Python 3 search will give you the download guide on the official documentation for whatever operating system you have so you can download it as a binary and just install it easily like this we're also going to need Visual Studio code that's where we're going to be writing our code and this is where we're going to integrate GitHub co-pilot to actually help us in writing the code in our editor just search search for it here's a download guide and again choose a download for your operating system and install it locally and the final thing that we're going to need is of course the GitHub co-pilot itself so the way we're going to get this is first we're going to need a GitHub account so if you don't have one just sign up in GitHub it's free it's easy so just register and I'm actually going to look for GitHub co-pilot here so we're going to get to the link directly there you go and if I click on get started with co-pilot you see different payment options so of course as an individual engineer you don't need a business or Enterprise license so we can go for the individual one and this one actually has a 30-day free trial which is great because it gives you enough time to actually play around with the tool and decide if it's actually worth the investment if it really makes you productive in your work or not so that means you can follow this tutorial along completely free using a free trial so I'm going to choose this one as well and now we're going to sign into to our GitHub account I'm going to authenticate and there you go and here's an interesting note that GitHub copilot is actually completely free so you don't need to even pay the individual license if you are an open source maintainer teacher a student which they check on a monthly basis so if you are one of those you can actually use GitHub pilot for free so I'm going to click on get access to GitHub pilot and we're going to select a couple of options here regarding the policies so the first configuration option lets you control whether GitHub co-pilot can generate code suggestions that match code found in public repositories on GitHub so private repositories on GitHub or any other repositories outside of GitHub will not be considered here and if you allow this when copilot gives that code snippet that matches some code on the public repository on GitHub it will also provide you with details about the matching code like any license identified for the repository as well as the source for the code and so on in our case actually let's allow this one and the second option allows you to decide whether the prompts that you give GitHub copilot to generate code for you plus the context that GitHub copilot takes to reply to your question questions whether you want all of that to be collected and retained by GitHub and processed further as well as shared with Microsoft because as I mentioned the context is basically what gets sent up to GitHub server so that co-pilot can use that reach context to give you a better more precise repli and with this option you can decide whether GitHub can retain that context that was uploaded and process it to improve the co-pilot even more now this can be an important security consideration especially if you're developing an application which is private for your organization or maybe you have developers that are hardcoding some secret information or sensitive information in the code or you are basically testing out and adding the API keys or whatever sensitive information directly into the code maybe for local testing not even for pushing it to the remote repository so that may be send as part of the code Snippets So based on that you can decide whether you want to reject and make sure GitHub doesn't keep any of this data and doesn't process it or you can decide to allow it in my case I'm going to allow it because this is just a test project and all the codes inside can be sent and retained by GitHub save and complete setup and we have this confetti flowing down because we have successfully activated GitHub co-pilot how however we need to use GitHub co-pilot in our code editor because the co-pilot is going to help us write code right so we need it directly integrated in our IDE in this case Visual Studio code and we have these options that we can choose from so I'm going to choose this one and it jumps into the stepbystep guide of how to integrate it in Visual Studio code so all we need from this documentation is this section here so we have all the prerequisites everything is activated and in place so right now all it's left to do is to go to visual studio code find the GitHub compilot extension install it and we're going to be good to go so basically these six steps is all we need to activate GitHub copilot in Visual Studio code so I'm going to go to the extensions and look for GitHub co-pilot and there you go this is the official one from GitHub itself so let's install it we need to sign in GitHub co-pilot as is also mentioned in the documentation so let's do that we're going to authorize Visual Studio code to access our co-pilot and that's it our GitHub co-pilot extension is installed so now when we start writing our infrastructure as code for provisioning ad infrastructure we're going to have cop directly integrated into our editor so we can use it for our demos awesome so everything is set up for us to start the demo so as a first step let's create a new pumi project using pumi CLI so to initialize a new project in the co-pilot pumi folder we're going to execute pumi new and we're going to give pumi kind of a template or what we are trying to create here as we learned pumi supports multi multiple programming languages in our case we want to create a python project which is going to build infrastructure on AWS so the template name will be AWS Python and you can actually look up all the pumi templates when you're running pomi new Command right here in the GitHub repository so the one we're using is AWS python so let's go ahead and execute with this and this is actually a very convenient way to provision everything that pomi needs for the configuration instead of writing everything from scratch so the first thing we're going to do is an exess token from pumi so of course we need to authenticate that this is our palumi account that we're using and palumi also has a really nice UI where you can track all your projects and infrastructure configurations that you create that looks like this with the dashboard and project and STS and so on and in the personal exess tokens we're going to create a new token and we're going to call these also awf Python and we just provided here so now we're going to configure the project details let's call the project Co pilot palumi take the default project description stack name we can leave it at Dev and AWS region to deploy into I'm going to choose EU West 2 which is London region you can choose whatever is closest to you and as you see pumi is actually doing all the main configuration behind the scenes and let's see what we get as a result awesome so the project was initialized and because this is a python project it actually created a python virtual environment where all our libraries will be downloaded for the python project it also created this boilerplate python code for palumi it gave us the configuration for the dev stack or development environment basically and some other stuff plus because we specified that we want to provision infrastructure on the AWS Cloud platform it actually automatically included the plumi AWS Library which we're going to use to create different resources on AWS which we're using right here so all this boilerplate code basically that we need for the project was provisioned automatically which is pretty convenient and as I said the requirements.txt which is like a dependencies file for a python project so all of that was downloaded automatically cool so now we want to finally see GitHub copilot in action right so how do we use GitHub copilot well first of all if we create a new file in our project and let's call it test. python doesn't matter you see that immediately the first line is a prompt to ask GitHub compiler to help you write code and using this shortcut which is command shift I on Mech or whatever shortcut you get displayed in another operating system you can use this chat to ask GitHub copilot for something or you can use it inline using command I like this or if you don't like shortcuts you can just open GitHub copilot chat right here so you always have this on the left side to fix your code issues or explain the code that was written Maybe by other developer and so on so let's actually use GitHub copilot for some really simple examples let's remove this and this is a boiler plate that P generated which is just creating an est3 bucket so let's ask GitHub co-pilot to give us code that generates 10 buckets in a loop for example create 10 as3 buckets with unique names let's see what we get and it actually generated this code in a for Loop which is a python syntax to generate those buckets in in a loop and each one will get some unique name and let's say we want to replace this whole code block with this one you can just click here and here we have a new code block now let's say when you're coding and writing your infrastructure configuration file maybe you don't always want to go to the chat generate something copy that code paste it in a more convenient way to work in your code editor while you're writing code is actually to use inline GitHub copilot suggestions right and the most convenient option is actually code suggestions so if I clean all this up I can write a comment here just a simple comment that says create 10 S3 buckets with unique names and if I hit enter you see that it auto suggests the code and again which is pretty much same as here or similar and now let's say we want to keep writing configuration for other components of infrastructure let's say create five ec2 instances for my web application and we have the whole suggestion for that configuration sometimes you get multiple suggestions in this case both of them look pretty similar just a small difference and whichever one you like you click on accept right here or you can just hit on the tab and it fills in the entire configuration and let's say right here we want to use another instance type instead of T2 micro use T2 small instance type and gives a new one here we have an Ami which is usually an ID that we need to go to AWS and look it up to define a value here so here again let's ask get up co-pilot to actually use an auntu operating system instead of the Amazon Linux Ami and we actually have two suggestions and if I switch the second one it says use Ubuntu 18.04 and if I delete that it will give me a suggestion for the Ubuntu Ami which would be very convenient because I don't have to look up Ami in the AWS console so as you see we can control the flow and what co-pilot suggests us using the comments let's do one more thing which is right here as you see it uses S3 from palumi AWS library but it didn't import ec2 so let's actually ask this to import S3 and ec2 modules from pulumi aw's package and if I delete that we get both and of course you can remove the comments that are kind of cluttering the code and only use them to get suggestions from GitHub copilot so as you see with the simple demonstration the main benefit or the use case of GitHub copilot just like any other AI code assistant is to let you program with a human language or in this case English language and let GTH up copilot give you the actual code for that logic now this may look really cool and it is in most cases however there is a huge drawback of GitHub copilot used in practice for writing infrastructure as code projects and that is that it's outdated so basically the latest state of giup co-pilot code for most of the languages most of the information that it knows about is from September 2021 and that is a pretty old date considering the speed of technological developments every infrastructure as code language or tool develops really fast so you have new libraries improvements every couple of month that are being released so 2021 is actually a very old State and we can even ask co-pilot itself what the last date of its information is as you see this is September 2021 and the information since then has obvious L changed and because of that we're getting this older version of auntu as well as the older Ami image from Amazon right so if I check to versions obviously we have new versions here Ubuntu has released two major versions since then so this Ami will be outdated and of course in our infrastructure we don't want to be provisioning servers with outdated operating system versions and images that will be a very bad practice and I also want to mention one very important distinction between using GitHub copilot for programming as a software developer and using GitHub co-pilot for infrastructure provisioning because programming languages like python Java JavaScript whatever these programming languages are way more established and the functions and libraries and so on they don't change as much and as frequently compared to a relatively new infrastructure as code tools like palumi terraform obviously improvements are made way faster and a lot more is going on in that area and because of that it's way more challenging to use GitHub copilot for infrastructure as code projects because the chances of functions or attributes or libraries being outdated is way higher here so that is a very important distinction when analyzing GitHub co-pilot's value in each category and that means if you are devops engineer or Cloud engineer that is automating stuff you want to use GitHub cor pilot it definitely helps with spitting up the code however overall you will probably have to double check and reference the upto-date documentation for each configuration option so that is a huge disadvantage of GitHub copilot right now which is that it's outdated so now considering this limitation of GitHub co-pilot let's still see in what other use cases we can use GitHub compil to actually get some value out of it so I'm going to clean this up and let's do one more thing here so what I'm going to do is I'm going to create a temporary file here which is going to include terraform code which creates a VPC and eks cluster and let's say in our scenario we want to migrate a project from terraform to pumi we already have a project that Provisions configures infrastructure that is written in terraform but we want to migrate it to pumi so we can ask GitHub copilot to actually help us do the translation from terraform to pumi code so this is a simple script that basically creates a VPC for the cluster by defining the private subnet public subnet and so on and then it creates an eks module in that VPC with some simple configuration such as one node group with this instance type and so on so let's ask our GitHub co-pilot first of all to explain whatever is written right here so let's say we don't know terraform as well we are trying to migrate a project that somebody else wrote in the team to palomi so we want to ask GitHub copilot to explain that code first so we know exactly what it's doing and GitHub pilot we can use de and one of the commands basically that references the workspace that means it takes our entire workspace as a context for giving us the answer so we're going to ask it to explain the highlighted terraform code in detail and it gave us a breakdown of what we're provisioning we need to set this varable value somewhere they were retrieving the as's from the current region that in the eks configuration we're enabling public access to the cluster which is right here as well as disabling of cluster and node security groups so it will be using the default ones and again you can ask it to go into details and explain each and every attribute so you can understand the code which I believe is one of the really good use cases of co-pilot because very often you're going to be working with a code that looks very complex that has become complex over time but because you are seeing it for the first time and you didn't write it yourself it may be a huge help if you let G UPC pilot basically analyze the whole thing and tell you what's happening there so now we're going to ask co-pilot to translate this entire terraform code into pumi python code with the exact same configuration for creating VPC and eks cluster and let's see what we get and another very important note is that if you are following this demo and you ask co-pilot the same thing you will most probably get something completely different you will even get different answers every time you ask the same question so it basically comes up with a new answer on each question means you can't expect that kind of consistency which has both advantages and disadvantages obviously but let's see our pumi code and then we also have some explanation here that says it does the same thing as terraform code we provided we have the same instance type the capacities of the node somehow it took the cus version 1.21 because that's the last version that co-pilot actually knows of it doesn't know that kis cluster version is I believe at this point at 1.29 already so now we can actually move this code into the python file and also notice the follow-up question that it suggests itself so we notice that we're not creating security groups for VPC and E cluster and it suggests us to addit configuration so if I click on this it will actually give us the configuration for that as well that we can and add additionally in our configuration so let's see what it gave us it's creating a new Security Group in the VPC which is always a good practice to create new components because when you tear down your infrastructure using your infrastructure as code project you can cleanly delete everything basically and then it adds a rule to the security group it basically opens a incoming Port 80 and it references that Security Group in the cluster and it gives us uses another followup which is for configuring load balancers in the E cluster so basically it will give you more and more suggestions to try to be helpful but as I said you have to be aware that every configuration that you get here generated by co-pilot you will have to validate because as I said the huge drawback is that it's outdated and we obviously don't want to use outdated configuration plus when we execute it it may not actually work work because some attributes some libraries will be outdated Etc and one obvious one is the kubernetes version that it's using right here kubernetes 1.21 is probably not even supported on AKs anymore so very important to be aware of this and that also means that if you are a non-experienced engineer cloud or devops engineer co-pilot may help you in explaining some stuff and giving you a boiler plate but you will have to still do the work of understanding what the configuration does and actually going and validating against the official documentation to make sure that it's working another example is that GitHub copilot is actually using the eks module from the pumi AWS package however pumi has actually a new package called pumi EAS which is actually a preferred and also easier way of provisioning a cluster so GitHub copilot is not using this one so again as I said you need to be aware and you need to actually know the tool itself because GitHub copilot is not a replacement of your knowledge it's literally just to help you speed up your working process while you have all the knowledge and that's why it's also called co-pilot and not a pilot because you still are the pilot and you have to have the knowledge and know exactly what you're trying to achieve and use G up copilot in very specific area so it's not going to replace lot of your work it may just speed up some of the processes and I can also demonstrate that actually if we execute this code without making any changes and we're going to execute Puli up so as I explain in my separate pulumi tutorial pumi actually uses the AWS credential configured by default so either if you do AWS configure command or if you export the AWS environment variable for exess key and secret key I already have my AWS credentials configured here so that's what pumi will actually use when I execute POI up so let's see if this configuration is even working and if it will succeed to provision the cluster with this configuration so we got our first error now for working with pumi specifically there is actually another AI tool that will be more helpful in this this case then co-pilot which is palumi AI itself so palumi has this AI tool that you can use basically for the same purpose of asking it questions to give you a configuration a palumi configuration for a specific infrastructure provisioning need which is also very convenient because you don't have to dig in the official documentation to put together a more complex configuration and po UI actually has a more upto-date state of information then GitHub copilot I believe the latest state of pumi AI is the information from end of 2023 so it's definitely more up to dat so let's actually ask pomi AI to create eks cluster with let's do two node groups one node group with 3 T2 micro type second node group with T2 small type let's say instances and let's see what we get here and this actually looks better because as I mentioned palumi eks is a new or relatively new library that has better cluster defaults when creating any case cluster and we got our desired configuration code for Python language specifically with additional explanations so here we have three nodes of T2 micro it also just automatically set the minimum and maximum size of the instance within the node group for autoscaling basically and here it gave us two T2 small instances so as I said pumi AI is actually very good if you're working with pumi specifically to give you proper configuration very fast which is more up to date than co-pilot and here we got an error that VAR is not defined which is true because this was actually left over from terraform so let's actually ask co-pilot to give us proper tags like this one let's remove this so we can control these either with comment or we can just start typing and it tries to fill in the information so I'm going to remove this and there you go also you see that we have a couple of other issues here that it's just creating one subnet instead of multiple ones so again comparing these two configurations you see that this is actually pretty up to dat and I would probably have to rewrite the entire configuration to get it to work while one and also to be more upto-date like using the more upto-date library that configures all the defaults in the background automatically for me instead of using this configuration especially if I'm writing an infrastructure from scratch I would either reference an official documentation or for pumi specifically get some help from pumi AI as well and there is one last thing that I want to show you that you can do with GitHub copilot and visual studio code which is another type of use case for AI code assistants which is a voice assistant we can speak our Command into the editor and co-pilot will give us reply based on that and this probably is not the most common use case but I think it's a really cool one I can't imagine that you would use this at work if you're sitting with a bunch of other people just talking to your laptop and giving it commands so maybe use case for a home office however if you have a very Comm complex scenario or logic that you want to describe to your GitHub copilot and you don't want to type it out and you kind of want to explain it in a speech then this could be a really cool feature so let's try this out and I want to mentioned here that GitHub actually did create an extension for co-pilot using a voice command but they discontinued it recently so GitHub itself doesn't have that functionality however we can use any an extension called Visual Studio code speech this is the one from Microsoft so this was installed and now if I go back to the chat you will see this audio icon appeared or a microphone icon appeared inside the co-pilot chat so now I can use this to actually dictate my command to co-pilot so let's try this out for our last demo and I'm going to ask you to create an e cluster again with three node groups and I'm going to explain the configuration for each node group and let's see what we get create an eks cluster with three node groups the first node group should have two desired instances with T2 micro type and the second node group should have three instances with t small instance type the third node group should have four desired instances with t to medium instance type so let's see what we got we got our cluster again with an older version and we get three node group configurations with the desired attributes that I asked for and now I'm going to ask it the suggestion that I get here which is configure autoscaling for all three e node groups and again as I said the limitation of co-pilot of not having upto-date codee documentation is a big minus here however if you are an already experienced engineer there are definitely some use cases where you can use GitHub copilot to help you in writing your infrastructure code and finally to make sure that we at least have some configuration that's working I'm going to use the code from pumi Ai and as you see we don't have to create VPC or subnets here because this new pum e Library actually has the default configurations for the eeks that it creates automatically in the background so we could create a cluster without our own VPC configuration just to get a cluster up and running faster and let's save this and I will execute the code with pull me up and obviously we get an error because P case was not installed and there is also this feature in GitHub copilot that tells you or explains to you the output in the terminal so if I click on this it actually will tell me why this error happened and here is giving me an output to install plumi and this is not using the peep 3 the latest version again bit outdated so to install um pumi eks library in our virtual environment of course we're going to activate the virtual environment first and here we're going to use pep three and not peep to install pul case Library let's do that and run pumi up again so after executing pull me up command you see that our stack was created and then all the resources inside the stack like cluster resources behind the scenes like the cluster and node groups and as I said these pomi actually in the background creates all the necessary roles and permissions for the cluster as well as security groups and VPC Etc so we don't need to specify those here are our note groups both of them with T2 micro and T2 small and pumi doesn't execute or provision everything automatically instead it gives us a preview of what will get created which resources so you see this breakdown of infrastructure resources that will be created even though we have just defined the high level components so that's a good overview to have of what's going to happen on our AWS platform and also in case the configuration is wrong or some attributes are not defined properly of course it's going to give you an error instead of this successful preview so in our case we can either confirm and we can say yes please go ahead and create all this stuff listed in the preview or we can say no we just wanted to sit the preview so we don't want to actually provision anything on the infrastructure so I'm going to cancel it because we just confirmed that our configuration worked and this was our GitHub copilot d with palumi I can understand that it can be a little bit disappointing When You're Expecting this super powerful awesome AI assistant that's going to change your life as an engineer which in our case as you saw is not the case again specifically for tools that are being developed and improved very quickly so a state two or three years ago is already going to be super out of date but I hope that I was still able to give you some insight of the usability and value of GitHub co-pilots as well as kind of compare it to usage in different engineering roles and kind of give you an overview of its features that g copilot offers that you can use in your editor please let me know if you have worked with getup copilot or any other AI assistant tool what is your experience with it and have you been able to extract a real value out of using it or generally which AI tools are you using using in your projects please share it in the comments for me but also for other viewers because I'm sure that a lot of people will be interested to see various use cases from other Engineers as well and with that thank you for watching and see you in the next video
Original Description
Does GitHub Copilot make you faster as a Cloud or DevOps engineer? The what, why and how of GitHub Copilot - Writing Infrastructure as Code at 10x speed with GitHub Copilot
🚀 Start a career in DevOps and Cloud: https://bit.ly/3wYsrHU
▬▬▬▬▬▬ In this full GitHub Copilot Tutorial ✅ ▬▬▬▬▬▬
► What is GitHub Copilot and how it works
► How to use GitHub Copilot: Chat, Comments, Code Suggestions, VS Code Speech
► Does it make you more productive as a Cloud or DevOps engineer?
► GitHub Copilot Demos
► GitHub Copilot for Programming vs Infrastructure as Code
#githubcopilot #github #techworldwithnana
🙌 Thank you Pulumi for sponsoring this video
► For more information on Pulumi and Pulumi AI: https://www.pulumi.com/?utm_source=Nana
▬▬▬▬▬▬ Pre-Requisites ▬▬▬▬▬▬
► Pulumi Tutorial: https://youtu.be/vIjeiDcsR3Q
► Python Tutorial: https://youtu.be/t8pPdKYpowI
► Infrastructure as Code Tutorials: https://www.youtube.com/playlist?list=PLy7NrYWoggjzmPAyfDQgthSgx6VEVlS0-
🔗 Install Pulumi: https://www.pulumi.com/docs/install/
🔗 Install Python: https://www.python.org/downloads/
🔗 GitHub Copilot: https://github.com/features/copilot
▬▬▬▬▬▬ Related Videos ▬▬▬▬▬▬
► ChatGPT Tutorial: https://youtu.be/l-kE11fhfaQ
► Python Automation with ChatGPT: https://youtu.be/w-X_EQ2Xva4
▬▬▬▬▬▬ T I M E S T A M P S ⏰ ▬▬▬▬▬▬
00:00 - Intro and Overview
00:36 - What is GitHub Copilot
01:24 - How GitHub Copilot works (Context)
04:39 - Demo Setup - Install Pre-Requisites
07:35 - Setup GitHub Copilot - GitHub Copilot Configurations
11:28 - Intall GitHub Copilot Extension in VSCode
13:04 - Initialize IaC Project
16:23 - Use Github Copilot Chat
18:09 - Code Suggestions (Code Comments)
21:19 - Limitations of GitHub Copilot
23:02 - Using GitHub Copilot for Programming vs IaC
24:22 - Another Use Case: Translate Terraform to Pulumi Code
32:50 - Fix with Pulumi AI
35:21 - Code Suggestions (Autocompletion)
36:19 - GitHub Copilot Voice (VS Code Speech)
40:55 - Conclusion and W
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from TechWorld with Nana · TechWorld with Nana · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
What is Docker? Docker container concept explained || Docker Tutorial 1
TechWorld with Nana
What is a Docker Container? Docker Demo || Docker Tutorial 2
TechWorld with Nana
How to install docker? Step by Step || Docker Tutorial 3
TechWorld with Nana
8 Basic Docker Commands || Docker Tutorial 4
TechWorld with Nana
Debugging Docker Containers with docker exec and docker logs || Docker Tutorial 5
TechWorld with Nana
Docker vs Virtual Machine | simply explained || Docker Tutorial 6
TechWorld with Nana
Overview of Workflow with Docker - Docker in Practice || Docker Tutorial 7
TechWorld with Nana
Developing with Docker - Docker in Practice || Docker Tutorial 8
TechWorld with Nana
Docker Compose Tutorial - Docker in Practice || Docker Tutorial 9
TechWorld with Nana
Dockerfile Tutorial - Docker in Practice || Docker Tutorial 10
TechWorld with Nana
Private Repository explained | Registry on AWS - Docker in Practice || Docker Tutorial 11
TechWorld with Nana
Docker Volumes explained in 6 minutes
TechWorld with Nana
Deploying the containerized application with Docker Compose || Docker Tutorial 12
TechWorld with Nana
Docker Volumes Demo || Docker Tutorial 13
TechWorld with Nana
Docker vs Kubernetes vs Docker Swarm | Comparison in 5 mins
TechWorld with Nana
What is Kubernetes | Kubernetes explained in 15 mins
TechWorld with Nana
Kubernetes Components explained! Pods, Services, Secrets, ConfigMap | Kubernetes Tutorial 14
TechWorld with Nana
Kubernetes Architecture explained | Kubernetes Tutorial 15
TechWorld with Nana
Benefits of Kubernetes | Scalability, High Availability, Disaster Recovery | Kubernetes Tutorial 16
TechWorld with Nana
Minikube and Kubectl explained | Setup for Beginners | Kubernetes Tutorial 17
TechWorld with Nana
Top 3 programming languages to learn in 2020 | meta analysis
TechWorld with Nana
Kubectl Basic Commands - Create and Debug Pod in a Minikube cluster | Kubernetes Tutorial 18
TechWorld with Nana
Kubernetes YAML File Explained - Deployment and Service | Kubernetes Tutorial 19
TechWorld with Nana
Run Jenkins in Docker Container - Jenkins Pipeline Tutorial for Beginners 1/4
TechWorld with Nana
Create Multibranch Pipeline with Git - Jenkins Pipeline Tutorial for Beginners 2/4
TechWorld with Nana
Jenkinsfile - Jenkins Pipeline Tutorial for Beginners 3/4
TechWorld with Nana
Trigger Jenkins Build automatically - Jenkins Pipeline Tutorial for Beginners 4/4
TechWorld with Nana
Complete Application Deployment using Kubernetes Components | Kubernetes Tutorial 20
TechWorld with Nana
Kubernetes Namespaces Explained in 15 mins | Kubernetes Tutorial 21
TechWorld with Nana
Configure Build Tools in Jenkins and Jenkinsfile | Jenkins Tutorial
TechWorld with Nana
Complete Jenkins Pipeline Tutorial | Jenkinsfile explained
TechWorld with Nana
Kubernetes Ingress Tutorial for Beginners | simply explained | Kubernetes Tutorial 22
TechWorld with Nana
What is Helm in Kubernetes? Helm and Helm Charts explained | Kubernetes Tutorial 23
TechWorld with Nana
How Websites Work | simply explained with examples
TechWorld with Nana
What is JavaScript? | JavaScript Tutorial #1
TechWorld with Nana
What is Ansible | Ansible Playbook explained | Ansible Tutorial for Beginners
TechWorld with Nana
JavaScript Variables & JavaScript Data Types explained | JavaScript Tutorial #2
TechWorld with Nana
How Prometheus Monitoring works | Prometheus Architecture explained
TechWorld with Nana
Where to write JavaScript | Where to execute JavaScript Code | JavaScript Tutorial #3
TechWorld with Nana
JavaScript Operators & JavaScript Conditionals | JavaScript Tutorial #4
TechWorld with Nana
Pods and Containers - Kubernetes Networking | Container Communication inside the Pod
TechWorld with Nana
Kubernetes Volumes explained | Persistent Volume, Persistent Volume Claim & Storage Class
TechWorld with Nana
Kubernetes ConfigMap and Secret as Kubernetes Volumes | Demo
TechWorld with Nana
Pull Image from Private Docker Registry in Kubernetes cluster | Demo
TechWorld with Nana
Kubernetes StatefulSet simply explained | Deployment vs StatefulSet
TechWorld with Nana
Yaml Tutorial | Learn YAML in 18 mins
TechWorld with Nana
Terraform explained in 15 mins | Terraform Tutorial for Beginners
TechWorld with Nana
Setup Prometheus Monitoring on Kubernetes using Helm and Prometheus Operator | Part 1
TechWorld with Nana
Managed Kubernetes Cluster explained | Kubernetes on Cloud (1/2)
TechWorld with Nana
Step by Step Application Deployment on LKE using Helm | Kubernetes on Cloud (2/2)
TechWorld with Nana
Kubernetes Operator simply explained in 10 mins
TechWorld with Nana
What is Infrastructure as Code? Difference of Infrastructure as Code Tools
TechWorld with Nana
AWS EKS - Create Kubernetes cluster on Amazon EKS | the easy way
TechWorld with Nana
Prometheus Monitoring - Steps to monitor third-party apps using Prometheus Exporter | Part 2
TechWorld with Nana
GitHub Actions Tutorial - Basic Concepts and CI/CD Pipeline with Docker
TechWorld with Nana
Docker Tutorial for Beginners [FULL COURSE in 3 Hours]
TechWorld with Nana
Kubernetes Services explained | ClusterIP vs NodePort vs LoadBalancer vs Headless Service
TechWorld with Nana
Kubernetes Tutorial for Beginners [FULL COURSE in 4 Hours]
TechWorld with Nana
Containers on AWS Overview: ECS | EKS | Fargate | ECR
TechWorld with Nana
Kubernetes is dropping Docker support - What does it mean for YOU?
TechWorld with Nana
More on: LLM Foundations
View skill →Related Reads
📰
📰
📰
📰
Debugging Docker Push to OpenShift CRC: Solving the unable to load CA cert Error on macOS.
Medium · DevOps
Day 5 of learning DevOps: Permission
Medium · DevOps
The Anatomy of a Page Load: Where Your 2,705 Milliseconds Actually Go
Medium · JavaScript
Microsoft Azure Fundamentals (AZ-900): What's Actually Tested
Dev.to · NERDEXAM
Chapters (16)
Intro and Overview
0:36
What is GitHub Copilot
1:24
How GitHub Copilot works (Context)
4:39
Demo Setup - Install Pre-Requisites
7:35
Setup GitHub Copilot - GitHub Copilot Configurations
11:28
Intall GitHub Copilot Extension in VSCode
13:04
Initialize IaC Project
16:23
Use Github Copilot Chat
18:09
Code Suggestions (Code Comments)
21:19
Limitations of GitHub Copilot
23:02
Using GitHub Copilot for Programming vs IaC
24:22
Another Use Case: Translate Terraform to Pulumi Code
32:50
Fix with Pulumi AI
35:21
Code Suggestions (Autocompletion)
36:19
GitHub Copilot Voice (VS Code Speech)
40:55
Conclusion and W
🎓
Tutor Explanation
DeepCamp AI