@@ -467,6 +467,18 @@ async function closeChallenge (challengeId, winnerId) {
467
467
return helper . postRequest ( `${ config . V4_CHALLENGE_API_URL } /${ challengeId } /close?winnerId=${ winnerId } ` , null , m2mToken )
468
468
}
469
469
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
+
470
482
/**
471
483
* Process create challenge message
472
484
* @param {Object } message the kafka message
@@ -515,10 +527,7 @@ async function processCreate (message) {
515
527
legacyId : newChallenge . body . result . content . id
516
528
} , m2mToken )
517
529
// 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 )
522
531
await timelineService . enableTimelineNotifications ( newChallenge . body . result . content . id , _ . get ( message , 'payload.createdBy' ) )
523
532
logger . debug ( 'End of processCreate' )
524
533
return newChallenge . body . result . content . id
@@ -672,6 +681,8 @@ async function processUpdate (message) {
672
681
logger . info ( 'Activating challenge...' )
673
682
await activateChallenge ( legacyId )
674
683
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 )
675
686
}
676
687
if ( message . payload . status === constants . challengeStatuses . Completed && challenge . currentStatus !== constants . challengeStatuses . Completed ) {
677
688
if ( message . payload . task . isTask ) {
0 commit comments