box / box/ClusterRunner

Configuration['results_directory'] should be used everywhere

Open
#356 0 comments 0 reactions 0 assignees View on GitHub
minor
Dominant language
Python
Stars
184
Forks
41
PR merge metrics
No merged PRs in 30d

Description

Right now the master always uses `Configuration['results_directory']` to store and read build results, and the slave always uses `Configuration['artifact_directory']`. These are currently set to `~/.clusterrunner/results/master` and `~/.clusterrunner/artifacts` respectively.

There are a few annoying things about this:
- In this context there's no difference between "results" and "artifacts". These two directories hold the same files (e.g., timing data, console output, anything the user put into $ARTIFACT_DIR). The only difference is that one is used on the master and one is used on the slave. It's really hard to remember which goes with which.
- Having two separate conf settings complicates the code, and requires us to pass directory parameters into some of the code common between master and slave (e.g., BuildArtifact, ConsoleOutput both have a `result_root` parameter for this reason).
- `Configuration['results_directory']` is unused on the slave (but it is currently set to `~/.clusterrunner/results/slave`).

I think we should get rid of `Configuration['artifact_directory']` and just use `Configuration['results_directory']` everywhere. This value already resolves to a different, more intuitive directory on the slave and would leverage configuration to reduce the number of parameters passed into common code.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.