opensafely-core / sysadmin

Various scripts and tools for administering OpenSAFELY organisation and infrastructure
0 stars 0 forks source link

Prepare to run studies against EMIS #8

Open inglesp opened 3 years ago

inglesp commented 3 years ago

In order to run studies against EMIS with the same workflow that we use with TPP, we need to make changes to several parts of the system.  This is my initial braindump of what we need to do and I'm sure I've missed things. Please edit to add your notes, and then let's discuss in a call on Tuesday or Wednesday this week.

sebbacon commented 3 years ago

Discussion so far:

The simplest thing that Works is to provide the value of the BACKEND environment variable to actions.

As this gives people a gun which they can aim at their feet, this should come with best practice guidance:

ACTION: write up some example project.yaml and consider the implication in implementation, particularly regarding complicating dependency resolution. You would want to take a single tree of multiple dependencies and project that into a single tree as soon as possible and inspect that.

ACTION: We should also add a top-level run_on (or similar) key to project.yaml which can default to tpp (for backwards compatibility).

ACTION: We need to consider that publishing outputs will often result in name collisions; the os-release script should be updated to namespace with the backend.

ACTION: Also consider including backend in jobrunner output paths; will "backends exist" help as a concept for people to understand when doing local runs? There is also an argument for including the backend in filenames to help analysts when they are manually combining and comparing outputs from different backends

ACTION: wireframe the resulting UI to help users visualise what they've requested when multiple backends are involved

ACTION: sysadmin side should be scripts in opensafely/sysadmin repo and sufficient accompanying playbook documentation to make it easy for us to set it up again

ACTION: consider RDP server & ssh authentication in EMIS environment; test Github Desktop in that environment