You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/content/module-04/README.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -156,15 +156,15 @@ description: "Review goals in planning, then apply the Twelve-Factor App methodo
156
156
-[What is observability? - Grafana](https://grafana.com/docs/grafana-cloud/introduction/what-is-observability/)
157
157
-[Logs vs Metrics vs Traces - Engineering Fundamentals Playbook](https://microsoft.github.io/code-with-engineering-playbook/observability/log-vs-metric-vs-trace/)
158
158
-[The Three Pillars of Observability - Sematext](https://sematext.com/glossary/three-pillars-of-observability/)
159
-
-[The Site Reliability Workbook -Chapter 4 - Monitoring](https://sre.google/workbook/monitoring/)
159
+
-[The Site Reliability Workbook -Chapter 4 - Monitoring](https://sre.google/workbook/monitoring/)
160
160
161
161
## 4.7 Continuous Delivery - Introduction and Solutions in the Market
### What you need to know {#47-what-you-need-to-know}
166
166
167
-
- In simple words, `Continuous Delivery` is a practice where code changes are automatically prepared for release to multiple environments, especially production. This involves deploying all code changes to a testing environment and then to a production-like environment after passing automated tests, ensuring the software is always in a deployable state.
167
+
- In simple words, `Continuous Delivery` is a practice where code changes are automatically prepared for release to multiple environments, especially production. This involves deploying all code changes to a testing environment and then to a production-like environment after passing automated tests, ensuring the software is always in a deployable state.
168
168
- Following CD practices allows teams to deliver new features and bug fixes more safely and quickly to users, reducing the risk of deployment errors.
169
169
- It's important to know that `CD` could refer to two different things: `Continuous Delivery` and `Continuous Deployment`. They are usually used interchangeably, but in reality, they are two different stages.
170
170
- In many cases, the same [Continuous Integration solutions](../module-03#36-continuous-integration---introduction-and-solutions-in-the-market) could be used for continuous delivery/deployment; however, there are specialized solutions that work best for CD.
Copy file name to clipboardExpand all lines: docs/content/module-06/README.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -41,7 +41,7 @@ Finally, remember that retro is not only about bad things. It's also time to cel
41
41
- First of all, avoid `premature optimization`! Optimizing code too early usually leads to unnecessary complex solutions and wastes a lot of time without a good return. At first, focus only on critical use cases, then optimize based on actual performance issues as you go.
42
42
- If you know from the beginning that you need a high-performance solution, start with a programming language or a framework known for that. You will save a lot of effort if you select the correct tool early on. Also, follow the selected language's best practices for performance optimization.
43
43
- A simple method for code performance optimization is `caching`. Use it whenever possible on all levels, like database caching, in-memory caching Valkey or Memcached as a caching layer, and even DNS caching, which could save you a lot of necessary calls (external caching could also be helpful, like using Content Delivery Network "CDN" to cache static content).
44
-
- Following the same caching concept, try to minimize external API calls. The fastest request is the one that was never made!
44
+
- Following the same caching concept, try to minimize external API calls. The fastest request is the one that was never made!
45
45
- Avoid dull operations like calling a function repeatedly that could be called once outside the loop. As a rule of thumb, any code that doesn't change between iterations should be outside the loop.
46
46
- Finally, if you need to dive deeper and optimize your code (again, if necessary), profiling tools are your best friend.
47
47
@@ -144,14 +144,14 @@ Multi-environment setup is not a trivial topic, but like anything else, doing it
144
144
145
145
- Before diving into Continuous Deployment, we need to have a look at Continuous Delivery end-to-end release automation, which is the process of producing products ready for deployment.
146
146
- In fact, there are many types of release, but they could be narrowed down to two types: `Versioned release` and `Rolling release`.
147
-
- In a versioned release, you release an artefact with a specific version, like `1.0.0`. [Semantic Versioning](https://semver.org/) is one of the most popular versioning styles, but it's not the only one. Users should deliberately upgrade to the new version if they need the latest updates. This type is common in application code, especially if you have external consumers.
147
+
- In a versioned release, you release an artefact with a specific version, like `1.0.0`. [Semantic Versioning](https://semver.org/) is one of the most popular versioning styles, but it's not the only one. Users should deliberately upgrade to the new version if they need the latest updates. This type is common in application code, especially if you have external consumers.
148
148
- In rolling releases, you release an artifact with a marker like a Git hash or even a branch name, which works just as a reference or a pointer. The users will always get the latest updates at any point in time. This type is common in Infrastructure as Code, especially for internal use.
149
149
- It's hard to say one is better than the other; each has pros and cons and recommended use cases.
150
150
- In both styles, there are a couple of things you need to remember:
151
151
- Release quality is the same as the CI pipeline quality. Follow [CI best practices](../module-04/#44-continuous-integration---ci-best-practices) and add all standard quality gates.
152
152
- Everything should be done in version control. No magic should happen outside the Git repository.
153
153
- Ensure that the artifact is in at least one environment for consumers before it goes out.
154
-
- Learn about Rollback and Rollforward strategies to deal
154
+
- Learn about Rollback and Rollforward strategies to deal with failed releases.
155
155
- Generate changelog or release notes based on the Git commits. [Conventional Commits](https://www.conventionalcommits.org/en/) is famous for applications, and [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) is common for IaC. There are many tools to automate that step regardless of the Git commit convention you use (e.g., [git-cliff](https://github.com/orhun/git-cliff)).
156
156
- Automate the release chores and version bumps using tools like [release-please](https://github.com/googleapis/release-please) and [release-it](https://github.com/release-it/release-it).
157
157
- For security, sign the artifacts using [Sigstore/Cosign](https://github.com/sigstore/cosign) using the effortless `keyless signing`.
Copy file name to clipboardExpand all lines: docs/content/next-steps/README.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ description: "You finished the roadmap, what should you do now?"
5
5
6
6
[🗂 Back to the Roadmap Index](../../getting-started#roadmap-index)
7
7
8
-
Now that you've finished the roadmap, what's next? There is good news and bad news! The good news is that finishing this roadmap should increase your chances in the market. The bad news is that the tech industry is always evolving super fast, and the DevOps domain evolves even faster! So there are no options but to keep going and always stay in shape!
8
+
Now that you've finished the roadmap, what's next? There is good news and bad news! The good news is that finishing this roadmap should increase your chances in the market. The bad news is that the tech industry is always evolving super fast, and the DevOps domain evolves even faster! So there are no options but to keep going and always stay in shape!
9
9
10
10
It's time to face the real world and prepare for the next steps. We will cover some topics to help you step up and keep developing yourself.
11
11
@@ -50,8 +50,8 @@ It's time to face the real world and prepare for the next steps. We will cover s
50
50
- The chart alone is not enough; always combine it with a one-page document that adds some context about your skills.
51
51
- Use the chart as a high-level for your next steps and career development.
52
52
- Update your skill chart at least once every year or, even better, every 6 months.
53
-
- You can do this yourself, but it's highly recommended that you do it with someone close to you.
54
-
- Ask for feedback whenever possible.
53
+
- You can do this yourself, but it's highly recommended that you do it with someone close to you.
54
+
- Ask for feedback whenever possible.
55
55
- Always remember that ... you must be honest with yourself; otherwise, the whole process will be worthless!
Copy file name to clipboardExpand all lines: docs/faq/README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -97,7 +97,7 @@ Why not 100%? As the roadmap takes a pragmatic approach, the last 20% varies a l
97
97
98
98
This roadmap is designed for a wide range of audiences, but each requires different efforts and risks. The risk here is archiving the final goal, finishing the roadmap, and being a qualified DevOps Engineer.
99
99
100
-
Low risk means it's more likely the learner will reach the goal, and high risk means it's less likely the learner will reach the goal (the time here is a significant factor in this formula. As the time increases, there are more chances that the learner will divert from the goal).
100
+
Low risk means it's more likely the learner will reach the goal, and high risk means it's less likely the learner will reach the goal (the time here is a significant factor in this formula. As the time increases, there are more chances that the learner will divert from the goal).
Copy file name to clipboardExpand all lines: docs/getting-started/README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ How to process:
31
31
32
32
In this mode, you already have some experience with DevOps (usually between 1-2 years of work experience). Still, you want to further your skills with a real hands-on industry-grad project to learn DevOps pragmatically. This mode is also available to everyone in this repo.
33
33
34
-
The project follows the `Learning by Doing` method (aka `Problem-based Learning`), which is done in iterative phases. In this method, you learn as you go and cover the whole DevOps cycle.
34
+
The project follows the `Learning by Doing` method (aka `Problem-based Learning`), which is done in iterative phases. In this method, you learn as you go and cover the whole DevOps cycle.
0 commit comments