kolide / launcher

Osquery launcher, autoupdater, and packager
https://kolide.com/launcher
Other
502 stars 98 forks source link

Make the osquery extension and runner separate rungroups #1596

Closed RebeccaMahany closed 5 months ago

RebeccaMahany commented 5 months ago

Relates to https://github.com/kolide/launcher/issues/1473

Currently, we have an actorQuerier rungroup wrapper around both the extension and the runner, which act as a semi-conjoined single rungroup. They don't need to be coupled like this: the extension doesn't need the runner (since we officially disabled the initial runner), and the runner doesn't need the extension (it just needs a couple opts passed in to register the extension correctly when creating the osquery instance). My hope is that decoupling them will make it easier for us to handle the "unenrolled" state and give us better flexibility for how we want to do that. I also think it'll make rewriting our rungroups easier in the future, too.

This PR makes the following changes:

Testing notes - [x] launcher can start up osquery successfully - [x] launcher will restart osquery if the process is manually killed - [x] can query `kolide_` tables provided by the extension - [x] enrollment works - [x] logs show up with component `osquery_runner` and `osquery_extension` as expected
RebeccaMahany commented 5 months ago

Will merge this after we declare v1.5.3 stable