Skip to content

Unable to reuse cached tools on arch armv7 (Raspberry) #793

Closed
louislam/uptime-kuma
#3576
@louislam

Description

@louislam

Description:

On armv7, setup-node will download Node.js from official and extract to _work/_tool/node/18.16.1/armv7l.

However, setup-node is searching for the cache in _work/_tool/node/18.16.1/arm instead of _work/_tool/node/18.16.1/armv7l. As a result, it can never hit the cache.

My current workaround:
Manually rename the directory from armv7l to arm, setup-node will be able to use cached tool in the next run.

Log: https://github.com/louislam/uptime-kuma/actions/runs/5456311185/jobs/9928952991?pr=3354

The image shows that the directory name do not match.

Action version:
4.305.0

Platform:

  • Ubuntu
  • macOS
  • Windows
  • Raspbian Buster (Similar to Debian) (Raspberry Pi400) (Arch: armv7)

Runner type:

  • Hosted
  • Self-hosted

Tools version:

  • Node.js 14, 18
  • npm

Repro steps:

Option 1:
In case you don't have such hardware. You can fork this pr and create pr on my repo if you want to test: louislam/uptime-kuma#3354. The job armv7-simple-test (ARMv7, 16) is always reproducible.

Option 2:

Expected behavior:
Node.js could be reuse in the next run.

Actual behavior:
Node.js will be downloaded for every run, the cached tool is never used.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions