Explaining GG-CE vs GRIN-Global
GRIN-Global (GG) is an ASP.Net web application running on IIS on a Windows Server. GG uses a MSSQL database to persist data:
As a web application, GRIN-Global handles incoming HTTP requests:
-
SOAP requests to
GUI.asmx
-
Public website requests
-
*.aspx
dynamic web page requests - requests for static resources (images, CSS, JS)
-
It uses shared components (the middle tier) and triggers to react to incoming data.
The user interactions with the ASP.Net application and its components in more detail:
The SOAP interface
The SOAP interface exposes a handful of methods, two of which facilitate all data exchange with GG: GetData
and SaveData
.
Remaining SOAP methods handle file upload/download, changing user language and password, lookup table stats, permission management and search.
Curator Tool
The Curator Tool interacts with GG using SOAP protocol (XML over HTTP). It requires a local installation of MSSQL express to keep a copy of Lookup tables.
GG-CE Server
GG-CE Server implements the same SOAP interface, making in backward compatible with GG and allowing for use of the Curator Tool and other software that uses the SOAP protocol.
It adds documented JSON API endpoints that make interactions with GG-CE more intuitive and building additional client software (i.e. mobile and web apps) simpler.
gg-ce-server
does not provide a "Public" website. https://gitlab.croptrust.org/grin-global/grin-global-ui implements a web interface for genebank technicians and managers.
GG-CE Deployment
GG-CE is packaged as Docker images and designed for container deployment on Windows, Linux and macos hosts. This makes it easy for IT department to deploy, manage, backup and upgrade individual components automatically.
Containers can run on different hosts as long as they are able to communicate on designated ports. Only the HTTPS port is exposed to the outside world.