Skip to content


Changelog v1.6.1 - ARM64 full image, support for S3 cache for workflows

RunsOn v1.6.1 has just been released πŸŽ‰.

Availability of ARM64 full image

New image name available: ubuntu22-full-arm64.

This image is mostly compatible with the GitHub Action ecosystem. It also has a lot of development and CI tooling (docker, kubernetes, nodejs, various languages, etc.) preinstalled. As soon as GitHub releases an official image, we will align the RunsOn image towards theirs.

Boot times for ARM64 full image is only 20s, vs 40s for the x64 full image.

Support for unlimited cache to S3

RunsOn will now create an S3 bucket dedicated to cache artefacts. This bucket will be automatically accessible to the runners thanks to an IAM EC2 Instance Profile, so that no credentials need to be setup.

Then, simply replace actions/cache@v4 with runs-on/cache@v4 and your workflows will now store their caches on the local S3 bucket, which allows for:

  • much faster download/restore speed (300MB/s+ vs 50-100MB/s on GitHub)
  • UNLIMITED cache storage size (GitHub only gives you 10GB).

Pretty excited about that one! You can read more about it here.

s3 action cache

New info in logs

Added AMI ID, as well as availability zone in log outputs

Log outputs

How to verify that VPC traffic to S3 is going through your S3 gateway?

Gateway endpoints for Amazon S3 are a must-have whenever your EC2 instances send and receive traffic from S3, because they allow the traffic to stay within the AWS network, hence better security, bandwidth, throughput, and costs. They can easily be created, and added to your VPC route tables.

But how do you verify that traffic is indeed going through the S3 gateway, and not crossing the outer internet?

Using traceroute, you can probe the routes and see whether you are directly hitting the S3 servers (i.e. no intermediate gateway). In this example, the instance is running from a VPC located in us-east-1:

Terminal window
$ traceroute -n -T -p 443
traceroute to (, 30 hops max, 60 byte packets
1 * * *
2 * * *
3 * * *
4 * * *
5 * * *
6 0.890 ms 0.916 ms 0.892 ms
Terminal window
$ traceroute -n -T -p 443
traceroute to (, 30 hops max, 60 byte packets
1 * * *
2 * * *
3 * * *
4 * * *
5 * * *
6 0.268 ms 0.275 ms 0.252 ms

Both outputs produce the expected result, i.e. no intermediary gateway. This is what would happen if you were accessing a bucket located in the us-east-1 region.

Let’s see what happens if we try to access an S3 endpoint located in another zone:

Terminal window
$ traceroute -n -T -p 443
traceroute to (, 30 hops max, 60 byte packets
1 * * *
2 0.275 ms 0.265 ms 0.215 ms
3 0.205 ms 0.231 ms 0.206 ms
4 1.369 ms 0.648 ms 0.233 ms
5 0.326 ms * *
6 0.371 ms 0.362 ms *
7 * 0.251 ms *
8 * * *
9 * * 0.392 ms
10 * * *
11 * 1.321 ms *
12 * * 1.491 ms
13 * * 1.286 ms
14 67.909 ms 67.356 ms 67.929 ms

As you can see, the route is completely different, and as expected does not hit straight to the S3 endpoint.

TL;DR: make sure your route tables are correct, and only point to S3 buckets located in the same region.

GitHub Action runner images (AMI) for AWS EC2

As part of the RunsOn service, we automatically maintain and publish replicas of the official GitHub runner images β†— as AWS-formatted images (AMIs).

New images are automatically released within 48h of the official upstream release, and are slightly trimmed to remove outdated software, or (mostly useless) caches.

This means the disk usage is below 30GB, making it sufficiently small to boot in around 40s. The runner binary is also preinstalled in the images.

Supported regions:

  • us-east-1
  • eu-west-1

AMIs can be found using the following search:

  • name: runs-on-ubuntu22-full-x64-*
  • owner 135269210855

You can find more details on β†—.

Changelog v1.5.0

RunsOn v1.5.0 has just been released πŸŽ‰.

Faster boot for large images


  • Before: between 140 to 160s from launch to runner ready
  • After: between 40 to 60s from launch to runner ready

Proper disk resizing

Volume is now properly resized, if given hdd size is greater than AMI size.

New timings section in logs

Very useful to compare boot times between runner types / images.


New license types

  • standard
  • sponsorship

Changelog v1.4.2

RunsOn v1.4.2 has just been released πŸŽ‰.

Two notable changes:

  • Can now customize the users that will have SSH access using the new admins attribute in the RunsOn configuration file.
  • Fixed a bug in the instance selection matching, leading to incorrect priority order when having a long list of family types defined.