nodejs / nodejs/build

Update OSX persistent ccache to leverage new storage.

Open
#4,180 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Jinja
Stars
541
Forks
185
Avg merge
22h 15m
Merged PRs (30d)
4

Description

MacStadium is deprecating the "shared VM storage" that comes with the Orka Cluster, and, as we have seen, has also caused us some issues in the past with NFS breaking.

I just got off a call with them and they've agreed to offer us another singular bare metal mac that we can use as a persistent node alongside our existing cluster where we can put our shared ccache.

There are a couple ways forward on this machine:

  1. expose the drive as a network file share to the orka nodes that mount it as they come up so they access the cache via the filesystem
  2. Install Redis/Valkey on the new node and use ccache's ability to leverage that.

My preference is 2, as Im suspicious of network filesystems, and I believe that a Redis/Valkey cache will be performant enough to satisfy our requirements.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the current OSX persistent ccache setup and how Orka nodes mount the existing shared storage. Compare the proposed Redis/Valkey cache on the new bare-metal Mac with exposing its drive as a network share; done means the Orka nodes use persistent ccache without relying on the deprecated shared VM storage.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, redis
Domain
build-system, ci-cd, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.