Assignment Detail:- DOT503 DevOps Tools - Torrens University Australia
Assessment - Continuous integration and testing pipeline
Learning Outcome 1: Analyse and integrate goals, terminologies, and the continuous development pipeline in a collaborative environment-
Learning Outcome 2: Evaluate and critique design practices using skillsets, knowledge, and established competencies in DevOps-
Learning Outcome 3: Implement best practices of Continuous Testing and Continuous Integration-
Part Summary
In most Continuous Integration and Continuous Delivery -CI/CD- pipelines, the first three stages are Source control, Unit testing and Build automation- In this assessment you will:a- Implement the Source control stageb- Implement the Unit testing stagec- Implement the Build automation stage that performs the task of cleaning, compiling, testing and creating deployable package/executabled- Write a 1000-words report explaining the concept of Infrastructure as Code -IaC- and how it relates to DevOps practices-
Part Instructions
Although implementation of Source control stage is independent of the choice of programming language, the implementation of Unit testing and Build automation relies on the specific programming language- Thus, you are first required to choose your favourite programming language along with a suitable unit testing framework and build automation tool- With your choice of programming language, unit testing framework, and build automation tool implement the followings-
a- Implement Source control using Git and GitHub
1- Create a free GitHub account if you do not have one-2- Create a simplistic application in your favourite programming language and push into GitHub-3- Create three branches from your repository named ‘feature-x', ‘feature-y', and ‘feature- z'-4- From each branch modify one of the source files so that they would lead to merge conflicts-5- Commit your changes in each branch and push each of the branches into GitHub-6- In GitHub, create a pull request to merge ‘feature-x' branch into the master branch and approve the pull request-7- From Git CLI, merge the updated master branch with ‘feature-y' branch- Resolve the conflict and push it into GitHub-8- In GitHub, create a pull request to merge ‘feature-z' branch into the master branch- Resolve the conflict and complete the merge-9- Commit your changes and push the master branch into GitHub-
b- Implement Unit testing
1- Create a branch named ‘unit-test' and checkout the newly created branch-2- In your chosen Unit testing framework, write five test cases for your applications such that three test cases pass and two test cases fail- Modify your applications if required-3- Add unit test files to your repository, commit the change and push the branch into GitHub-4- In GitHub, create a pull request to merge ‘unit-test' branch with the master branch and complete the merge-
c- Implement Build automation
1- In your chosen build automation tools create a script to compile and test your application as well as making a deployable package or executable for your application-2- Create a ‘Readme-txt' file with instructions on how to run the build script-3- Add the build script and the Readme-txt file to your master branch- Commit the changes and push the changes into GitHub-
d- Write a report on Infrastructure as Code -IaC-1- The report shall contain the link to your GitHub repository-2- Explain the concept of Infrastructure as Code -IaC- and its benefits in the context of DevOps-
ReferencingIt is essential that you use appropriate APA style for citing and referencing research-
Attachment:- DevOps Tools-rar
Most Recent Questions