Skip to content

Commit 6ef9335

Browse files
committed
Check issue cleaned
1 parent 9d0fc24 commit 6ef9335

File tree

1 file changed

+25
-6
lines changed

1 file changed

+25
-6
lines changed

src/action.js

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,24 @@ const getMetadataFromIssueBody = (body) => {
2828
}
2929
}
3030

31+
class Component {
32+
constructor(slug, metadata, issueNumber, drifted, error) {
33+
this.slug = slug;
34+
this.metadata = metadata;
35+
this.issueNumber = issueNumber;
36+
this.drifted = drifted;
37+
this.error = error;
38+
}
39+
}
40+
3141
const mapOpenGitHubIssuesToComponents = async (octokit, context) => {
3242
const repository = context.repo;
3343

3444
let per_page = 100; // Max allowed value per page
3545
let page = 1;
3646
let componentsToIssues = {};
3747
let componentsToMetadata = {};
48+
let components = {};
3849
let isContinue = true;
3950

4051
while (isContinue) {
@@ -53,8 +64,10 @@ const mapOpenGitHubIssuesToComponents = async (octokit, context) => {
5364

5465
for (let issue of driftDetectionIssues) {
5566
const metadata = getMetadataFromIssueBody(issue.body);
56-
componentsToIssues[`${metadata.stack}-${metadata.component}`] = issue.number;
57-
componentsToMetadata[`${metadata.stack}-${metadata.component}`] = metadata;
67+
const slug = `${metadata.stack}-${metadata.component}`
68+
componentsToIssues[slug] = issue.number;
69+
componentsToMetadata[slug] = metadata;
70+
components[slug] = new Component(slug, metadata, issue.number, true, false)
5871
}
5972

6073
page++;
@@ -64,6 +77,7 @@ const mapOpenGitHubIssuesToComponents = async (octokit, context) => {
6477
return {
6578
componentsToIssues: componentsToIssues,
6679
componentsToMetadata: componentsToMetadata,
80+
components: components
6781
};
6882
}
6983

@@ -73,6 +87,7 @@ const readMetadataFromPlanArtifacts = async () => {
7387

7488
let componentsToState = {};
7589
let componentsToMetadata = {};
90+
let components = {};
7691

7792
for (let i = 0; i < metadataFiles.length; i++) {
7893
const metadata = JSON.parse(fs.readFileSync(metadataFiles[i], 'utf8'));
@@ -83,17 +98,19 @@ const readMetadataFromPlanArtifacts = async () => {
8398
drifted: metadata.drifted,
8499
error: metadata.error
85100
};
86-
componentsToMetadata[slug] = metadata;
101+
componentsToMetadata[slug] = metadata;
102+
components[slug] = new Component(slug, metadata, null, metadata.drifted, metadata.error)
87103
}
88104

89105
return {
90106
componentsToState: componentsToState,
91107
componentsToMetadata: componentsToMetadata,
108+
components: components
92109
};
93110
}
94111

95-
const triage = async(componentsToIssueNumber, componentsToIssueMetadata, componentsToPlanState) => {
96-
let slugs = new Set([...Object.keys(componentsToIssueNumber), ...Object.keys(componentsToPlanState)]);
112+
const triage = async(componentsToIssueNumber, componentsToIssueMetadata, componentsToPlanState, componentsFromIssues, componentsFromArtifacts) => {
113+
let slugs = new Set([...Object.keys(componentsFromIssues), ...Object.keys(componentsFromArtifacts)]);
97114

98115
const componentsCandidatesToCreateIssue = [];
99116
const componentsCandidatesToCloseIssue = [];
@@ -385,11 +402,13 @@ const runAction = async (octokit, context, parameters) => {
385402
const openGitHubIssuesToComponents = await mapOpenGitHubIssuesToComponents(octokit, context);
386403
const componentsToIssueNumber = openGitHubIssuesToComponents.componentsToIssues;
387404
const componentsToIssueMetadata = openGitHubIssuesToComponents.componentsToMetadata;
405+
const componentsFromIssues = openGitHubIssuesToComponents.components
388406

389407
const metadataFromPlanArtifacts = await readMetadataFromPlanArtifacts();
390408
const componentsToPlanState = metadataFromPlanArtifacts.componentsToState;
409+
const componentsFromArtifacts = metadataFromPlanArtifacts.components
391410

392-
const triageResults = await triage(componentsToIssueNumber, componentsToIssueMetadata, componentsToPlanState);
411+
const triageResults = await triage(componentsToIssueNumber, componentsToIssueMetadata, componentsToPlanState, componentsFromIssues, componentsFromArtifacts);
393412
const componentsCandidatesToCreateIssue = triageResults.componentsCandidatesToCreateIssue;
394413
const componentsToUpdateExistingIssue = triageResults.componentsToUpdateExistingIssue;
395414
const removedComponents = triageResults.removedComponents;

0 commit comments

Comments
 (0)