FiFo issue: CTRL+C runs indefinitely when signals are being caught by process
sourishkrout opened this issue · 1 comments
sourishkrout commented
This is no longer an issue once FiFo & encryption is disabled:
https://github.com/stateful/runme/blob/main/internal/command/factory.go#L14-L17
Screen.Recording.2024-07-23.at.8.58.55.AM.mov
The problem can be observed with the Foyle binary running the foyle serve
command or terraform apply
in both cases using SIGINT (Ctrl+C
).
This is the error Runme throws:
signal: interrupt,errorVerbose:signal: interrupt
github.com/stateful/runme/v3/internal/command.(*virtualCommand).Wait
/Users/sourishkrout/Projects/stateful/oss/runme/internal/command/command_virtual.go:153
github.com/stateful/runme/v3/internal/command.(*inlineShellCommand).Wait
/Users/sourishkrout/Projects/stateful/oss/runme/internal/command/command_inline_shell.go:49
github.com/stateful/runme/v3/internal/runnerv2service.(*execution).Wait
/Users/sourishkrout/Projects/stateful/oss/runme/internal/runnerv2service/execution.go:158
github.com/stateful/runme/v3/internal/runnerv2service.(*runnerService).Execute
/Users/sourishkrout/Projects/stateful/oss/runme/internal/runnerv2service/service_execute.go:124
github.com/stateful/runme/v3/pkg/api/gen/proto/go/runme/runner/v2alpha1._RunnerService_Execute_Handler
/Users/sourishkrout/Projects/stateful/oss/runme/pkg/api/gen/proto/go/runme/runner/v2alpha1/runner_grpc.pb.go:369
google.golang.org/grpc.(*Server).processStreamingRPC
/Users/sourishkrout/go/pkg/mod/google.golang.org/grpc@v1.64.0/server.go:1673
google.golang.org/grpc.(*Server).handleStream
/Users/sourishkrout/go/pkg/mod/google.golang.org/grpc@v1.64.0/server.go:1794
google.golang.org/grpc.(*Server).serveStreams.func2.1
/Users/sourishkrout/go/pkg/mod/google.golang.org/grpc@v1.64.0/server.go:1029
runtime.goexit
/opt/homebrew/Cellar/go/1.22.5/libexec/src/runtime/asm_arm64.s:1222
sourishkrout commented
Fifo is deactivated temporarily in #637. However, it still needs a fix. It's not urgent since the file-based collector using encryption is a good stop-gap.