Conversation
| (backFill: SubscriptionBackfillState): boolean => backFill?.isSyncComplete | ||
| ); | ||
|
|
||
| const getBackfillStatus = async (subscriptionsById): Promise<BackFillType> => { |
There was a problem hiding this comment.
I have created a new PR as i made loads of changes in this file to keep this backfill status polling insync with the way we are providing data to jira-configuration-table.hbs via getInstallation
| ); | ||
|
|
||
| if (!subscriptions || subscriptions.length === 0) { | ||
| req.log.error("Missing Subscription"); |
There was a problem hiding this comment.
We have an enum set up for this in error.ts. Just import MISSING_SUBSCRIPTION
| } catch (error) { | ||
| req.log.error( | ||
| { error }, | ||
| "Failed to poll repo backfill status for provided subscription ID" |
There was a problem hiding this comment.
nit: pull this out into a const instead of repeating the same string.
gxueatlassian
left a comment
There was a problem hiding this comment.
Sorry, code looks good. Just quite a bit of complexity in the .js file, and this is not cover in our unit test / e2e test. Also I'd like to push towards using spa/react for the backfill page, then the update of status will be just a useEffect, should be much easier.
Let me know if you object this, happy to discuss.
What's in this PR?
refresh the GH config page to see updated backfilling status:
attempt to resolve https://softwareteams.atlassian.net/browse/ARC-1192
solution to show the progress of backfill status on current backfill status page.
Handled following scenarios:
Demo has been divided into 2 videos:
https://www.loom.com/share/49595fe5e9554e3499e5849215fdc677
https://www.loom.com/share/daf6b28b32ad460cb62b3058d1aa63ca
Why
To make the better UX for the backfill status page
Added feature flags
enable-backfilling-status-polling
Affected issues
(https://softwareteams.atlassian.net/browse/ARC-1192)
How has this been tested?
Tested this locally and on ddev for cloud and enterprise scenarios
added unit test cases to cover more than 90% for the api route
made it FF dependent and checked it with FF on and off