Kaizen Today I Learned by Ville Säävuori

Posts tagged ci

Ignore Github Actions Runner Version With Renovate

I bumped into a obscure Spatialite error when running tests against SQLite Spatialite database with Pytest in GitHub actions. Turns out the Ubuntu 22.04 runner has upgraded some related packages in a way that is not compatible with GeoDjango SQLite. I didn’t want to spend too much time as this is just in CI and the dev and prod uses morerecent packages that don’t have this issue.

· Read the full article →

Using Docker Compose In GitHub Actions

Running non-trivial Django applications in CI (for example e2e testing purposes) has always been a big painpoint for me. For some reason using Docker Compose never even occured to me until yesterday when I saw an example of it in the wild. Few hours later I had converted one of my own projects and it workd great.

· Read the full article →

Weeknotes 2022/17 - Software Architecture: Splitting Up Large Projects

Most non-trivial real life production apps usually require an order of magnitude more planning and configuring than the simple templates from where most projects are started from. I spent the last week testing and planning out the final configuration which would be best suited for an Django app with Vue frontend.

· Read the full article →

Code Coverage Using GitHub Actions

I like using GitLab because it has so much of the everyday developer tooling integrated right into the product. Nowadays GitHub Actions are powerful enough to do many of the same things, including code coverage. Most projects on GitHub use external services like Codecov for code coverage reporting. I don’t have the budget for these external services and I’m not interested in setting up and maintaining different solutions based on the publicity or the organization of the project so I decided to write a native solution using Github Actions instead.

· Read the full article →

Running Playwright in GitLab CI

Had some trouble getting Playwright to run properly on GitLab CI so decided to document my learnings here. Playwright CI documentation was helpful for tracking and tackling the problems: Setting DEBUG=pw:browser* environment variable will output debug logs during the browser install which is really helpful. Most issues seem to relate to memory handling and consumption.

· Read the full article →