icgc-argo / icgc-argo/program-service
Create Data Center Entity and DB Tables
@Azher2Ali is already working on this.
Since Aug 30, 2023.
- Dominant language
- Java
- Stars
- 3
- Forks
- 0
- Avg merge
- 14h 34m
- Merged PRs (30d)
- 2
Description
This ticket is part of the effort to add functionality of a Data Center Registry to the Program Service:
The Program Service scope is being expanded to also act as a Data Center Registry. Data Centers represent the Regional Data Processing Centers (RDPC) that ARGO will support a network of. Each program registered in the program-service must belong to a single Data Center. The Data Centers have various connection details that also need to be stored.
Create a new entity type for Data Center, and update the Database to store this data.
The updated ERD is included at the bottom of this description. For the scope of this ticket, do not update the program entity - we will have follow up tickets to update the Program's relationship to Data Centers.
Required Changes
- Database table for Data Center and any required migration files
- Java entity / DAO to read/write from table
Details
Each Data Center entity includes descriptive strings that will be used to display information for the RDPC, plus some required connection information that can direct other services/users to the required URLs to interact with the RDPC:
There are 6 connections that each RDPC needs to publish:
- RDPC UI
- RDPC Gateway
- Analysis Song - Song where the analysis metadata generated by workflows is stored
- Analysis Score - Score where the analysis files generated by workflows are stored
- Submission Song - Song where programs will submit their file metadata
- Submission Score - Score where programs will submit their molecular file data
The following table provides a description of the properties of this new entity:
| Attribute | Req | Imm | Data Type | Field Description | Example |
|---|---|---|---|---|---|
| id PK | Y | Y | uuid | Database ID generated for Data Center. | |
| name | Y | N | string | Data Center display nameMust be Unique | OICR Toronto RDPC |
| short_name | Y | Y | string | Unique short name/code assigned to the program.Must be Unique | OICR-TORONTOOnly capitalsDash permissibleLast two letters should be country code |
| organization | N | N | string | Display text for organization operating the RDPC | OICR |
| Y | N | string (email) | Public displayed contact email for the Data Center | helpdesk@icgc-argo.org | |
| ui_url | Y | N | string (url) | URL to RDPC UI | |
| gateway_url | Y | N | string (url) | URL to RDPC Gateway (API) | |
| analysis_song_code | Y | N | string | Repository code used in ES index by maestro for the RDPC's Analysis Song | toronto-oicr.song.submission |
| analysis_song_url | Y | N | string (url) | URL to analysis Song API | |
| analysis_score_url | Y | N | string (url) | URL to analysis Score API | |
| submission_song_code | Y | Y | string | Repository code used in ES index by maestro for the RDPC's Analysis Song | toronto-oicr.song.submission |
| submission_song_url | Y | N | string (url) | URL to submission Song API | |
| submission_score_url | Y | N | string (url) | URL to submission Score API |
Updated ERD
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.