Description

This article describes the ports and configurations of a G-Repository Server within a test environment.


In This Article


Basic Port Diagram

G-Repository Server needs three ports to communicate: one for external communication and two for internal communication. 

  • External Communication
    • cloudPort - 443 (default) - GenRocket Cloud Components are only reachable via HTTPS.
    • The port number may be changed via a Proxy Server communicating to the cloud via port 443.

  • Internal Communication
  • mainPort - 8020 (default) - Receivers client requests.
  • downloadPort - 8021 (default) - Downloads Repo Components to the Client.
  • Both port numbers may be changed at DevOps's discretion.
  • The user enters the port number (configured by DevOps) during G-Repository Server installation
  • See Steps 5 and 6 in this example for server port and download port entry during installation. 



G-Repository to GenRocket Cloud Communication Frequency

G-Repository Server calls the GenRocket Cloud on four occasions/events:

  • Upon Launch - calls GenRocket Cloud and requests a download of any components that have been added, modified, or deleted on any Project Version.

  • Upon Client Request - calls GenRocket Cloud and requests a download of any components that have been added, modified, or deleted on the specific Project Version for the given Repo.

  • Every 60 Minutes (immutable) - calls GenRocket Cloud and requests a download of any components that have been added, modified, or deleted on any Project Version.

  • G-Delta Scheduled Event - If an admin is created and registers a G-Delta event to be monitored by the given G-Repository on a scheduled cycle, it will execute the G-Delta event, zip and encrypt the results, and push to the GenRocket S3 Bucket 


Detailed Port Configuration of G-Repository Server (GRS)

The diagram below shows a detailed deployment of a G-Repository Server within a Test Environment. In this example, the G-Repository Server is installed on a machine separate from a client machine that would access it via an engine using the G-Repository Client API (GRCA). 

Here are key points to observe from the diagram:

  • GRS is installed on a machine whose IP address is 192.168.100.10.
  • GRS has its cloudPort configured to port 443.
  • GRS has its mainPort configured to port 8020. 
  • GRS has its downloadPort configured to port 8021.
  • GRS is communicating directly to GenRocket Cloud over HTTPS via port 443.
    • Each GenRocket Cloud component has its own unique URL 
    • Each GenRocket Cloud component only allows access over HTTPS via port 443.
  • The Client is installed on a machine whose IP address is 192.168.100.11.
  • The Client communicates with the GRS via the G-Repository Client API (GRCA).
  • GRCA accesses the GRS via a URL and Port Number of the where the GRS is installed.
    • mainPort - 192.168.100.10:8020
    • downloadPort - 192.168.100.10:8021

Notes:

  • GRS is only capable of accessing ports your DevOps team makes available.
  • Configuring your machines' internal protocols is your DevOps team's responsibility. 
  • Selecting and opening port numbers is left to the discretion of your DevOps team.



Detailed Port Configuration of G-Repository Server (GRS) via Proxy

The diagram below shows a detailed deployment of a G-Repository Server within a Test Environment where the G-Repository Server indirectly accesses GenRocket Cloud via a Proxy Server. In this example, the G-Repository Server is installed on a machine separate from a client machine that would access it. 

Here are key points to observe from the diagram:

  • GRS is installed on a machine whose IP address is 192.168.100.10.
  • A Proxy Server has been installed on the same machine as the GRS.
  • The Proxy Server only has access to port 443.
  • The Proxy Server only allows access to port 443 via port 8443.
  • GRS has its cloudPort configured to port 8443.
  • GRS has its mainPort configured to port 8020. 
  • GRS has its downloadPort configured to port 8021.
  • GRS is communicating indirectly to GenRocket Cloud via port 8443.