Skip to content

Configuration['results_directory'] should be used everywhere #356

@josephharrington

Description

@josephharrington

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions