add demo for almajni-rezkalla End-to-End CI/CD (Continuous Deployment) pipeline with Jenkins, ansible, and Kubernetes Minikube - #810
Conversation
Minikube|
I can give you feedback on the demo! :) |
|
I'll give feedback on this demo |
|
I will give you feedback on the demo! :) |
|
ill give feedback here:) |
|
I'll give feedback as well! |
|
I will give feedback to your demo |
|
I will give feedback here |
|
Feedback: Add music credits to the video for the soundtrack at 4:08. Also, the demo was quite fast. Difficult to follow. Of course, time constraints also need to be heeded. I would like to add, like others, that it was unclear on what ngrok is and the role of ansible in your demo. |
|
The demo was interesting and well presented. You tried to cover all the essential DevOps tools in 5 mins (approx.). However, you missed presenting Ansible to that extent in the video, viewer may not even realise you have used Ansible anywhere. That could be made better. |
|
Feedback: The demo was interesting and the presentation was nicely made. I did feel a bit lost though. It was hard to follow along the demo. I would of liked to have it take us from the very start instead of jumping right into the forked repo. And sometimes it went too fast (I think with the way the video was cut?). And I personally would of liked more background information. I do recognise it is hard to give a thorough demo in under five minutes. |
|
I think you have matched all criteria, and your repo looks great! It is an important skill to be able to create nice readmes and the addition of the picture makes the repo and demo much more understandable. Even though you might think it is simple to add a picture, a lot of good developers don't dedicate that level of effort to their readmes. I agree with hittesharma that I didn't fully understand what ansible does. The same goes for ngrok, but when I googled what ngrok is it was clear. I understand that there is a limited time in the demo, but I would love a small explanation of ansibles role in your repo. You could consider adding a small note in your architecture diagram, explaining its role. |
|
I think the screencast looked great also! |
|
The required knowledge and introduction at the beginning of the demo are quite helpful. This demonstration contains a list of tools. It can be the advantage because it covers all the steps from creating a project to deploy it. However, it is hard to discuss all those tools in depth within a limited time of demonstration. Therefore, the demo is too general especially when the author discusses ansible. I suggest the author talks more about the interaction between Jenkins and Kubernetes Minikube. |
FeedbackGood job with your demo! It is a demo that is difficult to do, and it is well motivated why it matters in DevOps. However, I did not always understand everything that was happening in the screencast. I think that it might be that the topic is quite complicated, and that there are a lot of prerequisites needed. I found it hard to understand everything in the illustration of the pipeline, for example when you use different terms like “Pod”. I do not know what that is and it is not being explained so I did not always keep up with the information. I know that the time-limit is short and that you have a lot to cover, but you could at least consider trying to make it a bit easier to follow. My last comment is that I don’t really understand the easter-egg, isn’t it supposed to be something that is hidden from the user? Anyway, nice job! |
|
Hi, @nicolai-h is absent today, but he also gives his feedback on this demo. Here is what we received from him.
|
|
Great demo, you have a perfect mix of explanation through the diagrams in the beginning and hands on demonstration later. It is quite a complicated project for such a short demo, but I think you succeeded in giving a good overview of it all without rushing. |
|
Great job with this demo! You managed to cover a lot of ground with different DevOps tools and it was interesting to see those tools working alongside each other. I liked the graphics in the beginning of the demo and appreciated that you overlayed some graphics/markings on the screencast. My only constructive criticism would be that the topic might be a little too vast to cover in just 5 minutes, which you surely realized too and therefore needed to speed up the video quite a lot to fit within the timeframe. It would have been easier to follow along without constantly pausing and rewinding if you narrowed down the scope a little to allow a slower general flow. |
|
@zen93 @hittesharma @keivanm @juliuscc @ashgreyship @christinasunnegardh @nicolai-h @jrutqvist @valsen Thanks everyone for your constructive feedback! The main concerns seem to be about Ansible and Ngrok. We will try fixing the following
Some of the issues are harder to fix with a reason and a compromise will be doneIssuesRegarding the speed of the demo and the concepts needed as a background, the demo covers a lot of concepts with hands-on demonstration in such a short time. Not all the concepts can be clarified. Only the necessary can be clarified. We try at the beginning to show the bigger picture in order to understand the interactions among the different parts of the demo. As hinted by @nicolai-h, one can pause and rewind the parts that were not understood, which is an advantage of screencasts. CompromisesIn the description of the video, we will add links to
|
Final Submission v1: End-to-End CI/CD (Continuous Deployment) pipeline with Jenkins, ansible, and Kubernetes
MinikubeContributors
Link to the video on Youtube
https://youtu.be/voUTfV1wIgo
Github repo link
https://github.com/demo-cicd-k8s/datetimeserver_demo_cicd_kubernetes
Description
We will create an End-to-End CI/CD pipeline with Continuous Deployment (Zero-Downtime Deployment) using Jenkins, Ansible and Kubernetes
Minikube. The deployed application will be a Java application that shows the current Date and Time together with the current version of the application to show that a new version of the application was deployed with Zero-Down time.To be more concrete, we will create a local cluster consisting of one node in a virtual machine on a macOS laptop using
Minikube. Moreover, we will useKubectlto show debugging information. Then, we will create a pipeline (i.eDeclarativePipeline that has some blocks ofScriptedpipeline) inJenkinsthat is triggered when new code is pushed to Github. This Pipeline will create aDockerimage, and build the app and test it, and if it passes all the tests, it will continue to deploy it on the Kubernetes cluster using Ansible playbook that defines aDeploymentand aNodePortservice to be deployed on theMinikubecluster.As beginners in Kubernetes, this Demo was difficult because we needed to understand
Kubernetesat first, and it took some time to decide which environment to choose to installKubernetesand then installKuberneteslocally. Then, it took some time to know how to integrateAnsiblewithJenkinsandKubernetes.Criteria that we want to fulfill