Blob Blame History Raw
# CentOS Infra and Releng documentation

!!! note
    This site is dedicated to CentOS Infrastructure documentation and is considered ***Work in progress***
    The goal is to consolidate various documentation[s] we have either through ansible inventories, some other git private repositories and/or elsewhere.


This `CentOS Infra and Releng Documentation` site contains some explanations and SOPs (Standard Operating Procedure) *but* isn't a substitute for upsream documentation from all applications/components used in the CentOS Infra. So consider this a central place that will contain :

  * pointers to upstream documentation (if existing)
  * specific notes/details about how it's implemented in infra
  * link[s] to Ansible Role[s] (which is/are really the `source of truth` on how app/infra is deployed and maintained)

Also worth knowing that it will *not* contain any sensitive information, obviously only shared through `crypted` media between trusted CentOS infra team members (but it might contain though link to other online documentation or git repositories themselves needed some authentication/ACL in place at that level, so "out of scope" for this documentation)

## Infra overview

The CentOS infra is built on top of both : 

 * [Red Hat](http://www.redhat.com) sponsored and hosted infrastructure (running critical services to build and deliver CentOS Linux / CentOS Stream / Special Interest Group[s] (SIG) content/artifacts
 * [Community sponsored](https://www.centos.org/sponsors) infra with machines all around the world (mostly dedicated bare-metal machines)

Feel free to browse all top-level sections to have a look at all services used/deployed within the CentOS infra.
Each section *should* contain (as noted above) :

 * pointers to upstream documentation (Read It First !)
 * pointers to Ansible role covering it
 * some URLs for the application (if any and/or public)
 * level of access needed to configure/update/deploy it
 * how the application/infra/service is monitored
 * some SOPs for `daily/common` operations/tasks

Worth also knowing that this site is automatically rendered from a [git repository](https://git.centos.org/centos/centos-infra-docs) (including also a way to render it locally to browse it through localhost) , so feel free to also submit Pull Request there if you find something that needs to be fixed/updated !

!!! tip
    You can use the `search` feature/box on top level to search for some specific topics or keywords

## Available Environments

While the same automation code should be used to configure all infra/services nodes within CentOS Infra, it's worth knowing that we still "divide" it into sub-sections, and so having different environments.
Let's just have a quick look at the existing environments, *each* using its own dedicated [Ansible](ansible/index.md) inventory, and so various settings and/or permitted access :

  * `CentOS main` : if not defined, all the nodes considered as "production" nodes and managed as such
    * `CentOS staging` (STG) : pre-prod environment, with limited number of nodes, but mostly used to test changes/deployments before being rolled-out to the `CentOS main` one
    * `CentOS dev`  (DEV) : really ephemeral setup pointing to very low spec machines (usually VMs) to test new stack/applications and write automation before being then deployed in `CentOS staging`
  * `CentOS CI` : everything that is configuring/deploying the infra behind `ci.centos.org` domain (public or internal)
  * `CentOS Stream MVBE` : dedicated/isolated environment for CentOS Stream 9 buildsys and having its own inventory/rollout strategy


## CentOS Infra team

See the [dedicated section](infra/team.md)