I Built My Own CI/CD, and the Interesting Part Wasn't the CI
On replacing GitHub Actions with something that owns almost nothing — and why that turned out to be the whole point.
19 posts tagged “ci/cd”.
On replacing GitHub Actions with something that owns almost nothing — and why that turned out to be the whole point.
I previously wrote about Packaging a Python CLI tool for Homebrew. I've now figured out a pattern for automatically updating those formulas over time, using GitHub Actions.
I used to use a combination of and in all of my Python GitHub Actions projects in order to install Python dependencies via a cache, rather than hitting PyPI to download copies every time.
I decided to see if there was an equivalent of Black or Prettier for YAML files. I found yamlfmt from Google. Update : It turns out Prettier can format YAML too.
I used python-build-standalone for this, which provides a version of Python that is designed for easy of bundling - it's also used by PyOxidize.
I decided to enforce that all code examples in the Datasette documentation be formatted using Black. Here's issue 1718 where I researched the options for doing this. I found the blacken-docs tool.
I wanted to ensure that when this template repository was used to create a new repo that repo would have a specific set of labels.
I built a new API reference page today for , using the Sphinx autodoc extension to extract docstrings from the code and use them to build a full class reference.
For Datasette Desktop I wanted to run an action which, when I created a release, would build an asset for that release and then upload and attach it.
My simonwillisonblog-backup workflow periodically creates a JSON backup of my blog's PostgreSQL database, using db-to-sqlite and sqlite-diffable.
GitHub's Dependabot can automatically file PRs with bumps to dependencies when new versions of them are available.
This recipe runs a Python script to update a README, then commits it back to the parent repo but only if it has changed: My first attempt threw an error if I tried o run and the README had not…
Today I discovered codespell via this Rich commit. is a really simple spell checker that can be run locally or incorporated into a CI flow. codespell is designed to run against source code.
I figured out a minimal pattern for building a completely custom website using GitHub Actions and deploying the result to GitHub Pages. First you need to enable GitHub Pages for the repository.
Twitter announced today that they'll be ending free API access for bots. My @covidsewage Twitter bot posts a screenshot of the latest Covid sewage data for parts of the San Francisco Bay Area every…
New feature announced here. Here's the full documentation. These are incredibly easy to use. GitHub creates a file in your workspace and puts the filename in , so you can build the summary markdown…
Newly created GitHub repositories come with a default set of labels. I have several labels I like to add on top of these.
I got my asgi-csrf Python package up to 100% code coverage. Here's the pull request. I started by installing and using the pytest-cov pytest plugin.
Useful for seeing what's available for conditions (see context and expression syntax). I copied this example action from here and deployed it here. Here's an example run.