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
I tried temporarily disabling jailer to try and debug an issue that I suspect might have been related to running firecracker under jailer.
When not using jailer, the default firecracker command runner sets stdin, stdout, stderr to os.Stdin, os.Stdout, os.Stderr respectively. I didn't want that behavior (especially stdin), because I'm running several VMs at once from the same go binary. So I tried to override it.
However, I discovered that the SDK makes it difficult to override these. The default firecracker command is set here:
At first glance, that function seems small enough to just copy. However, it references this private seccompArgs function, which would also need to be copied:
I think maybe a better alternative to WithProcessRunner in this case could be to have a function like WithCommandModifier(defaultBuilder VMCommandBuilder) VMCommandBuilder that allows modifying the default command builder, instead of just the WithProcessRunner(cmd *exec.Command) which requires code-copying from the SDK.
The text was updated successfully, but these errors were encountered:
I tried temporarily disabling jailer to try and debug an issue that I suspect might have been related to running firecracker under jailer.
When not using jailer, the default firecracker command runner sets stdin, stdout, stderr to os.Stdin, os.Stdout, os.Stderr respectively. I didn't want that behavior (especially stdin), because I'm running several VMs at once from the same go binary. So I tried to override it.
However, I discovered that the SDK makes it difficult to override these. The default firecracker command is set here:
firecracker-go-sdk/machine.go
Line 384 in e5e3dea
Note, it uses a private function,
configureBuilder
:firecracker-go-sdk/machine.go
Lines 352 to 357 in e5e3dea
At first glance, that function seems small enough to just copy. However, it references this private
seccompArgs
function, which would also need to be copied:firecracker-go-sdk/machine.go
Lines 342 to 350 in e5e3dea
I think maybe a better alternative to
WithProcessRunner
in this case could be to have a function likeWithCommandModifier(defaultBuilder VMCommandBuilder) VMCommandBuilder
that allows modifying the default command builder, instead of just theWithProcessRunner(cmd *exec.Command)
which requires code-copying from the SDK.The text was updated successfully, but these errors were encountered: