Skip to content
This repository was archived by the owner on Jan 23, 2025. It is now read-only.

Commit 27dcd78

Browse files
re post resources on kafka after activation
1 parent e5e12e3 commit 27dcd78

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

src/services/ProcessorService.js

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,18 @@ async function closeChallenge (challengeId, winnerId) {
467467
return helper.postRequest(`${config.V4_CHALLENGE_API_URL}/${challengeId}/close?winnerId=${winnerId}`, null, m2mToken)
468468
}
469469

470+
/**
471+
* Repost challenge resources on kafka
472+
* @param {String} challengeUuid the V5 challenge UUID
473+
* @param {String} m2mToken the m2m token
474+
*/
475+
async function rePostResourcesOnKafka (challengeUuid, m2mToken) {
476+
const challengeResourcesResponse = await helper.getRequest(`${config.V5_RESOURCES_API_URL}?challengeId=${challengeUuid}&perPage=100`, m2mToken)
477+
for (const resource of (challengeResourcesResponse.body || [])) {
478+
await helper.postBusEvent(config.RESOURCE_CREATE_TOPIC, _.pick(resource, ['id', 'challengeId', 'memberId', 'memberHandle', 'roleId', 'created', 'createdBy', 'updated', 'updatedBy', 'legacyId']))
479+
}
480+
}
481+
470482
/**
471483
* Process create challenge message
472484
* @param {Object} message the kafka message
@@ -515,10 +527,7 @@ async function processCreate (message) {
515527
legacyId: newChallenge.body.result.content.id
516528
}, m2mToken)
517529
// Repost all challenge resource on Kafka so they will get created on legacy by the legacy-challenge-resource-processor
518-
const challengeResourcesResponse = await helper.getRequest(`${config.V5_RESOURCES_API_URL}?challengeId=${challengeUuid}&perPage=100`, m2mToken)
519-
for (const resource of (challengeResourcesResponse.body || [])) {
520-
await helper.postBusEvent(config.RESOURCE_CREATE_TOPIC, _.pick(resource, ['id', 'challengeId', 'memberId', 'memberHandle', 'roleId', 'created', 'createdBy', 'updated', 'updatedBy', 'legacyId']))
521-
}
530+
await rePostResourcesOnKafka(challengeUuid, m2mToken)
522531
await timelineService.enableTimelineNotifications(newChallenge.body.result.content.id, _.get(message, 'payload.createdBy'))
523532
logger.debug('End of processCreate')
524533
return newChallenge.body.result.content.id
@@ -672,6 +681,8 @@ async function processUpdate (message) {
672681
logger.info('Activating challenge...')
673682
await activateChallenge(legacyId)
674683
logger.info('Activated!')
684+
// Repost all challenge resource on Kafka so they will get created on legacy by the legacy-challenge-resource-processor
685+
await rePostResourcesOnKafka(message.payload.id, m2mToken)
675686
}
676687
if (message.payload.status === constants.challengeStatuses.Completed && challenge.currentStatus !== constants.challengeStatuses.Completed) {
677688
if (message.payload.task.isTask) {

0 commit comments

Comments
 (0)