CircleCI-Public / CircleCI-Public/cimg-node

Feature Request: cimg/node browsers arm64 support

Open
#366 2 comments 11 reactions 0 assignees View on GitHub
enhancement
Dominant language
Dockerfile
Stars
46
Forks
33
Avg merge
2h 52m
Merged PRs (30d)
5

Description

For our official CircleCI Docker Convenience Image support policy, please see [CircleCI docs](https://circleci.com/docs/convenience-images-support-policy).

This policy outlines the release, update, and deprecation policy for CircleCI Docker Convenience Images.

---

**Describe the Feature Request**
Create and publish arm64 image for cimg/node:latest-browsers

**Is your feature request related to a particular problem?**
cimg/node:latest images contain support for arm64 (thank you!), but the need to run Cypress test with the -browsers images prevents us from leveraging the new arm support.

**Why arm64?** CircleCI runners on arm have more ram allocated per CPU than similar linux-based x64 runners. We'd like to use arm64 across the board to help improve stability of some memory-intensive builds.

**Why can't you use existing -browsers images for specific tasks only?** Due to some workspace-level caching of binaries, all build nodes need to have the same architecture.

**Additional Data**
I see in the [original PR to add arm64 support to cimg-shared](https://github.com/CircleCI-Public/cimg-shared/pull/83) by @BytesGuy, browser variants were skipped due to an issue related to Selenium service, but I wasn't able to figure out exactly what that was

**How will this feature request benefit CircleCI jobs using this image?**
This will increase the support for arm-based images, allowing customers to more easily transition to these images without having to re-think part of their build pipeline

**Describe the solution you would like to see**
I would like to see cimg/node publishing [20.8.1-browsers and above](https://hub.docker.com/layers/cimg/node/20.8.1-browsers/images/sha256-121604f7634b862c899921b9d9f609214844e720322cc7ea06b4853a627bc16b?context=explore) with linux/arm64 tags and support. This image should contain the same set of browsers/tools that are included in the linux/amd64 build

**Describe alternatives you have considered**
The alternatives for us are a revamp of the current build pipeline or staying on linux/amd64 images, both of which are undesirable

Contributor guide

Open the contributing guide

Research direction

Review the CircleCI convenience-image support policy and the original cimg-shared PR #83, especially the Selenium-related reason browser variants were skipped. Trace how cimg/node browser images are built and published, then verify that 20.8.1-browsers and later provide linux/arm64 tags with the same browsers and tools as linux/amd64.

Written by the indexing model from the issue text.

Assessment

Tech stack
cypress, docker, node.js
Domain
devops, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.