learningequality / ka-lite

KA Lite: lightweight web server for serving core Khan Academy content (videos and exercises) without needing internet connectivity
https://learningequality.org/ka-lite/
Other
456 stars 306 forks source link

Circle CI 2.1 conf #5627

Closed benjaoming closed 4 years ago

benjaoming commented 4 years ago

Summary

Buildkite and Circle CI is restored, however Selenium-based tests now fail. The failures seem to be related to new breakages, but not the Selenium/geckodriver updates which seem to work.

Background

Circle CI has killed the 1.0 API that we were using. So we needed to either go back to Travis CI or start using their 2.0. The changes introduced here have no new value other than just extending the lifespan of the automated tests and builds. It's very sad the way that Circle CI has removed their old API and forced us into this.

The reason why this problem went under the radar was that the Circle CI integration was simply shut down, so we kept getting :heavy_check_mark: on our builds because Buildkite was still building artifacts.. but alas, no testing was done.

It also turned out that the combination of geckodriver+Selenium+Firefox wasn't reproducible in the new Circle CI docker containers.. I couldn't make it work, sticking to the same Selenium version and going through a series of different geckodriver+Firefox combinations, including the ones we had used before.

The automated tests are the only means to introduce changes to a somewhat large codebase that will be difficult to support in case of breakage.

https://circleci.com/sunset1-0/

The CircleCI 1.0 cloud infrastructure is no longer available as of March 15, 2019.

TODO

Reviewer guidance

If your PR has a significant size, give the reviewer some helpful remarks

Issues addressed

List the issues solved or partly solved by the PR

codecov[bot] commented 4 years ago

Codecov Report

Merging #5627 into 0.17.x will decrease coverage by 19.72%. The diff coverage is 32.14%.

Impacted file tree graph

@@             Coverage Diff             @@
##           0.17.x    #5627       +/-   ##
===========================================
- Coverage   66.05%   46.33%   -19.73%     
===========================================
  Files         113      113               
  Lines        6508     6514        +6     
===========================================
- Hits         4299     3018     -1281     
- Misses       2209     3496     +1287     
Impacted Files Coverage Δ
...achreports/management/commands/generaterealdata.py 0.00% <0.00%> (ø)
kalite/distributed/management/commands/setup.py 0.00% <0.00%> (-43.65%) :arrow_down:
kalite/distributed/middleware.py 52.08% <0.00%> (-5.70%) :arrow_down:
kalite/topic_tools/content_models.py 56.17% <ø> (-21.63%) :arrow_down:
kalite/distributed/views.py 57.92% <50.00%> (-20.74%) :arrow_down:
kalite/main/models.py 65.07% <50.00%> (-20.05%) :arrow_down:
kalite/control_panel/views.py 39.88% <66.66%> (-28.28%) :arrow_down:
kalite/shared/decorators/auth.py 41.17% <66.66%> (-1.54%) :arrow_down:
kalite/updates/management/commands/videoscan.py 0.00% <0.00%> (-100.00%) :arrow_down:
...stributed/management/commands/initialize_kalite.py 0.00% <0.00%> (-100.00%) :arrow_down:
... and 43 more

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 e645658...c72582a. Read the comment docs.