Skip to main content

Connecting to a GA4GH WES server

Server Connection​

To connect IRIDA Next to a GA4GH Server, you will need to edit your rails credentials file. This file is encrypted so secret tokens are secure.

Edit your production credentials file with the following command.

EDITOR="vim --nofork" bin/rails credentials:edit --environment production

Read more about the rails credential file here

The following fields can be set.

ga4gh_wes:
server_url_endpoint: "https://<some server url>/wes/1.01/"
oauth_token: <some oauth token>
headers: { "<some header key>": "<some header value>" }

Only server_url_endpoint is required by default, but depending on your GA4GH WES server configuration the other fields may also be required.

server_url_endpoint: *Required​

Set the server endpoint.

When this is set, make sure to include the full endpoint. e.g. https://subdomain.domain.tld/wes/1.01/

Example: If your endpoint for getting the Service Info path is localhost:1122/service-info, your endpoint is localhost:1122

oauth_token: *Optional​

Bearer token for OAuth 2.0

If your GA4GH WES server is using OAuth 2.0 for authentication, this field is required.

headers: *Optional​

Can be used to set new headers and override existing REST API headers.

This allows for additional authentication or server settings for your specific deployment of GA4GH WES.

Data Storage​

GA4GH WES and IRIDA Next must have a data directory (or equivalent cloud storage system) which both services can access.

For configuring your storage service, see this guide.

Workflow Execution clean up​

IRIDA Next is designed to clean up intermediate files once a workflow has been completed. To do this it must have permission to delete files generated by GA4GH WES.

The files follow this structure.

storage_directory/
├── <some blob id>/
| ├── <various files>
| ├── input/
| │ └── <various files generated by IRIDA Next>
| └── output/
| └── <various files generated by GA4GH WES>
├── <some other blobs>

After a workflow execution has completed, all files in the <some blob id> directory should be deleted. If you see that the <some blob id>/output/ files remain, you need to give the IRIDA Next process permission to delete the files in the file storage.

Development​

For the guide on setting up a GA4GH WES server for IRIDA Next development purposes, see this guide.