Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE core-oncalls] Removes implicit limit on how many on-calls can be loaded #72

Merged
merged 5 commits into from
Jan 6, 2019

Conversation

sergiitk
Copy link
Owner

@sergiitk sergiitk commented Jan 6, 2019

What's this PR do?

  • Remove implicit limit on the number of schedules that can be loaded. This is achieved by loading on-calls for each schedule individually. The limit existed because PagerDuty API v2 GET /oncalls is paginated and returns total (number escalation_policy of schedule x * schedule x) for each schedule x in all schedules records, which is unpredictable and has a lot of data duplication.
  • Performance improvement: even though the total number of API requests, each one is less heavy computationaly and just smaller size-wise. The total number of lines in formatted JSON response for the tests set went down from 3000+ to 500+. (including changes made in [CLEANUP core] Load Schedules separately from OnCalls #70)
  • Add one more schedule to the test set to use it for testing incidents

@sergiitk sergiitk changed the title [CLEANUP core] Load OnCalls individually [CLEANUP core-oncalls] Load OnCalls individually Jan 6, 2019
@sergiitk sergiitk changed the title [CLEANUP core-oncalls] Load OnCalls individually [CLEANUP core-oncalls] Load On-Calls individually Jan 6, 2019
@codecov
Copy link

codecov bot commented Jan 6, 2019

Codecov Report

Merging #72 into master will decrease coverage by 0.02%.
The diff coverage is 0%.

Impacted file tree graph

@@            Coverage Diff            @@
##           master     #72      +/-   ##
=========================================
- Coverage    3.75%   3.73%   -0.03%     
=========================================
  Files          16      16              
  Lines         346     348       +2     
  Branches       47      48       +1     
=========================================
  Hits           13      13              
- Misses        332     334       +2     
  Partials        1       1
Impacted Files Coverage Δ
src/services/PagerDutyClient.mjs 0% <0%> (ø) ⬆️
src/services/OnCallsService.mjs 0% <0%> (ø) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c9343d0...4fbcf46. Read the comment docs.

@sergiitk sergiitk changed the title [CLEANUP core-oncalls] Load On-Calls individually [FEATURE core-oncalls] Removes implicit limit on how many on-calls can be loaded Jan 6, 2019
@sergiitk sergiitk merged commit 4f4876d into master Jan 6, 2019
@sergiitk sergiitk deleted the cleanup/load-oncalls-individially branch January 6, 2019 20:19
sergiitk pushed a commit that referenced this pull request Feb 7, 2019
# [1.0.0](v0.3.0...v1.0.0) (2019-02-07)

### Bug Fixes

- [79](#79) **core** Fix error handling on unknown schedules
- [80](#80) **ui-oncalls** Handle one user in the rotation (no end date)

### Cleanup

- [75](#75) **chore-dependencies** Dependencies upgrade
- [64](#64) **chore-dependencies** Dependencies upgrade
- [83](#83) **chore-dependencies** Dependencies upgrade
- [87](#87) **circleci** Move test key from secrets to allow exogenous PRs
- [70](#70) **core** Load Schedules separately from OnCalls
- [69](#69) **core** Move schedule loading out of web controller
- [65](#65) **misc-local-dev** Acceptance tests in Docker
- [62](#62) **misc-release** Automated Docker image builds with basic sanity checks
- [71](#71) **misc-release** Improve Semantic Release
- [66](#66) **misc-release** Run acceptance tests in CircleCI
- [68](#68) **tests** Better test reports
- [67](#67) **tests** Setup unit test tools and refactor acceptance tests

### Documentation

- [78](#78) **deploy** Document deploying PagerBeauty to Heroku
- [90](#90) **readme** Add PagerBeauty on Grafana Dashboard screenshot
- [86](#86) **readme** Fix minor typo
- [89](#89) **readme** Update Adding to Datadog dashboard gif
- [85](#85) **readme** Update caps on Datadog

### Features

- [73](#73) **core-incidents** Poll for active incidents
- [72](#72) **core-oncalls** Removes implicit limit on how many on-calls can be loaded
- [77](#77) **core-web** HTTP server can be started on custom port
- [82](#82) **core-web** Support for Authentication Bearer access_token
- [88](#88) **grafana** Support Grafana
- [74](#74) **ui-oncalls** On-call active incident view: show incident info and make red
@sergiitk
Copy link
Owner Author

sergiitk commented Feb 7, 2019

🎉 This PR is included in version 1.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@sergiitk sergiitk mentioned this pull request Feb 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant