{"id":42012250,"url":"https://github.com/metrumresearchgroup/gogridengine","last_synced_at":"2026-01-26T02:43:15.532Z","repository":{"id":57498485,"uuid":"209555963","full_name":"metrumresearchgroup/gogridengine","owner":"metrumresearchgroup","description":"Serialization for Sun Grid Engine QStat XML Output","archived":false,"fork":false,"pushed_at":"2024-03-19T18:50:54.000Z","size":132,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-06-21T19:51:22.902Z","etag":null,"topics":["gridengine","serialization","serialization-library","sun"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/metrumresearchgroup.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-19T13:05:00.000Z","updated_at":"2024-01-04T19:51:35.000Z","dependencies_parsed_at":"2024-06-21T18:54:58.435Z","dependency_job_id":"25685fb5-f507-4502-b150-af017b3976e5","html_url":"https://github.com/metrumresearchgroup/gogridengine","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/metrumresearchgroup/gogridengine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metrumresearchgroup%2Fgogridengine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metrumresearchgroup%2Fgogridengine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metrumresearchgroup%2Fgogridengine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metrumresearchgroup%2Fgogridengine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metrumresearchgroup","download_url":"https://codeload.github.com/metrumresearchgroup/gogridengine/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metrumresearchgroup%2Fgogridengine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28765343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T02:25:41.078Z","status":"ssl_error","status_checked_at":"2026-01-26T02:24:28.809Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gridengine","serialization","serialization-library","sun"],"created_at":"2026-01-26T02:43:14.942Z","updated_at":"2026-01-26T02:43:15.521Z","avatar_url":"https://github.com/metrumresearchgroup.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=metrumresearchgroup_gogridengine\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=metrumresearchgroup_gogridengine)\n\n[![Coverage Status](https://coveralls.io/repos/github/metrumresearchgroup/gogridengine/badge.svg)](https://coveralls.io/github/metrumresearchgroup/gogridengine)\n\n# SunGrid Engine Serialization\n\nThis library will allow you to take the SGE XML output from queue status and serialize it programmatically into Go objects. As a note, natively unserializing will provide a ResourceList object containing all of the dynamic resources serialized into strings.\n\nThat's not exactly sane for programming, so several helper / receiver methods have been added to the ReceiverList allowing you to get structured values back for the important ones. \n\n# Example\n\n```\nsource := `\u003c?xml version='1.0'?\u003e\n \u003cjob_info  xmlns:xsd=\"http://arc.liv.ac.uk/repos/darcs/sge/source/dist/util/resources/schemas/qstat/qstat.xsd\"\u003e\n   \u003cqueue_info\u003e\n\t \u003cQueue-List\u003e\n\t   \u003cname\u003eall.q@magicalhostname\u003c/name\u003e\n\t   \u003cqtype\u003eBIP\u003c/qtype\u003e\n\t   \u003cslots_used\u003e32\u003c/slots_used\u003e\n\t   \u003cslots_resv\u003e0\u003c/slots_resv\u003e\n\t   \u003cslots_total\u003e36\u003c/slots_total\u003e\n\t   \u003cload_avg\u003e31.63000\u003c/load_avg\u003e\n\t   \u003carch\u003elx-amd64\u003c/arch\u003e\n\t   \u003cresource name=\"load_avg\" type=\"hl\"\u003e31.630000\u003c/resource\u003e\n\t   \u003cresource name=\"load_short\" type=\"hl\"\u003e31.700000\u003c/resource\u003e\n\t   \u003cresource name=\"load_medium\" type=\"hl\"\u003e31.630000\u003c/resource\u003e\n\t   \u003cresource name=\"load_long\" type=\"hl\"\u003e31.680000\u003c/resource\u003e\n\t   \u003cresource name=\"arch\" type=\"hl\"\u003elx-amd64\u003c/resource\u003e\n\t   \u003cresource name=\"num_proc\" type=\"hl\"\u003e36\u003c/resource\u003e\n\t   \u003cresource name=\"mem_free\" type=\"hl\"\u003e57.353G\u003c/resource\u003e\n\t   \u003cresource name=\"swap_free\" type=\"hl\"\u003e0.000\u003c/resource\u003e\n\t   \u003cresource name=\"virtual_free\" type=\"hl\"\u003e57.353G\u003c/resource\u003e\n\t   \u003cresource name=\"mem_total\" type=\"hl\"\u003e58.973G\u003c/resource\u003e\n\t   \u003cresource name=\"swap_total\" type=\"hl\"\u003e0.000\u003c/resource\u003e\n\t   \u003cresource name=\"virtual_total\" type=\"hl\"\u003e58.973G\u003c/resource\u003e\n\t   \u003cresource name=\"mem_used\" type=\"hl\"\u003e1.619G\u003c/resource\u003e\n\t   \u003cresource name=\"swap_used\" type=\"hl\"\u003e0.000\u003c/resource\u003e\n\t   \u003cresource name=\"virtual_used\" type=\"hl\"\u003e1.619G\u003c/resource\u003e\n\t   \u003cresource name=\"cpu\" type=\"hl\"\u003e89.100000\u003c/resource\u003e\n\t   \u003cresource name=\"m_topology\" type=\"hl\"\u003eSCTTCTTCTTCTTCTTCTTCTTCTTCTTSCTTCTTCTTCTTCTTCTTCTTCTTCTT\u003c/resource\u003e\n\t   \u003cresource name=\"m_topology_inuse\" type=\"hl\"\u003eSCTTCTTCTTCTTCTTCTTCTTCTTCTTSCTTCTTCTTCTTCTTCTTCTTCTTCTT\u003c/resource\u003e\n\t   \u003cresource name=\"m_socket\" type=\"hl\"\u003e2\u003c/resource\u003e\n\t   \u003cresource name=\"m_core\" type=\"hl\"\u003e18\u003c/resource\u003e\n\t   \u003cresource name=\"m_thread\" type=\"hl\"\u003e36\u003c/resource\u003e\n\t   \u003cresource name=\"np_load_avg\" type=\"hl\"\u003e0.878611\u003c/resource\u003e\n\t   \u003cresource name=\"np_load_short\" type=\"hl\"\u003e0.880556\u003c/resource\u003e\n\t   \u003cresource name=\"np_load_medium\" type=\"hl\"\u003e0.878611\u003c/resource\u003e\n\t   \u003cresource name=\"np_load_long\" type=\"hl\"\u003e0.880000\u003c/resource\u003e\n\t   \u003cresource name=\"qname\" type=\"qf\"\u003eall.q\u003c/resource\u003e\n\t   \u003cresource name=\"hostname\" type=\"qf\"\u003eip-172-16-2-102.us-west-2.compute.internal\u003c/resource\u003e\n\t   \u003cresource name=\"slots\" type=\"qc\"\u003e4\u003c/resource\u003e\n\t   \u003cresource name=\"tmpdir\" type=\"qf\"\u003e/tmp\u003c/resource\u003e\n\t   \u003cresource name=\"seq_no\" type=\"qf\"\u003e0\u003c/resource\u003e\n\t   \u003cresource name=\"rerun\" type=\"qf\"\u003e0.000000\u003c/resource\u003e\n\t   \u003cresource name=\"calendar\" type=\"qf\"\u003eNONE\u003c/resource\u003e\n\t   \u003cresource name=\"s_rt\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_rt\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_cpu\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_cpu\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_fsize\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_fsize\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_data\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_data\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_stack\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_stack\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_core\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_core\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_rss\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_rss\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"s_vmem\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"h_vmem\" type=\"qf\"\u003einfinity\u003c/resource\u003e\n\t   \u003cresource name=\"min_cpu_interval\" type=\"qf\"\u003e00:05:00\u003c/resource\u003e\n\t   \u003cjob_list state=\"running\"\u003e\n\t\t \u003cJB_job_number\u003e4282\u003c/JB_job_number\u003e\n\t\t \u003cJAT_prio\u003e0.50500\u003c/JAT_prio\u003e\n\t\t \u003cJB_name\u003eRun478\u003c/JB_name\u003e\n\t\t \u003cJB_owner\u003euser\u003c/JB_owner\u003e\n\t\t \u003cstate\u003er\u003c/state\u003e\n\t\t \u003cJAT_start_time\u003e2019-09-15T15:26:36\u003c/JAT_start_time\u003e\n\t\t \u003cslots\u003e1\u003c/slots\u003e\n\t   \u003c/job_list\u003e\n\t \u003c/Queue-List\u003e\n   \u003c/queue_info\u003e\n   \u003cjob_info\u003e\n   \u003c/job_info\u003e\n \u003c/job_info\u003e`\n\n\tvar info JobInfo\n\txml.Unmarshal([]byte(source), \u0026info)\n```\n\n#Environment Variables\nGOGRIDENGINE_TEST : If set to \"true\", will trigger test mode where the library will look to generated content and not try to use qstat\nGOGRIDENGINE_TEST_SOURCE: If set, should be a URL to XML from `qstat -xml` output which will be used for testing","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetrumresearchgroup%2Fgogridengine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetrumresearchgroup%2Fgogridengine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetrumresearchgroup%2Fgogridengine/lists"}