Write down more design notes
This commit is contained in:
parent
26ee2ff019
commit
cee838d0e9
2 changed files with 134 additions and 30 deletions
30
README.md
30
README.md
|
|
@ -52,33 +52,3 @@ should use the dev database instead of `.sqlx/`, but only in your IDE.
|
|||
|
||||
[sqlx]: https://github.com/launchbadge/sqlx/blob/main/sqlx-cli/README.md
|
||||
[ra-opt]: https://rust-analyzer.github.io/manual.html#rust-analyzer.check.extraEnv
|
||||
|
||||
## Design notes
|
||||
|
||||
- A tablejohn instance tracks exactly one git repository.
|
||||
- A tablejohn instance has exactly one sqlite db.
|
||||
- Tablejohn does not clone or update repos, only inspect them.
|
||||
- Tablejohn can inspect bare and non-bare repos.
|
||||
- Server settings should go in a config file.
|
||||
- Repo settings should go in the db and be managed via the web UI.
|
||||
- Locally, tablejohn should just work™ without custom config.
|
||||
- Run via `tablejohn <db> [<repo>]`
|
||||
|
||||
- The db contains...
|
||||
- Known commits
|
||||
- Runs and their measurements
|
||||
- Queue of tasks (not-yet-run runs)
|
||||
- Tracked branches (new commits are added to the queue automatically)
|
||||
- Github commands
|
||||
|
||||
- Runners...
|
||||
- Ping tablejohn instance regularly with their info?
|
||||
- WS connection complex, but quicker to update
|
||||
- Reserve tasks (for a limited amount of time 10 min?)
|
||||
- Steal tasks based on time already spent on task
|
||||
- Update server on tasks
|
||||
- Maybe this is the same as reserving a task?
|
||||
- Include last few lines of output
|
||||
- Turn tasks into runs
|
||||
- Handle errors sensibly
|
||||
- Include full output (stdout and stderr), especially if task fails
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue