Skip to content

Latest commit

 

History

History
73 lines (51 loc) · 3.78 KB

README.md

File metadata and controls

73 lines (51 loc) · 3.78 KB

Operate-First Apps

This repository serves as a centralized source of truth for the Operate First Community Cloud Offering.

In this repository you will find various OCP/K8s manifests that define the desired state of all our clusters and different services deployed on these clusters.

All manifests can be generated using kustomize. Though some builds may include encrypted data that require additional credentials (read more about how we encrypt files here).

All manifests found through this repo are deployed by our ArgoCD.

Documentation

All documentation can be found here.

What is an "App"?

Apps or Applications in this context refers to the ArgoCD notion of Application, as described in the ArgoCD docs. In short, you can think of an App as a collection of manifests that have a destination cluster where they should be deployed.

How does it work?

This diagram provides a simple illustration of the structure of a typical Application in this repo. In this illustration you can imagine an Application to be any group of manifests. These manifests belonging to an Application often make up a full deployment of a service which has end users (e.g. Grafana). Though sometimes, an Application may be just be a way to logically group a collection of manifests, like in the case of cluster-scope Application which harbors all cluster wide resources, configurations, and privileged resources.

Once a group of manifests are organized into a directory, they can be deployed using ArgoCD. To do this you simply need to create the application within ArgoCD, docs on how to do this can be found here.

Repo structure

You will also notice each app adheres to a structure made up of bases and overlays. This is a structure commonly found when using Kustomize. base directories contain manifests/configurations that are common to multiple clusters and generally don't harbor any cluster specific details. Within the overlays directory you'll find cluster specific configurations. A cluster specific folder within Overlays will inherit the manifests from base folders as needed, while also making patches/amendments specific to that cluster.

Contributing

We suggest ramping up on the following before attempting to work with the Apps repo:

We encourage you to browse around the following repos for issues you would be interested in tackling:

Beginner friendly issues are marked "Good first issue". Though you are welcome to take on any issue that interests you. If an issue is unclear or requires more information, feel free to reach out to us.

Please be sure to read the contributing docs here before making a PR.