CI/CD | Continuous Integration | Delivery | Deployment

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] welcome back aliens my name is 720 and in this video we'll talk about C I / CD now this concept is very hot in the industry Elton is talking about this concept now especially if you are working on day offs it's amazing but what is it and why it's amazing now before understanding this concept let's understand why it came so let's go back few years and let's talk about waterfall model so what we do is let's say if you have a client and if your client says hey we want we want you to build a project now in this case it will take some time for you to make a project right maybe six months maybe one year maybe five years now in this case you cannot simply ask your client hey a client just wait for one year we will give the project because things are changing very fast now right so your client cannot wait for it because client have client requirement might change or maybe there is some miscommunication so client is asking for something else and you are giving something else so you need that continuous feedback right and that's why we are using a different approach nowadays which is a child so in a child what you have what you are responsible is to give your client as a ready product in every two to three weeks okay not the entire product but then the parts of it so let's say if you have 10 features you can give one feature in two weeks or three weeks now that will be amazing from a client side because you will get a continuous feedback okay that's one thing so we have one thing which is agile the second thing here is now let's say Milan you're working on a project and in that project you have certain modules and you have multiple developers to work on it so what you have done done is they have given one module to each developer now the thing is when you as a software developer work on a project let's say you are using Java here so you will write a Java code and you are also responsible to test it and for testing you will be using j-unit right now when you test your class it is perfectly working so your unit testing is working perfectly but then we are we miss one thing in testing we have one more thing which is called as integration testing because all this developers they work they will work together right and when they work together they have to integrate it somewhere so that your operation thinks because we have development teams we have operation teams and we have a QA team now your operation teams are responsible to you know take that project and deploy it on server but then you have missed that intention testing right who is is possible to do that so what we have is we have this automation test things so so let's say this is Friday evening and you have decided okay so we'll work for one week and every Friday we will deploy the project we will integrate the project and then there will be an automation test what if something goes wrong in the automation test what if there's up there are bugs so the problem is this is fighting evening you don't you want to spend your weekends in the office so what what you will do is you will solve that problem so that's one problem right you cannot you you don't have to wait for the entire week to submit your project because that's happens in the industry to solve that problem we have a concept of C I now what CI stands for is continuous integration as name suggests what if you integrate your modules it's very often let's say in a day you will be doing maybe five to six commits right so every time you make a change every time you think it's working for you in your new test just submit it on or just committed on the repository the advantage would be let's say if you have five developers all these people will be coming in to Sawa and every time you commit there will be an automation test that means write commit and test right so at the end or after every commit we'll be having a ready project which is tested and you have the confidence that it is working because this is just happening by the scene right so that's the beauty of CI CI simply means issues of committing at the end of the day or maybe after a week just a moment you have done the code the moment you do you think it's working for you in a unit test committed so that it will be test it will be the automation test done on the server after this we also have a concept of continuous delivery now in fact we have city we have two parts and city we have continuous delivery and content deployment now people often mix those two terms they are not safe they are different okay so it's important to understand the difference between delivery and deployment when you say conduce integration you have the project you have you are committing very often right now it is possible that your commit your the entire depository after the committing is ready for delivery maybe also if you're applying say is hey we want to see what's our progress you can simply show them the working model not on the production server of course you will be showing that on a box server so you will be getting a production like server a fake server and you will run the current project on that server right so it will give you the confidence that things are working and it will also make your client happy plus you can also check for the performance of the system so when you shift your project from this thing to your production environment how it will so you can mimic those things right so that's a delivery ok contains delivery so of course you will not be deploying it on the person server but you are keeping it ready for the deployment so at any points you can you can think ok let's deploy it and it should be available for that so integration is you're pushing the code delivery is making it available for deployment now what about contains deployment now contains deployment is bits Kelly because event is the moment you commit your code after the order automation test your code will be tagged deployed on the production server ok if there's something wrong you're gone but then it doesn't happen very often right so you had a code you commit it and be first you test it then there's automation test and then it goes to the production server that is continuously employment now not every company do this ok because every company they have different requirements they have different approach some companies only go for CI they don't they don't even go for CD cuz some company go for delivery and some company go for continued deployment the moment you commit it will keep getting deployed and I mean it will be tested and then it will be deployed example people who are working with micro services they believe in the country's deployment and there are some becomes it's like Facebook they are doing this right decode commit and it will be deployed on the on the server so that CI CD now is it that easy to implement the answer is no because initially you have to you know you have to make your team ready for this second you have to get a pipeline so that it will everything will happen in this in the sequence so because you will be committing it you will be testing it and then it will be going for deployment so that's a code apply pipeline which you build not a different tools available for this we can use Jenkins which is one of the best tool available or if you are using AWS in fact in the description area you will find a video of mine which explains on this concept okay now the main focus was not to explain the ICD but I was trying to explain it plus but you can match it up right how exactly things happens in the real world so that's what you see I see D s so in case if you are going for a day ops job this is very important for you so if you have any more questions let me know in the comment section that's it everyone thanks for watching and if you liked it click on like button and do subscribe for other videos
Info
Channel: Telusko
Views: 213,332
Rating: undefined out of 5
Keywords: telusko, navin, reddy, tutorial, java, continuous, integration, deployment, delivery, ci, cd, what, how, why, need, important, devops, develop, know, market, importance, waterfall, agile, model, methodology, disadvantage, junit, test, testing, automation, commit, code, mock, server, production, jenkins
Id: HjXTSbXG1k8
Channel Id: undefined
Length: 7min 35sec (455 seconds)
Published: Sat Jun 09 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.