Applies to: jobs using machine: true
or specifying a Machine image based on Ubuntu 14.04 or 16.04.
- Note: Ubuntu 16.04 has reached the end of its LTS window as of April 2021 and will no longer be supported by Canonical. As a result,
ubuntu-1604:202104-01
is the final Ubuntu 16.04 image released by CircleCI. We suggest upgrading to the latest Ubuntu 20.04 image for continued releases and support past April 2021. - This also affected our flagging for configurations running with Remote Docker instances - please reference our Discuss Announcement on Remote Docker Environment updates set using setup_remote_docker key
Please contact support@circleci.com or open a ticket in the CircleCI Support Center with any questions or issues that arise during migration.
Schedule [includes brown-outs]
Please reference our published schedule in our blog post Deprecating Ubuntu 14.04 and 16.04 images
What is a deprecated image?
If you don’t specify a machine image, you are using the default image and you’ll need to take action.
Currently, when using machine: true
builds are using a Ubuntu 14.04
image. If you do not specify an image, your build will be using the default image which will be Ubuntu 22.04
as of 31-May-2022. This may lead to a breaking change. You can tell if you fall into this category if any of your jobs look like this:
jobs: build: machine: true # This is using the default old machine image steps: - checkout
Or it may look like this which is an example of a 14.04 based image:
jobs: build: machine: image: circleci/classic:201709-01 # This is an image based on Ubuntu 14.04 steps: - checkout
How can I know if my project is using deprecated Machine images?
You will see a warning on a job's build details itself, if the job is using a deprecated Machine image.Next, if you have the CircleCI CLI tool installed, you can also run `circleci config validate` against your project's .circleci/config.yml.
The validation will return an error if your project's build config is still referencing deprecated Machine images.
Here is an example from the CLI output when we are referencing a deprecated Machine image.
$ circleci config validate
Error: The config is using a deprecated Linux VM image (circleci/classic:201709-01). Please see https://circleci.com/blog/ubuntu-14-16-image-deprecation/. This error can be ignored by using the '--ignore-deprecated-images' flag.
How to Locate Image Use using GitHub Search
This does not find executors used via orbs or using the default machine:true - keep in mind if you are using an older version of an orb, it may have an executor using the Ubuntu 14.04 and 16.04 images
How to look for a Ubuntu 16.04 image
Replace CircleCI-Public
with the org that needs to be searched. This searches all projects in that org that mention that image:
org:CircleCI-Public ubuntu-1604 path:.circleci filename:config.yml
How to look for an Ubuntu 14.04 images
Replace CircleCI-Public
with the org that needs to be search. This searches all projects in that org that mention that image:
org:CircleCI-Public circleci/classic path:.circleci filename:config.yml
Machine Image Migration Guides
The following options are available, given the deprecation of older images, our recommendation is to update your image following our guides:
Documentation
See our documentation update on our newer machine images.
Comments
Article is closed for comments.