Hi Everyone, Im builiding installers on a M1 mac a...
# general
d
Hi Everyone, Im builiding installers on a M1 mac and am unable to generate a msi. Getting the following error message
Copy code
Generating your osquery installer...
Windows Installer XML Toolset Toolset Harvester version 
Copyright (c) .NET Foundation and contributors. All rights reserved.


=================================================================
	Native Crash Reporting
=================================================================
Got a UNKNOWN while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================
wine client error:2a: 
=================================================================
	Managed Stacktrace:
=================================================================
=================================================================
write: Bad file descriptor
Error: package root files: heat failed: exit status 1
Another user had this issue earlier this spring and following the recommendations found here https://github.com/fleetdm/fleet/issues/5713 I tried
Copy code
docker buildx build --platform=linux/amd64
but got the following error any suggestions?
Copy code
ERROR: "docker buildx build" requires exactly 1 argument.
l
Hi @David! What's your
fleetctl
version?
Copy code
fleetctl --version
d
4.23.0
Copy code
branch: 	HEAD
 revision: 	af0c75e08bc37d1c81f38fd24dfaf0d473d8a499
 build date: 	2022-11-14
 build user: 	runner
l
Mhm... we did add a retry mechanism for this sporadic error in some < 4.23 recent version. (#7367)
I'll check with the team (some folks have M1 to try this out).
d
Thank you!
I'm approaching this without a ton of experience if that makes any difference
l
First: I'll open an issue for this bug. The fix should be simple and will be present on fleet
v4.25.0
. Thanks for reporting! Second: As a workaround, given that we've seen this error is sporadic, you can run the command in a loop until it succeeds:
Copy code
cat workaround.sh
#!/bin/bash

while ! fleetctl package --type=msi --enroll-secret=foobar --fleet-url=<https://localhost:8080>; do
  sleep 5;
  echo Retrying...
done

chmod +x workaround.sh
./workaround.sh
Sorry for the inconvenience.
d
Hey Lucas, any idea how many times I should let this run its been running for ~20min without success
l
Huh... from our tests it succeeded after ~10 runs.
Same error every time?
d
Yeah its the same error from above. My company has a CDA with Fleet is there anyway someone from Fleet could generate the installer for us if I sent the url / secret elsewhere
l
Let me check with the team and I'll get back to you.
k
Hey @David! I'd be happy to build that for you. DM me your flags and I'll get it sent over.