From 8cc5bce0d9e04980b67d3ce8e7027d3a47022cb6 Mon Sep 17 00:00:00 2001 From: John-Paul Navarro Date: Thu, 29 Aug 2024 16:14:14 -0500 Subject: [PATCH] Initial CiDeR Resource Group design and sample information --- public/api/cider_README.txt | 66 ++++++++ public/api/cider_resource_groups.json | 223 ++++++++++++++++++++++++++ public/api/cider_view_groups.json | 87 ++++++++++ 3 files changed, 376 insertions(+) create mode 100644 public/api/cider_README.txt create mode 100644 public/api/cider_resource_groups.json create mode 100644 public/api/cider_view_groups.json diff --git a/public/api/cider_README.txt b/public/api/cider_README.txt new file mode 100644 index 0000000..4c8c14c --- /dev/null +++ b/public/api/cider_README.txt @@ -0,0 +1,66 @@ +## +## CiDeR Resource Groups - Introduction +## + +## Background + +- CiDeR is used by multiple projects to maintain public descriptive information about resources (Affiliations) +- CiDeR includes these externally visible identifiers that are globally unique across projects (Affiliations) + -- Resource Identifiers (info_resourceid) + -- Resource Group Identifiers (info_groupid) + -- Resource Group View Identifiers (info_groupviewid) + +These identifiers should be used in other database and catalogs to associate information with CiDeR resources or +resource groups. + + +## Design + +To make the above identifiers globally unique and meaningful (at least to developers and technical staff), we have +chosen to make them look like DNS hostnames: they are derived from real owned domains that identifies their +scope and guarantees that they will be unique accross projects and affiliations. These identifiers are NOT +required to be DNS resolvable hostnames. + +A Resource Group is a collectios of Resources. + +A Resource Group View is a collections of Resource Groups that are viewed through the common interface. + + +## Example + +The ACCESS Resource Catalog needs to display resource information organized by resource groups, where resource +groups are made up of 1 or more tightly coupled resources. + +The above design would be applied to this example as follows: + +1) Associate all bridges2 related resources to a shared resource group + These resources (info_resourceid) + - bridges2-em.psc.access-ci.org + - bridges2-gpu-ai.psc.access-ci.org + - bridges2-gpu.psc.access-ci.org + - bridges2-ocean.psc.access-ci.org + - bridges2-rm..psc.access-ci.org + Would all be associated with group (info_groupid): bridges2.psc.access-ci.org + +2) Associate resource groups with the ACCESS Resource Catalog view + These resource groups (info_groupid): + - aces.tamu.access-ci.org + - bridges2.psc.access-ci.org + - expanse.sdsc.access-ci.org + - + Would all be associated with the group view (info_groupviewid): resource-catalog.access-ci.org + + +## Persona Interfaces + +Resource catalog developers: +- retrieve by API all the info_groupviewid=resource-catalog.access-ci.org associated resource groups +- retrieve by API all CiDeR resources affiliated with ACCESS, which includes what groups each resource is in +- retrieve other information from other resources that include either info_resourceid or info_groupid indicating + what resource or group the information is associated with. + +ACCESS staff: +- Define resource group views and which resoure groups are in each view + +Resource provider staff: +- Associate each of their resoures with one or more resource groups diff --git a/public/api/cider_resource_groups.json b/public/api/cider_resource_groups.json new file mode 100644 index 0000000..380ea32 --- /dev/null +++ b/public/api/cider_resource_groups.json @@ -0,0 +1,223 @@ +[ + { + "info_resourceid": "granite.ncsa.access-ci.org", + "info_groupids": [ + "granite.ncsa.access-ci.org", + ], + }, + { + "info_resourceid": "aces.tamu.access-ci.org", + "info_groupids": [ + "aces.tamu.access-ci.org", + ], + }, + "info_resourceid": "anton2.psc.access-ci.org", + "info_groupids": [ + "anton2.psc.access-ci.org", + ], + }, + { + "info_resourceid": "anvil-gpu.purdue.access-ci.org", + "info_groupids": [ + "anvil.purdue.access-ci.org", + ], + }, + { + "info_resourceid": "anvil.purdue.access-ci.org", + "info_groupids": [ + "anvil.purdue.access-ci.org", + ], + }, + { + "info_resourceid": "bridges2-em.psc.access-ci.org", + "info_groupids": [ + "bridges2.psc.access-ci.org", + ], + }, + { + "info_resourceid": "bridges2-gpu-ai.psc.access-ci.org", + "info_groupids": [ + "bridges2.psc.access-ci.org", + ], + }, + { + "info_resourceid": "bridges2-gpu.psc.access-ci.org", + "info_groupids": [ + "bridges2.psc.access-ci.org", + ], + }, + { + "info_resourceid": "bridges2-ocean.psc.access-ci.org", + "info_groupids": [ + "bridges2.psc.access-ci.org", + ], + }, + { + "info_resourceid": "bridges2-rm.psc.access-ci.org", + "info_groupids": [ + "bridges2.psc.access-ci.org", + ], + }, + { + "info_resourceid": "darwin-gpu.udel.access-ci.org", + "info_groupids": [ + "darwin.udel.access-ci.org", + ], + }, + { + "info_resourceid": "darwin-storage.udel.access-ci.org", + "info_groupids": [ + "darwin.udel.access-ci.org", + ], + }, + { + "info_resourceid": "darwin.udel.access-ci.org", + "info_groupids": [ + "darwin.udel.access-ci.org", + ], + }, + { + "info_resourceid": "delta-cpu.ncsa.access-ci.org", + "info_groupids": [ + "delta.ncsa.access-ci.org", + ], + }, + { + "info_resourceid": "delta-gpu.ncsa.access-ci.org", + "info_groupids": [ + "delta.ncsa.access-ci.org", + ], + }, + { + "info_resourceid": "delta-storage.ncsa.access-ci.org", + "info_groupids": [ + "delta.ncsa.access-ci.org", + ], + }, + { + "info_resourceid": "deltaai.ncsa.access-ci.org", + "info_groupids": [ + "delta.ncsa.access-ci.org", + ], + }, + { + "info_resourceid": "derecho-gpu.ncar.ucar.edu", + "info_groupids": [ + "derecho.ncar.access-ci.org", + ], + }, + { + "info_resourceid": "derecho.ncar.ucar.edu", + "info_groupids": [ + "derecho.ncar.access-ci.org", + ], + }, + { + "info_resourceid": "expanse-gpu.sdsc.access-ci.org", + "info_groupids": [ + "expanse.sdsc.access-ci.org", + ], + }, + { + "info_resourceid": "expanse-ps.sdsc.access-ci.org", + "info_groupids": [ + "expanse.sdsc.access-ci.org", + ], + }, + { + "info_resourceid": "expanse.sdsc.access-ci.org", + "info_groupids": [ + "expanse.sdsc.access-ci.org", + ], + }, + { + "info_resourceid": "faster.tamu.access-ci.org", + "info_groupids": [ + "faster.tamu.access-ci.org", + ], + }, + { + "info_resourceid": "grid1.osg.access-ci.org", + "info_groupids": [ + "osg.access-ci.org", + ], + }, + { + "info_resourceid": "hive.gatech.access-ci.org", + "info_groupids": [ + "hive.gatech.access-ci.org", + ], + }, + { + "info_resourceid": "jetstream2-gpu.indiana.access-ci.org", + "info_groupids": [ + "jetstream2.indiana.access-ci.org", + ], + }, + { + "info_resourceid": "jetstream2-lm.indiana.access-ci.org", + "info_groupids": [ + "jetstream2.indiana.access-ci.org", + ], + }, + { + "info_resourceid": "jetstream2-storage.indiana.access-ci.org", + "info_groupids": [ + "jetstream2.indiana.access-ci.org", + ], + }, + { + "info_resourceid": "jetstream2.indiana.access-ci.org", + "info_groupids": [ + "jetstream2.indiana.access-ci.org", + ], + }, + { + "info_resourceid": "kyric.uky.access-ci.org", + "info_groupids": [ + "kyric.uky.access-ci.org", + ], + }, + { + "info_resourceid": "launch.tamu.access-ci.org", + "info_groupids": [ + "launch.tamu.access-ci.org", + ], + }, + { + "info_resourceid": "neocortex-sdflex.psc.access-ci.org", + "info_groupids": [ + "neocortex.psc.access-ci.org", + ], + }, + { + "info_resourceid": "ookami.sbu.access-ci.org", + "info_groupids": [ + "ookami.sbu.access-ci.org", + ], + }, + { + "info_resourceid": "osn.osn.access-ci.org", + "info_groupids": [ + "osn.access-ci.org", + ], + }, + { + "info_resourceid": "ranch.tacc.access-ci.org", + "info_groupids": [ + "ranch.tacc.access-ci.org", + ], + }, + { + "info_resourceid": "stampede3.tacc.access-ci.org", + "info_groupids": [ + "stampede3.tacc.access-ci.org", + ], + }, + { + "info_resourceid": "voyager.sdsc.access-ci.org", + "info_groupids": [ + "voyager.sdsc.access-ci.org", + ], + }, +] diff --git a/public/api/cider_view_groups.json b/public/api/cider_view_groups.json new file mode 100644 index 0000000..1cc89de --- /dev/null +++ b/public/api/cider_view_groups.json @@ -0,0 +1,87 @@ +[ + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "aces.tamu.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "anvil.purdue.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "bridges2.psc.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "darwin.udel.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "darwin.udel.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "delta.ncsa.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "derecho.ncar.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "expanse.sdsc.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "faster.tamu.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "granite.ncsa.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "osg.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "hive.gatech.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "jetstream2.indiana.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "kyric.uky.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "launch.tamu.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "neocortex.psc.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "ookami.sbu.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "osn.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "ranch.tacc.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "stampede3.tacc.access-ci.org"}, + }, + { + "info_groupviewid": "resource-catalog.access-ci.org", + "info_groupid": "voyager.sdsc.access-ci.org"}, + }, + +]