@hiiretail/gcp-infra-cli 0.70.2 → 0.71.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
const chalk = require('chalk');
|
|
2
|
+
const BaseGenerator = require('../../../src/BaseGenerator');
|
|
3
|
+
const { required } = require('../../../src/validators');
|
|
4
|
+
|
|
5
|
+
module.exports = class extends BaseGenerator {
|
|
6
|
+
prompting() {
|
|
7
|
+
const prompts = [
|
|
8
|
+
{
|
|
9
|
+
type: 'input',
|
|
10
|
+
name: 'description',
|
|
11
|
+
message: 'A very short description of the problem',
|
|
12
|
+
validate: required,
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
type: 'input',
|
|
16
|
+
name: 'date',
|
|
17
|
+
message: 'Date of the incident',
|
|
18
|
+
validate: required,
|
|
19
|
+
},
|
|
20
|
+
];
|
|
21
|
+
|
|
22
|
+
return this.prompt(prompts).then((props) => {
|
|
23
|
+
this.answers = props;
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
writing() {
|
|
28
|
+
const { date } = this.answers;
|
|
29
|
+
const filename = `rca_${date}`;
|
|
30
|
+
|
|
31
|
+
this.fs.copyTpl(
|
|
32
|
+
this.templatePath('docs', 'rca.md'),
|
|
33
|
+
this.destinationPath('docs', 'rca', `${filename}.md`),
|
|
34
|
+
this.answers,
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
end() {
|
|
39
|
+
this.log(`
|
|
40
|
+
${chalk.green('Your RCA template have now been created.')}
|
|
41
|
+
Next, push this change in a feature branch and open a pull request.
|
|
42
|
+
`);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# RCA - <%-description%> - <%-date%>
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
**Incident start**: <!-- The date and time when the incident started, for example: 2022-06-14 14.36 CET -->
|
|
6
|
+
|
|
7
|
+
**Incident end**: <!-- The date and time when the incident was resolved, for example: 2022-06-14 14.53 CET -->
|
|
8
|
+
|
|
9
|
+
**Problem statement**: <!-- Describe, in short, what the problem was -->
|
|
10
|
+
|
|
11
|
+
**Impacted customer(s)**: <!-- What customer(s) that were affected -->
|
|
12
|
+
|
|
13
|
+
**Impact to customer**: <!-- Describe how the customer, and end customers, was affected by the incident -->
|
|
14
|
+
|
|
15
|
+
**Ticket information**: <!-- Add link(s) to any Jira issues -->
|
|
16
|
+
|
|
17
|
+
**Services involved**: <!-- List the services that were involved in the incident -->
|
|
18
|
+
|
|
19
|
+
## Sequence of Events
|
|
20
|
+
|
|
21
|
+
<!--
|
|
22
|
+
Describe the events that caused the incident, starting from first getting notified about the incident until the incident was resolved.
|
|
23
|
+
|
|
24
|
+
Example:
|
|
25
|
+
|
|
26
|
+
2022-06-14 14.36 - Alert X was triggered
|
|
27
|
+
2022-06-14 14.36 - Team started working on the incident
|
|
28
|
+
2022-06-14 14.49 - A fix was pushed and deployed
|
|
29
|
+
2022-06-14 14.53 - Incident was resolved
|
|
30
|
+
-->
|
|
31
|
+
|
|
32
|
+
## Five Whys
|
|
33
|
+
|
|
34
|
+
<!--
|
|
35
|
+
Five whys is a technique used to explore the cause and effect underlying a particular problem. The primary goal of the technique is to determine the root cause of a problem by repeating the question "Why?". Each answer forms the basis of the next question.
|
|
36
|
+
|
|
37
|
+
Example:
|
|
38
|
+
|
|
39
|
+
Problem: The vehicle won't start
|
|
40
|
+
|
|
41
|
+
1. __Why?__ - The battery is dead (First why)
|
|
42
|
+
2. __Why?__ - The alternator is not functioning (Second why)
|
|
43
|
+
3. __Why?__ - The alternator belt is broken (Third why)
|
|
44
|
+
4. __Why?__ - The alternator belt was well beyond its useful service life and not replaced. (Fourth why)
|
|
45
|
+
5. __Why?__ - The vehicle was not maintained according to the recommended service schedule. (Fifth why, the root cause)
|
|
46
|
+
-->
|
|
47
|
+
|
|
48
|
+
1. __Why?__
|
|
49
|
+
2. __Why?__
|
|
50
|
+
3. __Why?__
|
|
51
|
+
4. __Why?__
|
|
52
|
+
5. __Why?__
|
|
53
|
+
|
|
54
|
+
## Summary
|
|
55
|
+
|
|
56
|
+
<!--
|
|
57
|
+
Write a short summary of what the problem was, what the root cause was and what potentially action items that were taken.
|
|
58
|
+
-->
|
|
59
|
+
|
|
60
|
+
## Action items
|
|
61
|
+
|
|
62
|
+
<!--
|
|
63
|
+
A table that describes the different actions that was the outcome of the analysis, who is the owner of the task and the status of the task.
|
|
64
|
+
The status should be updated until the action is completed.
|
|
65
|
+
|
|
66
|
+
Example:
|
|
67
|
+
| Description | Owner | Date | Status |
|
|
68
|
+
|-------------|-------|------|--------|
|
|
69
|
+
| Create alert for high CPU Usage | Bob the Builder | 2022-06-14 | Not started |
|
|
70
|
+
| | | | |
|
|
71
|
+
-->
|
|
72
|
+
|
|
73
|
+
| Description | Owner | Date | Status |
|
|
74
|
+
|-------------|-------|------|--------|
|
|
75
|
+
| | | | |
|