jamsocket/plane

Make Runtimes Generic

paulgb opened this issue · 0 comments

  • Make the executor configuration generic (#713)
  • Turn executor config into an enum (#717)
  • Make the executor itself generic
    • Move pruning loop into PlaneDocker (#718)
    • Move readiness check into PlaneDocker (#728)
    • Move Docker construction into PlaneDocker (#719)
    • Rename PlaneDocker to DockerRuntime (#720)
    • Make ContainerId an implementation detail of DockerRuntime (#721)
    • Generalize pull (#722)
    • Implement Runtime trait (#723)
    • Move metrics loop into docker side (#724)
    • Replace DockerRuntime with generic Runtime in the main loop
      • Make BackendManager generic over runtime (#727)
    • Refactor codebase to create a module for runtimes
  • Send backend ID as an HTTP header to the backend (so that multiple backends can share a port) (#714)
  • Spec out a Drone <> Executor wire protocol (#766)
  • Implement an executor that uses the wire protocol over domain sockets (#766, #780)
  • Create a mock executor and use it to add integration tests