docs: Enhance Gitea Organization Management document with clearer definitions and improved structure

This commit is contained in:
Le Hoang Nam 2025-09-15 13:32:06 +07:00
parent 4a5a2ecc50
commit fa96cbf11d

View File

@ -5,26 +5,28 @@ title: Gitea Organization
# Gitea Organization Management
This document outlines the organizational structure, permissions, and management practices for our Gitea instance. It defines how teams are organized, what permissions they have, and how organizational resources are managed.
This document defines the organizational structure, permissions, and management practices for our Gitea instance. It explains how teams are organized, what permissions they hold, and how resources are managed across projects.
## Organization Overview
Our Gitea instance serves as the central repository management platform for all development projects. Organizations are structured around **projects** rather than functional teams, providing clear project boundaries and focused development workflows.
Our Gitea instance serves as the central repository management platform for all development projects. Organizations are structured around **projects** rather than functional teams, ensuring clear boundaries and streamlined workflows.
### Key Benefits
- **Project Isolation** → Each project has its own organization with dedicated repositories
- **Technology Separation** → Clear boundaries between different technology stacks
- **Access Control** → Project-specific permissions and team assignments
- **Resource Management** → Organized repositories, teams, and settings per project
- **Scalability** → Easy to add new projects and development initiatives
---Continuous Integration/Continuous Deployment
* **Project Isolation** → Each project has its own organization with dedicated repositories.
* **Technology Separation** → Distinct boundaries between technology stacks.
* **Access Control** → Project-specific permissions and team assignments.
* **Resource Management** → Organized repositories, teams, and settings per project.
* **Scalability** → Easy to add new projects or initiatives.
---
## Organization Structure
Our Gitea instance is organized around **project-based organizations** rather than functional teams. Each organization represents a specific project or development initiative, allowing for clear project isolation and focused development workflows.
### 🎮 **Main Development Projects**
### 🎮 Main Development Projects
Main Development Projects are end-user facing products or core game systems. These include all primary game titles, lobbies, and shared frameworks that are directly part of production or delivery.
- Full Name Pattern: `Project <Engine/Platform> <ProjectName>`
@ -36,57 +38,23 @@ Main Development Projects are end-user facing products or core game systems. The
- `Project Cocos Joker` → Project Game for Joker using Cocos Creator Engine
- `Project Cocos Lobby` → Project Lobby using Cocos Creator Engine
### 🛠 **Support Organizations**
### 🛠 Support Organizations
Support Organizations are internal or auxiliary projects that provide tools, resources, infrastructure, or research to assist developers. They are not directly delivered to end-users but are essential for efficient development.
- Full Name Pattern: `Project <Purpose>`
- Name Pattern: `dev-<Purpose>`
**Examples:**
- `Project Developer Probation` → Project for Developer probation
- `Project Developer Probation` → Project for Developer training/probation
- `Project Development Tools` → Project for Development tool
- `Project Research Development` → Project for Research development
---
## Permission Levels
## Team Management
### **👑 Owners Team**
Holds the highest level of authority within an organization.
- Create, modify, and delete any resource within the organization
- Manage organization-wide settings, policies, and access controls
- Add or remove teams and members
- Configure organization-wide permissions
- Approve major changes and policy updates
- Full access to all repositories and resources
### **👥 Leaders Team**
Responsible for managing project execution within their organization.
- Create repositories within the organizations scope
- Manage team member permissions and assignments
- Configure repository settings and branch protection rules
- Review and approve pull requests
- Oversee project workflows and development processes
- Access to organization-specific repositories
### **💻 Developers Team**
Responsible for day-to-day coding and implementation.
- Create new branches and submit pull requests
- Access assigned repositories and project resources
- Participate in code reviews and technical discussions
- Implement features and contribute to project development
- Work only within their organizations repositories
### **🔧 Builders Team**
Automation account responsible for executing builds and deployments.
- Execute CI/CD[^1] pipelines and automated build processes
- Run build configurations and build scripts created by developers
---
# Team Management Guidelines
## Team Creation Process
### Team Creation Process
1. **Request Submission** → Team Leader submits a team creation request.
2. **HoD[^2] Approval** → Head of Department reviews and approves the request.
@ -94,40 +62,47 @@ Automation account responsible for executing builds and deployments.
4. **Member Assignment** → HoD adds members to the team.
5. **Repository Access** → Repositories are assigned to the team as needed.
## Team Structure Guidelines
### Team Structure
### Base Team Structure
All organizations follow a standardized team structure with **four core team types**:
All organizations follow a standardized team structure with **four core team types** (structure can be modified as needed):
#### 👑 Owners Team
* **Purpose:** Provide full administrative control over the organization.
* **Members:** Head of Department (HoD) and senior management for that organization.
* **Permissions:** Create, modify, and delete resources within the organization.
* **Scope:** Limited to the specific organization they own.
* **Size:** 13 members per organization (typically HoD and senior technical leads).
* **Members:** Head of Department (HoD)[^1] and senior management for that organization.
* **Permissions:**
* Create, modify, and delete resources within the organization.
* Manage organization-wide settings, policies, and access controls.
* Add or remove teams and members.
* Approve major changes and policy updates.
* Full access to all repositories.
#### 👥 Leaders Team
* **Purpose:** Project management and technical leadership.
* **Members:** Team Leaders.
* **Permissions:** Manage team members, review and approve pull requests, configure repositories and workflows.
* **Size:** 25 members per organization.
* **Permissions:**
* Create repositories.
* Manage team member permissions and assignments.
* Configure repository settings and branch protection rules.
* Review and approve pull requests.
* Oversee project workflows.
#### 💻 Developers Team
* **Purpose:** Core development work and feature implementation.
* **Members:** Game Developers.
* **Permissions:** Create branches, submit pull requests, access assigned repositories, and participate in code reviews.
* **Size:** 310 members per organization (varies by project size).
* **Permissions:**
* Create branches and submit pull requests.
* Access assigned repositories and project resources.
* Participate in code reviews and technical discussions.
* Implement features and contribute to development.
#### 🔧 Builders Team
* **Purpose:** Manage build and deployment automation.
* **Members:** Automation accounts (not human users).
* **Permissions:** Execute CI/CD pipelines, run build scripts, and perform automated deployments.
* **Size:** 1 automation account per organization.
* **Members:** Automation accounts (and optionally DevOps engineers).
* **Permissions:**
* Manage and run CI/CD pipelines.
* Execute build configurations and scripts.
* Perform automated deployments.
* Hold cross-organization access for shared infrastructure.
---
@ -141,5 +116,6 @@ All organizations follow a standardized team structure with **four core team typ
* **Isolation:** Owners of one organization cannot access or modify another organization.
---
[^1]: Continuous Integration/Continuous Deployment
[^2]: Head of Department