Drone autoscaler AMIs too old for .net 6 application

Drone version: 2.12

Autoscaler version: 1.8.2 running on AWS

We’re having an issue with a .net 6 application one of our developers wrote failing to run in Drone, but not the dev’s local docker or docker-in-docker.

The app is meant to do some version calculations, not particularly sophisticated. When run in Drone it crashes like so
image

We noticed that the versions of docker in docker and drone’s docker were different.

We think that it is because the autoscaler for AWS is using ubuntu xenial 16.04, which is a fair bit out of date, and that there’s something in the older version of docker that the agent pulls that causes it to fail.

We’ve validated this by switching the AMI to use ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-amd64-server-20220609, which allows the application to run without exploding.

Xenial is 6 years old at this point. Ubuntu 16.04 LTS (Xenial Xerus) | Ubuntu
It’s still in Extended Security Maintenance, but is outside of general support, so I don’t think it’s appropriate to be using.

The AMIs are also marked as deprecated next month.

It’s probably also important to update these as the configuration parameter is marked as not recommended to be overridden, so a fair number of people will be running the old images. DRONE_AMAZON_IMAGE | Drone

I can rummage through AWS and pull out the AMIs and open a PR if there’s some guidance on specific requirements.

I see there is a PR from two years ago where someone had a similar idea.

I’d add some more info but I’m getting a very helpful message from harness. Presumably it doesn’t like base 64 images, despite it working fine in the preview

docker-in-docker


drone agent

Note the older versions for the agent, we think that’s what causing the issue. Not sure why exactly though.

@jimsheldon can you help here?

Thank you @maxgruebneraeroqual for all the details, this is very helpful.

We used the drone autoscaler extensively at my previous company, but we built our own AMIs. I agree this can potentially be a big problem for users that rely on the (very old) default AMI.

I will bring this up with the drone team.