Skip to content

About Unmarshal error service-info TES 1.0.0 #55

@manabuishii

Description

@manabuishii

When py-tes unmarshall service-info of TES 1.0.0(TESK), it creates error.

py-tes is installed with this command

pip install "py-tes @ git+https://github.com/ohsu-comp-bio/py-tes.git@5379b2a08bc911f7af55bd835dbd85aad0124c6a"

Actual error log is here.
This error occurred when I throw CWL job using toil.

$ toil-cwl-runner --batchSystem tes --tesEndpoint=http://10.152.183.122:8080/ga4gh/tes/ hello_world_fileoutput.cwl hello_world_fileoutput.yaml
[2023-11-02T20:36:09+0900] [MainThread] [I] [cwltool] Resolved 'hello_world_fileoutput.cwl' to 'file:///home/ubuntu/work/cwl-samples-2023/hello_world_fileoutput.cwl'
SUCCESS
Traceback (most recent call last):
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/tes/utils.py", line 93, in unmarshal
    output = o(**r)
TypeError: ServiceInfo.__init__() got an unexpected keyword argument 'id'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ubuntu/work/venv-toil/bin/toil-cwl-runner", line 8, in <module>
    sys.exit(main())
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/toil/cwl/cwltoil.py", line 3860, in main
    outobj = toil.start(wf1)
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/toil/common.py", line 1043, in start
    self._batchSystem = self.createBatchSystem(self.config)
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/toil/common.py", line 1192, in createBatchSystem
    return batch_system(**kwargs)
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/toil/batchSystems/tes.py", line 86, in __init__
    server_info = self.tes.get_service_info()
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/tes/client.py", line 127, in get_service_info
    return unmarshal(response.json(), ServiceInfo)
  File "/home/ubuntu/work/venv-toil/lib/python3.10/site-packages/tes/utils.py", line 98, in unmarshal
    raise UnmarshalError(msg)
tes.utils.UnmarshalError: {'id': 'uk.ac.ebi.tsc.tesk', 'name': 'TESK', 'type': {'group': 'org.ga4gh', 'artifact': 'tes', 'version': '1.0'}, 'description': 'GA4GH TES Server implementation for Kubernetes', 'organization': {'name': 'EMBL-EBI', 'url': 'https://www.ebi.ac.uk/'}, 'contactUrl': 'https://github.com/EMBL-EBI-TSI/TESK/issues', 'documentationUrl': 'https://github.com/EMBL-EBI-TSI/TESK', 'createdAt': '2021-04-06T00:00:00Z', 'environment': 'dev', 'version': '1.0', 'storage': ['ftp://ftp-private.ebi.ac.uk']} could not be unmarshalled to type: ServiceInfo
TypeError: ServiceInfo.__init__() got an unexpected keyword argument 'id'

I disccussed with @uniqueg we see these documents (maybe these).

https://github.com/ga4gh/task-execution-schemas/blob/9e9c5aa2648d683d5574f9dbd63a025b4aea285d/openapi/task_execution_service.openapi.yaml#L540-L556

https://raw.githubusercontent.com/ga4gh-discovery/ga4gh-service-info/v1.0.0/service-info.yaml#/components/schemas/Service

my TES server's service-info is here
my TES server is TESK.

$ curl http://10.152.183.122:8080/ga4gh/tes/v1/service-info
{
  "id" : "uk.ac.ebi.tsc.tesk",
  "name" : "TESK",
  "type" : {
    "group" : "org.ga4gh",
    "artifact" : "tes",
    "version" : "1.0"
  },
  "description" : "GA4GH TES Server implementation for Kubernetes",
  "organization" : {
    "name" : "EMBL-EBI",
    "url" : "https://www.ebi.ac.uk/"
  },
  "contactUrl" : "https://github.com/EMBL-EBI-TSI/TESK/issues",
  "documentationUrl" : "https://github.com/EMBL-EBI-TSI/TESK",
  "createdAt" : "2021-04-06T00:00:00Z",
  "environment" : "dev",
  "version" : "1.0",
  "storage" : [ "ftp://ftp-private.ebi.ac.uk" ]
}

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions