Feature #4027

Updated by Tom Clegg over 6 years ago

During jobs.create and jobs.update, @runtime_constraints['arvados_sdk_version']@ provided by the client should be resolved to a commit hash and stored in @arvados_sdk_hash@.

Example:

In jobs.create request:
* <pre>
"runtime_constraints":{
"arvados_sdk_version":"master"
}
</pre>

In jobs.show response:
* <pre>
"arvados_sdk_hash":"7b2d04380952ac79453bd0771679e40c81281f5c"
"runtime_constraints":{
"arvados_sdk_version":"master"
}
</pre>

During the "install source" phase of crunch-job (i.e., at least once per container before any task runs there), crunch-job should do something like this:
* <pre>
cd {path-to-arvados-tree}
git reset --hard {arvados_sdk_hash}
cd sdk
./install.sh
</pre>

The @sdk/install.sh@ program should install Python, Ruby, and Perl client libraries to the system package directories where they can be imported by Crunch tasks.

Back