-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] feat: use runners to startup the services #9048
base: master
Are you sure you want to change the base?
Conversation
Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes. |
ocis-pkg/runner/types.go
Outdated
"time" | ||
) | ||
|
||
var ( | ||
StopSignals = []os.Signal{syscall.SIGTERM, syscall.SIGINT, syscall.SIGQUIT, syscall.SIGKILL} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The SIGKILL may not be trapped https://pkg.go.dev/os/signal
We'll need at least an additional factory method for the reva runtime services. This will affect the following services:
This will need some investigation about how to properly stop the runner for those services. In addition, there are other services that might need special handling:
|
aec7c35
to
868a07b
Compare
4619f75
to
14b2554
Compare
It seems I'm stuck with the reva-related services. I think we need heavy changes in the reva runtime in order to keep going. The reva runtime has multiple problems:
As a possible alternative, we could try to spawn a new process for each service. However, the solution also have some problems.
It seems a better idea to wait for changes in reva so it's easier to handle its services. |
e6352b6
to
50560aa
Compare
Quality Gate passedIssues Measures |
Description
Replace oklog library with customized runners. This is intended to simplify and homogenize command's behavior.
Some of the
os.Exit
calls will also be removed.Note: It's expected that all the services will follow the same approach. The only notable exception (for now) is the antivirus service, which can't be stopped. This will need further analysis.
Related Issue
Motivation and Context
Runner's behaviour is expected to be the same across all the commands. The code is also simplified because the behavior is set within the
runner
package, so the commands just need to provide the parameters.How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: