Skip to content
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

chore: refactor responsibilities #66

Closed
BrianHicks opened this issue Sep 23, 2022 · 0 comments · Fixed by #77
Closed

chore: refactor responsibilities #66

BrianHicks opened this issue Sep 23, 2022 · 0 comments · Fixed by #77
Assignees
Milestone

Comments

@BrianHicks
Copy link
Member

Currently:

  • Workspace is responsible for setting up files for a job
  • Job is responsible for creating the command
  • Runner is responsible for bringing the workspace and job together
  • Coordinator is responsible for executing jobs in the right order

It might make sense to refactor these in terms of responsibilities:

  • Runner is responsible for taking a job (not a job and workspace, just a job), running it, and saying where we can get the output
    • for local builds, this probably just looks like managing the workspace
    • for remote builds, this looks like shipping the job definition and any necessary files to a remote executor, then downloading the result again (to be clear, remote builds are not part of this story!)
  • Workspace is responsible for isolating the file system as much as possible
    • it symlinks files into the working directory
    • it creates a fake HOME (see isolate HOME #62)
    • it symlinks any other jobs in
  • Job is responsible for command isolation
  • Coordinator is responsible for the same things as before

This'll be a biggish refactor, but should mean we have better-defined responsibilities for all the components in the system.

@BrianHicks BrianHicks self-assigned this Sep 23, 2022
@BrianHicks BrianHicks moved this to In Progress in rbt Sep 23, 2022
@BrianHicks BrianHicks added this to the initial build milestone Sep 23, 2022
@BrianHicks BrianHicks moved this from In Progress to Todo in rbt Sep 24, 2022
@BrianHicks BrianHicks moved this from Todo to In Progress in rbt Sep 30, 2022
Repository owner moved this from In Progress to Done in rbt Oct 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant