Closed MatrixAI-Bot closed 1 year ago
Pipeline Attempt on 911320723 for 7ba545bddcd29f5a20214ebe15bea4c37b2f6c8f
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911320723
Pipeline Attempt on 911641149 for 6088a76445afa97c17da97f96ef1785b5b2be163
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911641149
There's an issue with systeminformation on the m1 mac.
We get an error:
Error: Command failed: ioreg -c IOPlatformDevice -d 3 -r | grep cluster-type
at checkExecSyncError (node:child_process:885:11)
at execSync (node:child_process:957:15)
at /Users/gitlab/builds/zxQ9CHzH/0/MatrixAI/open-source/js-db/node_modules/systeminformation/lib/cpu.js:652:32
at ChildProcess.exithandler (node:child_process:411:7)
at ChildProcess.emit (node:events:513:28)
at ChildProcess.emit (node:domain:489:12)
at maybeClose (node:internal/child_process:1091:16)
at Socket.<anonymous> (node:internal/child_process:449:11)
at Socket.emit (node:events:513:28) {
status: 1,
signal: null,
output: [ null, Buffer(0) [Uint8Array] [], Buffer(0) [Uint8Array] [] ],
pid: 34634,
stdout: Buffer(0) [Uint8Array] [],
stderr: Buffer(0) [Uint8Array] []
}
However testing on my local m1 mac I can see this working.
It's possible that on the CI maybe there's a missing command. Possibly ioreg
doesn't exist or grep
doesn't exist. Let's see.
Pipeline Attempt on 911671923 for 465e5a2481cf07a296abd5fca41bec88e9219364
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911671923
There's an issue with systeminformation on the m1 mac.
We get an error:
Error: Command failed: ioreg -c IOPlatformDevice -d 3 -r | grep cluster-type at checkExecSyncError (node:child_process:885:11) at execSync (node:child_process:957:15) at /Users/gitlab/builds/zxQ9CHzH/0/MatrixAI/open-source/js-db/node_modules/systeminformation/lib/cpu.js:652:32 at ChildProcess.exithandler (node:child_process:411:7) at ChildProcess.emit (node:events:513:28) at ChildProcess.emit (node:domain:489:12) at maybeClose (node:internal/child_process:1091:16) at Socket.<anonymous> (node:internal/child_process:449:11) at Socket.emit (node:events:513:28) { status: 1, signal: null, output: [ null, Buffer(0) [Uint8Array] [], Buffer(0) [Uint8Array] [] ], pid: 34634, stdout: Buffer(0) [Uint8Array] [], stderr: Buffer(0) [Uint8Array] [] }
However testing on my local m1 mac I can see this working.
It's possible that on the CI maybe there's a missing command. Possibly
ioreg
doesn't exist orgrep
doesn't exist. Let's see.
I may report this in https://gitlab.com/gitlab-org/ci-cd/shared-runners/infrastructure/-/issues/76.
Right now I'm just checking which specific command fails:
- ioreg -c IOPlatformDevice -d 3 -r
- ioreg -c IOPlatformDevice -d 3 -r | grep cluster-type
Ok nailed it to the grep
command. It doesn't exist on the new macos image... I wonder if there's a way to ensure it is installed, perhaps through brew
.
Pipeline Attempt on 911691585 for 96161396f41fc1f01d09360f1da935f975a384ac
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911691585
Pipeline Attempt on 911706440 for aeff66ebcb7b5551c7536d3b6855064c077d7d57
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911706440
Ok it appears it's not because grep
doesn't exist. It appears it's because the information does not exist and grep
returns 1
as exit code. It seems systeminformation
expects this information to exist.
Reported upstream as I think systeminformation
should be less strict: https://github.com/sebhildebrandt/systeminformation/issues/823
@tegefaulkes
The only quick fix is to disable the cpu
information until it's fixed upstream. That's in the benches/index.ts
:
const systemData = await si.get({
cpu: '*', // <-- need to comment out
osInfo: 'platform, distro, release, kernel, arch',
system: 'model, manufacturer',
});
We could apply a patch inside the build macos job that applies to the benches/index.ts
for now.
Pipeline Attempt on 911731736 for 952d192e48940a624eece6f48f1389a6a74c2099
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911731736
Pipeline Succeeded on 911731736 for 952d192e48940a624eece6f48f1389a6a74c2099
https://gitlab.com/MatrixAI/open-source/js-db/-/pipelines/911731736
Upstream has fixed it. Just use 5.18.5
of `systeminformation.
"systeminformation": "^5.18.5",
This is an automatic PR generated by the pipeline CI/CD. This will be automatically fast-forward merged if successful.