{"action":"opened","issue":{"url":"https://api.github.com/repos/ga4gh/workflow-execution-service-schemas/issues/44","repository_url":"https://api.github.com/repos/ga4gh/workflow-execution-service-schemas","labels_url":"https://api.github.com/repos/ga4gh/workflow-execution-service-schemas/issues/44/labels{/name}","comments_url":"https://api.github.com/repos/ga4gh/workflow-execution-service-schemas/issues/44/comments","events_url":"https://api.github.com/repos/ga4gh/workflow-execution-service-schemas/issues/44/events","html_url":"https://github.com/ga4gh/workflow-execution-service-schemas/issues/44","id":332889435,"node_id":"MDU6SXNzdWUzMzI4ODk0MzU=","number":44,"title":"More granular `supported_filesystem_protocols` in service info","user":{"login":"jaeddy","id":5033229,"node_id":"MDQ6VXNlcjUwMzMyMjk=","avatar_url":"https://avatars0.githubusercontent.com/u/5033229?v=4","gravatar_id":"","url":"https://api.github.com/users/jaeddy","html_url":"https://github.com/jaeddy","followers_url":"https://api.github.com/users/jaeddy/followers","following_url":"https://api.github.com/users/jaeddy/following{/other_user}","gists_url":"https://api.github.com/users/jaeddy/gists{/gist_id}","starred_url":"https://api.github.com/users/jaeddy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jaeddy/subscriptions","organizations_url":"https://api.github.com/users/jaeddy/orgs","repos_url":"https://api.github.com/users/jaeddy/repos","events_url":"https://api.github.com/users/jaeddy/events{/privacy}","received_events_url":"https://api.github.com/users/jaeddy/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-06-15T19:28:48Z","updated_at":"2018-06-15T19:28:48Z","closed_at":null,"author_association":"MEMBER","body":"Currently this is just an array:\r\n\r\n```yaml\r\n      supported_filesystem_protocols:\r\n        type: array\r\n        items:\r\n          type: string\r\n        description: |-\r\n          The filesystem protocols supported by this service, currently these may include common\r\n          protocols such as 'http', 'https', 'sftp', 's3', 'gs', 'file', 'synapse', or others as\r\n          supported by this service.\r\n```\r\n\r\nHowever, the WES server might (is likely to?) support different protocols than the environment where individual tasks are executed. For example, the Broad Cromwell WES we used for the Toronto Testbed Demo was set up on an EC2 instance and could receive workflow contents (descriptors, parameters) via http; however, tasks were run via PAPI and thus required inputs/outputs as GS bucket URLs. For v1.0 of the spec, we're also proposing to store workflow and task logs at accessible (to the client) URLs, and so some protocol hint might be useful for those as well.\r\n\r\nI'm thinking we could change this property to an object with keys indicating supported protocols for workflows, tasks, and logs, respectively:\r\n\r\n```json\r\n{\"workflows\": [\"http\", \"file\"], \"tasks\": [\"gs\"], \"logs\": [\"gs\"]}\r\n```\r\n\r\nThis might still be an oversimplification (e.g., if a WES endpoint supports multiple task execution backends, then each might support a different fs protocol...) — but it would at least provide an initial barrier to prevent a client from submitting incompatible jobs.\r\n"}}
{"actor":{"display_login":"jaeddy"}}