DevOps Foundations: Implement Semantic Versioning Principles
In this lab, you’ll practice semantic versioning (semver). When you’re finished, you’ll have the skills and knowledge necessary to communicate compatibility clearly with semver.
Terms and conditions apply.
Lab info
Lab author
Challenge
Get Started in the Lab Environment
Here are the initial instructions and explanation of the lab environment. Read this while your environment is busy creating itself from nothing. Yes, this violates physics; we know. How fun!
Challenge
Understand the Version of Your Code
To start the lab, you will become familiar with a provided project that has an existing semantic versioning as expressed in the git tags, and understand the purpose of versioning.
Challenge
Perform a Patch Update
A code fix results in a patch, and hence a patch update. You will notice and fix a problem in the code, then will properly increment the version to reflect the change and compatibility state with consumers of the project.
Challenge
Perform a Minor Update
Examine the code for an issue and add a new method that the consuming functions will call. Then, examine an issue and make a change that is a version increment judgment call.
Challenge
Perform a Major Update
You will change the implementation of the getCurrentPayload method, breaking the interface of the previous version, and necessitating a major version update.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.
Recommended prerequisites
- Basic software development, including using Visual Studio Code in a Ubuntu Desktop environment
- Basic familiarity with the bash command line, including the git cli