Infisical/sdk

Failing to load infisical_c on docker container running on arm64 machines

Opened this issue · 4 comments

I am trying to run a .NET application inside a docker container on an arm64 machine, but for some reason, it is not able to locate infisical_c and the application crashes with the following error on the startup

Unhandled exception. System.DllNotFoundException: Unable to load shared library 'infisical_c' or one of its dependencies. In order to help diagnose loading problems, consider using a tool like strace. If you're using glibc, consider setting the LD_DEBUG environment variable: 
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.10/infisical_c.so: cannot open shared object file: No such file or directory
/app/infisical_c.so: cannot open shared object file: No such file or directory
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.10/libinfisical_c.so: cannot open shared object file: No such file or directory
/app/libinfisical_c.so: cannot open shared object file: No such file or directory
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.10/infisical_c: cannot open shared object file: No such file or directory
/app/infisical_c: cannot open shared object file: No such file or directory
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.10/libinfisical_c: cannot open shared object file: No such file or directory
/app/libinfisical_c: cannot open shared object file: No such file or directory

Does the SDK doesn't support arm64 platforms? Please let me know if you need more info regarding this

Thanks and regards

I am getting same issue in a NET.Framework application.
System.DllNotFoundException: Unable to load DLL 'infisical_c': The specified module could not be found. (Exception from HRESULT: 0x8007007E) at Infisical.Sdk.InfisicalLibrary.init(String settings) at Infisical.Sdk.InfisicalLibrary.Init(String settings) at Infisical.Sdk.InfisicalClient..ctor(ClientSettings settings)

Hi @dimitar-aleksov-cardano, and @AlenGeoAlex. Thank you for reporting the issue. We're currently working on moving the .NET SDK to a native implementation that doesn't depend on any C libraries. I will keep you posted!

This happened to us in a x64 docker container.
Our configuration:

  • A common services project which gets published as a Nuget.
  • Other projects having the Nuget installed and trying to fetch secrets (we have Infisical.SDK installed in both projects).

Projects in the same solution with the common services project are working just fine in docker containers.
Projects in different solutions which have the Nuget installed are throwing the error above.

This happened to us in a x64 docker container. Our configuration:

  • A common services project which gets published as a Nuget.
  • Other projects having the Nuget installed and trying to fetch secrets (we have Infisical.SDK installed in both projects).

Projects in the same solution with the common services project are working just fine in docker containers. Projects in different solutions which have the Nuget installed are throwing the error above.

Later update:
The issue proved to be the alpine version of .NET base image we were using for building the other applications. Switched to non alpine and it's working just fine!