You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Additionally, when testing the output of arch on my system, I see this natively
$ arch
arm64
But through inspec, I see
Bash command /bin/zsh --login -c 'arch'
× stdout is expected to match /arm64/
expected "i386" to match /arm64/
Diff:
@@ -1 +1 @@
-/arm64/
+"i386"
I find it very interesting that inspec is running as i386, I would have expected x86 in this output.
Finally, if I try to run inspec with a specific arch via arch -arch arm64e, I get the following failure
$ arch -arch arm64e inspec exec ./test --chef-license=accept --no-distinct-exit --input user_home=/Users/tom local_user=tom
arch: posix_spawnp: inspec: Bad CPU type in executable
Possible Solution
I can get clang to output the correct target if I change the arch within the test itself, via
describe bash ("/bin/zsh --login -c 'arch -arch arm64e clang --version'") do
its('stdout') { should match /arm64-apple-darwin21.5.0/ }
end
But I view this as less favorable than inspec running all tests in the correct architecture.
The impact of this is that when python attempts to build wheels for my system during inspec tests, the wheels are not importable on my machine. Since those wheels get put into a cache with systems like poetry, it can leave my system in a broken state until I destroy the cache and rebuild the wheel natively.
Can anyone help me make heads or tails of why this would be happening?
The text was updated successfully, but these errors were encountered:
Describe the problem
When running inspec tests, clang targets x86 on my M1 mac. This is breaking building python wheels during inspec tests.
Here's the output of
clang --version
running natively on my system:But, with an inspec test written as
I get this output
I am invoking the test with
Additionally, when testing the output of
arch
on my system, I see this nativelyBut through inspec, I see
I find it very interesting that inspec is running as
i386
, I would have expectedx86
in this output.Finally, if I try to run inspec with a specific arch via
arch -arch arm64e
, I get the following failurePossible Solution
I can get clang to output the correct target if I change the arch within the test itself, via
But I view this as less favorable than inspec running all tests in the correct architecture.
The impact of this is that when python attempts to build wheels for my system during inspec tests, the wheels are not importable on my machine. Since those wheels get put into a cache with systems like
poetry
, it can leave my system in a broken state until I destroy the cache and rebuild the wheel natively.Can anyone help me make heads or tails of why this would be happening?
The text was updated successfully, but these errors were encountered: