eosc.node-registry.demo
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.9%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: john-shepherdson
- License: apache-2.0
- Language: Java
- Default Branch: main
- Size: 137 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 6
Metadata Files
README.md
EOSC Node Registry (demo)
This repository contains the source code for a demonstration version of the EOSC Node Registry. See the EOSC Node Registry Architecture document for further details.
Prerequisites
Java 21 or greater is required to build and run this application.
Quick Start
- Check prerequisites and install any required software.
- Clone the repository to your local workspace.
- Build the application using
mvn clean verify. - Run the application using the following command:
mvn exec:java.
Getting Started
To compile this application, run:
bash
mvn install
This will create a WAR suitable for deploying on Java Application servers (e.g. Tomcat, Jetty...).
To compile and run this application locally run:
bash
mvn jetty:run
The application will run locally at http://localhost:8080/.
Docker
To create a Docker image, run:
bash
mvn install jib:dockerBuild -Dimage=IMAGE_TAG
Substitute IMAGE_TAG for a desired image tag. The application can then be run using
docker run -p 8080:8080 IMAGE_TAG and will be hosted on http://localhost:8080/.
Options
To set url environment variable for nodedRegistry component:
bash
export NODEREGISTRY_URL="http://localhost:1336"
Project Structure
This project uses the standard Maven project structure.
``` text
Technology Stack
Several frameworks are used in this application.
| Framework/Technology | Description | | -------------------------------------------------- | --------------------------------------------------------- | | Spring-boot | Use to create Spring-powered, production-grade applications and services | | com.h2database | Java SQL database | | org.apache.logging.log4j | Java logging framework | | Springdoc-openapi | Helps with automating the generation of API documentation using Spring Boot projects | | junit-jupiter-api | Java unit testing framework | | Gson | Java library used to convert Java Objects and/or Strings into their JSON representation | | Apache HttpComponents client | Http client | | com.google.cloud.tools | Use for building Docker and OCI images for Java applications | | org.sonarsource.scanner.maven | SonarQube scanner for Maven| | com.mycila | Checks that each source file has licence header | | org.jacoco | Java code coverage library | | org.apache.maven.plugins | Executes the unit tests of a Maven application or project |
Configuration
The initial list of nodes (and their attributes) is configured using nodes.cvs.
``` text Each line contains the details of a single node as a set of blocks.ttp client Each block is separated using a comma. Lists of items within a block are separate using a semicolon. The order of blocks is * node ID * node name * logo URI * PID URI * legal entity [Legal Entity Name;Legal Entity ROR ID] * capabilities - list of triples separated by a semicolon - [capability name;capability endpoint URI; capability version]
For example 1,CESSDA Node,https://example.com/cessdalogo.png,hdl:20.500.12345/cessda [CESSDA ERIC;https://cessda.eu/RORID], https://cessda.eu/api,[Service Monitoring;https://example.com/api/service-monitoring;1.2]; [Resource Catalogue;https://example.com/api/resource-catalogue;3.0]; [Management System (including Helpdesk);https://example.com/api/management-system;1.3] ```
Resources
Running Swagger tests
- for
Search for node by ID, use any value between 1 to 10 inclusive - for
Search for nodes by capability, use one of- Resource Catalogue
- Identity Management
- Application Workflow Management
- Service Monitoring
- Service Accounting
- Order Management
- Management System (including Helpdesk)
Owner
- Name: John Shepherdson
- Login: john-shepherdson
- Kind: user
- Location: United Kingdom
- Company: CESSDA
- Repositories: 1
- Profile: https://github.com/john-shepherdson
Citation (CITATION.cff)
#
# Copyright © 2025 EOSC Beyond
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: EOSC Node Registry (demo)
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: John
family-names: Shepherdson
email: john.shepherdson@cessda.eu
affiliation: CESSDA ERIC
GitHub Events
Total
- Release event: 6
- Delete event: 4
- Issue comment event: 18
- Push event: 56
- Pull request event: 30
- Create event: 16
Last Year
- Release event: 6
- Delete event: 4
- Issue comment event: 18
- Push event: 56
- Pull request event: 30
- Create event: 16
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 0
- Total pull requests: 14
- Average time to close issues: N/A
- Average time to close pull requests: about 4 hours
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.71
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 14
- Average time to close issues: N/A
- Average time to close pull requests: about 4 hours
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.71
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- john-shepherdson (14)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v4 composite
- github/codeql-action/analyze v3 composite
- github/codeql-action/init v3 composite
- eclipse-temurin@sha256 a0beb73cc0482c579ccff1a2df91024d8c01783d0772ad0c26f3817d3e9ad0b9 build
- tomcat 10.1-jdk21 build
- com.google.code.gson:gson 2.12.1
- com.h2database:h2
- io.github.alaugks:spring-messagesource-catalog 0.5.0
- org.apache.httpcomponents:httpclient 4.5.14
- org.apache.logging.log4j:log4j-api
- org.apache.logging.log4j:log4j-core
- org.apache.logging.log4j:log4j-slf4j-impl
- org.springdoc:springdoc-openapi-starter-webmvc-ui 2.8.4
- org.springframework.boot:spring-boot-starter-data-jpa
- org.springframework.boot:spring-boot-starter-web
- org.junit.jupiter:junit-jupiter 5.12.0 test
- org.mockito:mockito-core test
- org.springframework.boot:spring-boot-starter-test test
- actions/cache v4 composite
- actions/checkout v4 composite
- actions/setup-java v4 composite
- DavidAnson/markdownlint-cli2-action v19 composite
- actions/checkout v4 composite
