-
Task
-
Resolution: Done
-
Undefined
-
None
-
None
The swatch-subscription-sync job is defined in the clowdapp.yaml file as a cronjob.
However, this job will start the Swatch Tally service using the profiles "subscription-sync" and "kafka-queue" (see here).
The relevant profile here is "subscription-sync" which will make the Tally service to act as a command line program to execute the SubscriptionSyncJob task which does:
if (!applicationProperties.isSubscriptionSyncEnabled()) { log.info( "Will not sync subscriptions for all opted-in orgs even though job was scheduled because subscriptionSyncEnabled=false."); return; } try { controller.syncAllSubscriptionsForAllOrgs(); } catch (Exception e) { throw new JobFailureException("Failed to run " + this.getClass().getSimpleName(), e); }
The same method is invoked by calling the endpoint "/rpc/subscriptions/sync".
Acceptance Criteria:
- Modify the "sync" job in clowdapp.yaml to invoke the "/rpc/subscriptions/sync" if and only if "${SUBSCRIPTION_SYNC_ENABLED}" is true. (As an example, the "purge" job is already invoking another endpoint here).
- Delete the spring profile "subscription-sync" since it should not be used any longer (ensure "SubscriptionSyncController" is properly imported when running the swatch tally service).
- Delete SubscriptionSyncConfiguration, SubscriptionSyncJob
- Update the diagram to remove the deleted profile