Skip to content

Commit b453eb9

Browse files
committed
Simplify code
1 parent 1e68079 commit b453eb9

File tree

2 files changed

+26
-26
lines changed

2 files changed

+26
-26
lines changed

src/reporter/github/index.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ export default class GitHub {
5151
async initialize() {
5252
this.MANAGED_LABELS = Object.values(LABELS);
5353
try {
54-
const existingLabels = await this.getRepositoryLabels();
54+
let existingLabels = await this.getRepositoryLabels();
5555
const labelsToRemove = existingLabels.filter(label => label.description && label.description.includes(DEPRECATED_MANAGED_BY_OTA_MARKER));
5656

5757
if (labelsToRemove.length) {
@@ -62,26 +62,26 @@ export default class GitHub {
6262
}
6363
}
6464

65-
const updatedExistingLabels = labelsToRemove.length ? await this.getRepositoryLabels() : existingLabels; // Refresh labels after deletion, only if needed
66-
const managedLabelsNames = this.MANAGED_LABELS.map(label => label.name);
65+
if (labelsToRemove.length) {
66+
existingLabels = await this.getRepositoryLabels();
67+
}
6768

68-
const obsoleteManagedLabels = updatedExistingLabels.filter(label =>
69-
label.description
70-
&& label.description.includes(MANAGED_BY_OTA_MARKER)
71-
&& !managedLabelsNames.includes(label.name));
69+
const managedLabelsNames = this.MANAGED_LABELS.map(label => label.name);
70+
const obsoleteManagedLabels = existingLabels.filter(label => label.description?.includes(MANAGED_BY_OTA_MARKER) && !managedLabelsNames.includes(label.name));
7271

7372
if (obsoleteManagedLabels.length) {
7473
logger.info(`Removing obsolete managed labels: ${obsoleteManagedLabels.map(label => `"${label.name}"`).join(', ')}`);
7574

7675
for (const label of obsoleteManagedLabels) {
77-
await this.deleteLabel(label.name); /* eslint-disable-line no-await-in-loop */
76+
await this.deleteLabel(label.name);
7877
}
7978
}
8079

81-
const finalExistingLabels = obsoleteManagedLabels.length ? await this.getRepositoryLabels() : updatedExistingLabels;
82-
const existingLabelsNames = finalExistingLabels.map(label => label.name);
83-
const existingLabelsMap = new Map(finalExistingLabels.map(label => [ label.name, label ]));
80+
if (obsoleteManagedLabels.length) {
81+
existingLabels = await this.getRepositoryLabels();
82+
}
8483

84+
const existingLabelsNames = existingLabels.map(label => label.name);
8585
const missingLabels = this.MANAGED_LABELS.filter(label => !existingLabelsNames.includes(label.name));
8686

8787
if (missingLabels.length) {
@@ -97,7 +97,7 @@ export default class GitHub {
9797
}
9898

9999
const labelsToUpdate = this.MANAGED_LABELS.filter(label => {
100-
const existingLabel = existingLabelsMap.get(label.name);
100+
const existingLabel = existingLabels.find(existingLabel => existingLabel.name === label.name);
101101

102102
if (!existingLabel) {
103103
return false;
@@ -112,7 +112,7 @@ export default class GitHub {
112112
logger.info(`Updating labels with changed descriptions: ${labelsToUpdate.map(label => `"${label.name}"`).join(', ')}`);
113113

114114
for (const label of labelsToUpdate) {
115-
await this.updateLabel({ /* eslint-disable-line no-await-in-loop */
115+
await this.updateLabel({
116116
name: label.name,
117117
color: label.color,
118118
description: `${label.description} ${MANAGED_BY_OTA_MARKER}`,

src/reporter/gitlab/index.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ export default class GitLab {
4545

4646
this.MANAGED_LABELS = Object.values(LABELS);
4747
try {
48-
const existingLabels = await this.getRepositoryLabels();
48+
let existingLabels = await this.getRepositoryLabels();
4949
const labelsToRemove = existingLabels.filter(label => label.description && label.description.includes(DEPRECATED_MANAGED_BY_OTA_MARKER));
5050

5151
if (labelsToRemove.length) {
@@ -56,26 +56,26 @@ export default class GitLab {
5656
}
5757
}
5858

59-
const updatedExistingLabels = labelsToRemove.length ? await this.getRepositoryLabels() : existingLabels; // Refresh labels after deletion, only if needed
60-
const managedLabelsNames = this.MANAGED_LABELS.map(label => label.name);
59+
if (labelsToRemove.length) {
60+
existingLabels = await this.getRepositoryLabels();
61+
}
6162

62-
const obsoleteManagedLabels = updatedExistingLabels.filter(label =>
63-
label.description
64-
&& label.description.includes(MANAGED_BY_OTA_MARKER)
65-
&& !managedLabelsNames.includes(label.name));
63+
const managedLabelsNames = this.MANAGED_LABELS.map(label => label.name);
64+
const obsoleteManagedLabels = existingLabels.filter(label => label.description?.includes(MANAGED_BY_OTA_MARKER) && !managedLabelsNames.includes(label.name));
6665

6766
if (obsoleteManagedLabels.length) {
6867
logger.info(`Removing obsolete managed labels: ${obsoleteManagedLabels.map(label => `"${label.name}"`).join(', ')}`);
6968

7069
for (const label of obsoleteManagedLabels) {
71-
await this.deleteLabel(label.name); /* eslint-disable-line no-await-in-loop */
70+
await this.deleteLabel(label.name);
7271
}
7372
}
7473

75-
const finalExistingLabels = obsoleteManagedLabels.length ? await this.getRepositoryLabels() : updatedExistingLabels;
76-
const existingLabelsNames = finalExistingLabels.map(label => label.name);
77-
const existingLabelsMap = new Map(finalExistingLabels.map(label => [ label.name, label ]));
74+
if (obsoleteManagedLabels.length) {
75+
existingLabels = await this.getRepositoryLabels();
76+
}
7877

78+
const existingLabelsNames = existingLabels.map(label => label.name);
7979
const missingLabels = this.MANAGED_LABELS.filter(label => !existingLabelsNames.includes(label.name));
8080

8181
if (missingLabels.length) {
@@ -91,7 +91,7 @@ export default class GitLab {
9191
}
9292

9393
const labelsToUpdate = this.MANAGED_LABELS.filter(label => {
94-
const existingLabel = existingLabelsMap.get(label.name);
94+
const existingLabel = existingLabels.find(existingLabel => existingLabel.name === label.name);
9595

9696
if (!existingLabel) {
9797
return false;
@@ -107,7 +107,7 @@ export default class GitLab {
107107
logger.info(`Updating labels with changed descriptions: ${labelsToUpdate.map(label => `"${label.name}"`).join(', ')}`);
108108

109109
for (const label of labelsToUpdate) {
110-
await this.updateLabel({ /* eslint-disable-line no-await-in-loop */
110+
await this.updateLabel({
111111
name: label.name,
112112
color: `#${label.color}`,
113113
description: `${label.description} ${MANAGED_BY_OTA_MARKER}`,

0 commit comments

Comments
 (0)