Video Thumbnail for Lesson
10.5: Migrating to Namespace

Scaling with Namespace Cloud runners

So far, we have used the GitHub hosted runners throughout the capstone.

This lesson shows how easy it is to move to Namespace for reduced costs and improved performance.

The general process is:

  1. Replace every runs-on: ubuntu-24.04 with labels such as runs-on: ["namespace-cloud-ubuntu-24.04-amd64-4x16"] (CPU x memory).
  2. Remove the QEMU/Buildx setup steps in favor of Namespace remote builders.
  3. Define cache volumes per service via runner labels (e.g., appending cache and cache-tag:${{ matrix.cache_label }}) and configure the custom namespace-cloud/cache-action to persist Go modules, NPM artifacts, and Poetry environments.

These changes roughly halve runner costs while cutting build times thanks to warm caches and native ARM/AMD64 builders.