diff --git a/business.md.-.md b/business.md.-.md new file mode 100644 index 0000000..3383d79 --- /dev/null +++ b/business.md.-.md @@ -0,0 +1,100 @@ +## Document scope (onboarding only) + +This file is a **short onboarding brief** for quick context — not a project plan or roadmap. +Do not duplicate content from .doc/plans/ If present in the repo. +Keep the whole document under ~120 lines. Mark inferred claims with _(inferred)_. + +## Questions this document must answer + +- Why does this repo exist for the organization? +- Who are the stakeholders? + +doc_type: business + +Required sections: +## Business context +## Value proposition +## Stakeholders +## Domain glossary +## Risks and dependencies + +## Business context + +**gitjet.ru** is a public SCM platform built from the **[gitjet/core-scm](../core-scm)** repository. The deployment process involves CI/CD pipelines defined in `.gitjet/workflows/core-scm-production.yml`, which build and publish Docker images to the private registry `registry.gitjet.ru/gitjet/core-scm:`. Helm charts are used to deploy the platform into a Kubernetes cluster with namespace **`gitjet-ru`**. + +## Value proposition + +**gitjet.ru** provides an easy-to-use platform for managing repositories and CI/CD pipelines, allowing developers to collaborate and automate their workflows. It is designed to be scalable and reliable, providing a robust infrastructure for hosting multiple projects. + +## Stakeholders + +The stakeholders of **gitjet.ru** include: + +1. Developers +2. Project managers +3. IT administrators +4. End-users + +## Domain glossary + +- **SCM:** Software Configuration Management +- **CI/CD:** Continuous Integration and Continuous Deployment +- **Docker:** A containerization platform for running applications in isolated environments +- **Kubernetes:** An open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications + +## Risks and dependencies + +**gitjet.ru** has the following risks and dependencies: + +1. Dependency on GitJet platform for managing repositories and CI/CD pipelines +2. Dependency on private registry for storing Docker images +3. Dependency on Kubernetes cluster for deploying the platform + + +## Service summary + +**gitjet.ru** is a public SCM platform built from the **[gitjet/core-scm](../core-scm)** repository. The deployment process involves CI/CD pipelines defined in `.gitjet/workflows/core-scm-production.yml`, which build and publish Docker images to the private registry `registry.gitjet.ru/gitjet/core-scm:`. Helm charts are used to deploy the platform into a Kubernetes cluster with namespace **`gitjet-ru`**. + +## Components and runtime units + +**gitjet.ru** consists of the following components: + +1. CI/CD pipeline (defined in `.gitjet/workflows/core-scm-production.yml`) +2. Docker image build process +3. Helm chart deployment + +## External dependencies + +**gitjet.ru** relies on the following external services: + +1. GitJet platform for managing repositories and CI/CD pipelines +2. Private registry for storing Docker images +3. Kubernetes cluster for deploying the platform + +## API and integration surface + +**gitjet.ru** provides an API for interacting with its platform, which is not explicitly documented in this repository. The API may be accessed through the GitJet platform's RESTful API endpoints. + +## Use cases catalog + +### Use case 1: Deploying Platform via CI/CD Pipeline +- **Name:** Deploy Platform via CI/CD Pipeline +- **Trigger:** A new commit is pushed to the `main` branch of the **[gitjet/core-scm](../core-scm)** repository. +- **Components:** CI/CD pipeline (defined in `.gitjet/workflows/core-scm-production.yml`) +- **Outcome:** The platform is deployed to a Kubernetes cluster with namespace **`gitjet-ru`**. +- **Evidence path:** [`.gitjet/workflows/core-scm-production.yml`](../core-scm/.gitjet/workflows/core-scm-production.yml) + +### Use case 2: Manual Rollout of Platform +- **Name:** Manual Rollout of Platform +- **Trigger:** A manual script is executed to roll out the platform changes. +- **Components:** `core-scm/deploy/helm-upgrade-k3s-lab.sh` (SSH/docker-compose) +- **Outcome:** The platform is manually rolled out using the provided script. +- **Evidence path:** `core-scm/deploy/helm-upgrade-k3s-lab.sh` + +## CI/CD and automation hints + +The deployment process for **gitjet.ru** is automated via GitJet's CI/CD pipelines, which are defined in the `.gitjet/workflows/core-scm-production.yml` file. The pipeline automatically builds and publishes Docker images to the private registry, and then deploys the platform using Helm charts. + +## Data and storage + +**gitjet.ru** does not store any data or files in a dedicated storage system. All data is managed by the GitJet platform. \ No newline at end of file