-
Notifications
You must be signed in to change notification settings - Fork 6
VRO Engineer Overview
Gabriel Zurita edited this page Oct 31, 2024
·
15 revisions
VRO software leverages a wide range of tools and technologies, categorized by their purpose within the stack:
- Java: Most of the project is built using the Spring Framework.
- Python: Domain services (partner team projects) are primarily written in Python.
- Ruby: One domain service is currently written in Ruby.
- RabbitMQ: Serves as the primary communication bus between microservices, using AMQP architecture.
-
Gradle: Utilized for build automation. Refer to the
buildSrc
folder for details. -
Docker: Extensively used for local development and deployments.
- Note: In most cases, Docker Desktop is not provided. Colima is recommended as an alternative container runtime.
- Postgres: AWS RDS Postgres is employed for database services, managed through Helm charts.
- Redis: Currently in the process of being removed from the stack.
- Kubernetes: VRO’s DevOps operations are supported by LHDI infrastructure.
- ArgoCD: Used for deployment management (see this issue).
VRO also utilizes these key repositories for project management and deployments:
- VRO Public Repo: Main repository for the VRO project.
- VRO Internal Repo: Used for running SecRel scans.
- ArgoCD Repo: Contains the ArgoCD URL for viewing deployments.
- VRO Skeleton: VRO Python starter project. Eventually, Java and Ruby skeleton projects will be added.
- VRO Local Dev Environment Setup: How to get the VRO dev environment working locally.
- VRO Architecture Design Diagram: An overview of VRO's architecture.
- VRO Engineer Onboarding: Onboarding guidelines for new engineers.
- VRO Services, Points of Contact, and Issue Escalation Paths: Use this document to familiarize yourself with partner teams, services, and issue escalation paths.
- On-Call Overview: Guidelines for on-call duties.