Skip to content

Commit 20b9ef3

Browse files
Merge pull request #189 from parthivsaikia/prerequisite-test-modules-for-automation-and-reliability
Prerequisite test modules for automation and reliability
2 parents f7815f1 + 55118ea commit 20b9ef3

File tree

8 files changed

+614
-15
lines changed
  • content
    • challenges/d011fd20-a3f5-4480-883b-dfb34321d168
      • configure-argo-cd-image-updater-challenge/content
      • processing-log-data-with-fluent-bit-and-wasm
    • learning-paths/d011fd20-a3f5-4480-883b-dfb34321d168/automation-and-reliability

8 files changed

+614
-15
lines changed
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
2-
title: "Configuring Argo CD Image Updater with Helm"
3-
description: "This challenge provides a walkthrough of automating Kubernetes deployments by integrating Argo CD Image Updater with Helm."
2+
title: 'Configuring Argo CD Image Updater with Helm'
3+
description: 'This challenge provides a walkthrough of automating Kubernetes deployments by
4+
integrating Argo CD Image Updater with Helm.'
45
weight: 3
5-
id: "9136f21d-c87f-478a-8f8b-6687597a2841"
6-
banner: "kubernetes-icon.svg"
7-
categories: "kubernetes"
6+
id: '9136f21d-c87f-478a-8f8b-6687597a2841'
7+
banner: 'kubernetes-icon.svg'
8+
categories: ['kubernetes', 'platform']
89
tags: [argo, helm, ci-cd]
9-
level: "intermediate"
10-
categories: "platform"
10+
level: 'intermediate'
1111
---
1212
The Argo CD Image Updater can check for new versions of the container images that are deployed with your Kubernetes workloads and automatically update them to their latest allowed version using Argo CD.
Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
---
2-
type: "challenge"
3-
title: "Processing Log Data with Fluent Bit and WebAssembly"
4-
description: "Extending Fluent Bit’s Processing Capabilities with WebAssembly"
2+
type: 'challenge'
3+
title: 'Processing Log Data with Fluent Bit and WebAssembly'
4+
description: 'Extending Fluent Bit’s Processing Capabilities with WebAssembly'
55
weight: 3
6-
banner: "webAssembly-logo.png"
7-
id: "ebe54b58-969a-46b4-a044-8999ee25fac2"
8-
categories: "Webassembly"
6+
banner: 'webAssembly-logo.png'
7+
id: 'ebe54b58-969a-46b4-a044-8999ee25fac2'
8+
categories: ['Webassembly', 'platform']
99
tags: [fluentbit, wasm, webassembly]
10-
level: "intermediate"
11-
categories: "platform"
10+
level: 'intermediate'
1211
---
1312
This challenge examines using Fluent Bit and WASM to enrich log data based on pre-existing location data in the logs. The WASM plugin is just one of the options available for processing data with Fluent Bit.
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
---
2+
title: 'Test'
3+
pass_percentage: 70
4+
questions:
5+
- id: 'q1'
6+
text: "What is the 'mantra' of Continuous Integration (CI) ? "
7+
type: 'single-answer'
8+
marks: 2
9+
options:
10+
- id: 'a'
11+
text: 'Integrate once at the end of the project'
12+
- id: 'b'
13+
text: 'Frequent integration'
14+
is_correct: true
15+
- id: 'c'
16+
text: 'Manual code review only'
17+
- id: 'd'
18+
text: 'Deployment over testing'
19+
20+
- id: 'q2'
21+
text: 'Which specific problem does CI/CD help minimize by ensuring consistent environments?'
22+
type: 'single-answer'
23+
marks: 2
24+
options:
25+
- id: 'a'
26+
text: "The 'it works on my machine' problem"
27+
is_correct: true
28+
- id: 'b'
29+
text: "The '404 not found' error"
30+
- id: 'c'
31+
text: 'Database connection timeouts'
32+
- id: 'd'
33+
text: 'Syntax errors in production'
34+
35+
- id: 'q3'
36+
text: 'What is the critical difference between Continuous Delivery and Continuous Deployment?'
37+
type: 'single-answer'
38+
marks: 2
39+
options:
40+
- id: 'a'
41+
text: 'Continuous Delivery requires manual intervention for production release, while Continuous Deployment is automatic.'
42+
is_correct: true
43+
- id: 'b'
44+
text: 'Continuous Delivery is faster than Continuous Deployment.'
45+
- id: 'c'
46+
text: 'Continuous Deployment does not use automated testing.'
47+
- id: 'd'
48+
text: 'Continuous Delivery deploys to production automatically.'
49+
50+
- id: 'q4'
51+
text: "In the context of GitOps, what serves as the 'single source of truth' for infrastructure and application configuration?"
52+
type: 'single-answer'
53+
marks: 2
54+
options:
55+
- id: 'a'
56+
text: 'The CI Server (e.g., Jenkins)'
57+
- id: 'b'
58+
text: 'The Kubernetes Cluster'
59+
- id: 'c'
60+
text: 'The Git Repository'
61+
is_correct: true
62+
- id: 'd'
63+
text: 'The Production Database'
64+
65+
- id: 'q5'
66+
text: 'Which release strategy involves maintaining two identical environments (blue and green) to ensure zero downtime?'
67+
type: 'single-answer'
68+
marks: 2
69+
options:
70+
- id: 'a'
71+
text: 'Canary Release'
72+
- id: 'b'
73+
text: 'Rolling Release'
74+
- id: 'c'
75+
text: 'Blue-Green Deployment'
76+
is_correct: true
77+
- id: 'd'
78+
text: 'Feature Toggles'
79+
80+
- id: 'q6'
81+
text: 'Which GitOps principle ensures that a controller automatically applies changes from the repository to the target environment?'
82+
type: 'single-answer'
83+
marks: 2
84+
options:
85+
- id: 'a'
86+
text: 'Push-based triggers'
87+
- id: 'b'
88+
text: 'Manual synchronization'
89+
- id: 'c'
90+
text: 'Pull-based reconciliation'
91+
is_correct: true
92+
- id: 'd'
93+
text: 'Environment Parity'
94+
95+
- id: 'q7'
96+
text: "What is the primary purpose of a 'Canary Release'?"
97+
type: 'single-answer'
98+
marks: 2
99+
options:
100+
- id: 'a'
101+
text: 'To deploy to all users simultaneously'
102+
- id: 'b'
103+
text: 'To test new features on a small subset of users before a full release'
104+
is_correct: true
105+
- id: 'c'
106+
text: 'To disable features using conditional statements'
107+
- id: 'd'
108+
text: 'To maintain two separate production environments'
109+
110+
- id: 'q8'
111+
text: 'Which of the following is listed as a popular tool for GitOps?'
112+
type: 'single-answer'
113+
marks: 2
114+
options:
115+
- id: 'a'
116+
text: 'Meshery'
117+
is_correct: true
118+
- id: 'b'
119+
text: 'Photoshop'
120+
- id: 'c'
121+
text: 'Excel'
122+
- id: 'd'
123+
text: 'Postman'
124+
125+
- id: 'q9'
126+
text: 'How do Feature Toggles (Flags) facilitate development?'
127+
type: 'single-answer'
128+
marks: 2
129+
options:
130+
- id: 'a'
131+
text: 'By preventing code from being merged until it is perfect'
132+
- id: 'b'
133+
text: 'By allowing developers to enable or disable features without modifying code'
134+
is_correct: true
135+
- id: 'c'
136+
text: 'By automatically fixing bugs in production'
137+
- id: 'd'
138+
text: 'By removing the need for version control'
139+
140+
- id: 'q10'
141+
text: "What is the role of the 'Build Process' in Continuous Integration?"
142+
type: 'multiple-answers'
143+
marks: 2
144+
options:
145+
- id: 'a'
146+
text: 'Code compilation'
147+
is_correct: true
148+
- id: 'b'
149+
text: 'Automated testing'
150+
is_correct: true
151+
- id: 'c'
152+
text: 'Manual user acceptance testing'
153+
- id: 'd'
154+
text: 'Creating executable artifacts'
155+
is_correct: true
156+
157+
layout: 'test'
158+
type: 'test'
159+
---
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
---
2+
title: 'Test'
3+
pass_percentage: 70
4+
questions:
5+
- id: 'q1'
6+
text: "What does 'CI' stand for in the context of software development?"
7+
type: 'single-answer'
8+
marks: 2
9+
options:
10+
- id: 'a'
11+
text: 'Continuous Improvement'
12+
- id: 'b'
13+
text: 'Continuous Integration'
14+
is_correct: true
15+
- id: 'c'
16+
text: 'Code Inspection'
17+
- id: 'd'
18+
text: 'Complex Integration'
19+
20+
- id: 'q2'
21+
text: 'Which concept involves automatically preparing code changes for a release to production?'
22+
type: 'single-answer'
23+
marks: 2
24+
options:
25+
- id: 'a'
26+
text: 'Continuous Delivery'
27+
is_correct: true
28+
- id: 'b'
29+
text: 'Manual Deployment'
30+
- id: 'c'
31+
text: 'Continuous Coding'
32+
- id: 'd'
33+
text: 'Static Analysis'
34+
35+
- id: 'q3'
36+
text: 'What is a CI/CD pipeline primarily used for?'
37+
type: 'single-answer'
38+
marks: 2
39+
options:
40+
- id: 'a'
41+
text: 'To slow down the development process to ensure quality'
42+
- id: 'b'
43+
text: 'To automate the steps of building, testing, and deploying software'
44+
is_correct: true
45+
- id: 'c'
46+
text: 'To manually review every line of code written by developers'
47+
- id: 'd'
48+
text: 'To prevent developers from merging their code'
49+
50+
- id: 'q4'
51+
text: "Which deployment model is described as 'paradigm-shifting'?"
52+
type: 'single-answer'
53+
marks: 2
54+
options:
55+
- id: 'a'
56+
text: 'Waterfalls'
57+
- id: 'b'
58+
text: 'GitOps'
59+
is_correct: true
60+
- id: 'c'
61+
text: 'FTP Transfer'
62+
- id: 'd'
63+
text: 'Manual Copy-Paste'
64+
65+
- id: 'q5'
66+
text: 'What are the main benefits of implementing CI/CD?'
67+
type: 'multiple-answers'
68+
marks: 2
69+
options:
70+
- id: 'a'
71+
text: 'Faster time to market'
72+
is_correct: true
73+
- id: 'b'
74+
text: 'Reduced risk of deployment failures'
75+
is_correct: true
76+
- id: 'c'
77+
text: 'Increased manual work for operations teams'
78+
- id: 'd'
79+
text: 'Longer feedback loops for developers'
80+
81+
layout: 'test'
82+
type: 'test'
83+
---
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
---
2+
title: 'Test'
3+
pass_percentage: 70
4+
questions:
5+
- id: 'q1'
6+
text: 'What is the primary goal of Continuous Delivery (CD)?'
7+
type: 'single-answer'
8+
marks: 2
9+
options:
10+
- id: 'a'
11+
text: 'To manually compile code once a month'
12+
- id: 'b'
13+
text: 'To automate the release of software changes to production frequently and reliably'
14+
is_correct: true
15+
- id: 'c'
16+
text: 'To remove the need for software testing'
17+
- id: 'd'
18+
text: 'To build images without deploying them'
19+
20+
- id: 'q2'
21+
text: 'Which command is used to retrieve the initial admin password?'
22+
type: 'single-answer'
23+
marks: 2
24+
options:
25+
- id: 'a'
26+
text: 'docker inspect myjenkins1'
27+
- id: 'b'
28+
text: 'cat /var/jenkins_home/secrets/initialAdminPassword'
29+
- id: 'c'
30+
text: 'docker logs myjenkins1 | grep -B 5 initialAdminPassword'
31+
is_correct: true
32+
- id: 'd'
33+
text: 'curl localhost:8080/password'
34+
35+
- id: 'q3'
36+
text: 'Which port is mapped to 8080 in the docker run command to access the Jenkins server?'
37+
type: 'single-answer'
38+
marks: 2
39+
options:
40+
- id: 'a'
41+
text: 'Port 50000'
42+
- id: 'b'
43+
text: 'Port 8080'
44+
is_correct: true
45+
- id: 'c'
46+
text: 'Port 80'
47+
- id: 'd'
48+
text: 'Port 22'
49+
50+
- id: 'q4'
51+
text: "Why is the 'None' option selected during the 'Select Plugins to install' step in this lab?"
52+
type: 'single-answer'
53+
marks: 2
54+
options:
55+
- id: 'a'
56+
text: 'To install all plugins automatically'
57+
- id: 'b'
58+
text: 'Because the internet connection is disabled'
59+
- id: 'c'
60+
text: 'To keep the setup simple and manually add plugins later if needed'
61+
is_correct: true
62+
- id: 'd'
63+
text: 'Because the plugins are incompatible with Docker'
64+
65+
- id: 'q5'
66+
text: 'What type of project is created to test the Jenkins installation in this lab?'
67+
type: 'single-answer'
68+
marks: 2
69+
options:
70+
- id: 'a'
71+
text: 'Pipeline Project'
72+
- id: 'b'
73+
text: 'Multibranch Pipeline'
74+
- id: 'c'
75+
text: 'Freestyle Project'
76+
is_correct: true
77+
- id: 'd'
78+
text: 'Maven Project'
79+
80+
layout: 'test'
81+
type: 'test'
82+
---

0 commit comments

Comments
 (0)