Merge pull request 'fix: documentation update' (#15) from develop into main
Reviewed-on: #15
@@ -161,7 +161,6 @@ sofarr/
|
|||||||
│ └── integration/ # Supertest integration tests (nock for external HTTP)
|
│ └── integration/ # Supertest integration tests (nock for external HTTP)
|
||||||
├── docs/
|
├── docs/
|
||||||
│ ├── ARCHITECTURE.md # This document
|
│ ├── ARCHITECTURE.md # This document
|
||||||
│ └── diagrams/ # PlantUML source files
|
|
||||||
├── .gitea/workflows/
|
├── .gitea/workflows/
|
||||||
│ ├── ci.yml # Security audit + test/coverage CI jobs
|
│ ├── ci.yml # Security audit + test/coverage CI jobs
|
||||||
│ ├── build-image.yml # Docker image build and push
|
│ ├── build-image.yml # Docker image build and push
|
||||||
@@ -901,21 +900,23 @@ volumes:
|
|||||||
|
|
||||||
### CI / CD
|
### CI / CD
|
||||||
|
|
||||||
The `.gitea/workflows/` directory contains three pipeline definitions:
|
The `.gitea/workflows/` directory contains five pipeline definitions:
|
||||||
|
|
||||||
| File | Trigger | Purpose |
|
| File | Trigger | Purpose |
|
||||||
|------|---------|--------|
|
|------|---------|--------|
|
||||||
| `ci.yml` | Every push / PR | Security audit (`npm audit --audit-level=high`) + tests with V8 coverage |
|
| `ci.yml` | Every push / PR (all branches) | Security audit (`npm audit --audit-level=high`) + tests with V8 coverage |
|
||||||
| `build-image.yml` | Push to `main` / `develop` | Build and push Docker image to `docker.i3omb.com` |
|
| `build-image.yml` | Push to `release/**` or `develop` | Build and push Docker image to `reg.i3omb.com`. `release/**` pushes versioned + `latest` tags; `develop` pushes a `:develop` tag. |
|
||||||
| `create-release.yml` | Tag push (`v*`) | Create a Gitea release |
|
| `create-release.yml` | Tag push (`v*`) | Generate release notes from git log and create a Gitea release |
|
||||||
|
| `docs-check.yml` | Push / PR touching `**.md` (non-main / non-release branches) | Markdown lint + Mermaid diagram parse validation |
|
||||||
|
| `licence-check.yml` | Push / PR touching `package.json` or `package-lock.json` | Verify all production dependency licences are compatible with MIT |
|
||||||
|
|
||||||
> **Diagrams** are written in Mermaid and render natively in Gitea — no CI workflow required. See [Section 13](#13-diagrams).
|
> **Diagrams** are written in Mermaid and render natively in Gitea — no separate diagram files or CI render step required. See [Section 13](#13-diagrams).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 13. Diagrams
|
## 13. Diagrams
|
||||||
|
|
||||||
All diagrams are written in [Mermaid](https://mermaid.js.org/) and render natively in Gitea and GitHub markdown.
|
All diagrams are written in [Mermaid](https://mermaid.js.org/) and render natively in Gitea and GitHub markdown. No external tooling or PNG exports are required — the source is the diagram.
|
||||||
|
|
||||||
### 13.1 Component Diagram
|
### 13.1 Component Diagram
|
||||||
|
|
||||||
@@ -1302,6 +1303,13 @@ classDiagram
|
|||||||
+availability string
|
+availability string
|
||||||
+hash string
|
+hash string
|
||||||
+completedAt string
|
+completedAt string
|
||||||
|
+canBlocklist boolean
|
||||||
|
+addedOn number
|
||||||
|
+arrQueueId number
|
||||||
|
+arrType string
|
||||||
|
+arrInstanceUrl string
|
||||||
|
+arrContentId number
|
||||||
|
+arrContentType string
|
||||||
}
|
}
|
||||||
class TagBadge {
|
class TagBadge {
|
||||||
+label string
|
+label string
|
||||||
@@ -1346,6 +1354,7 @@ classDiagram
|
|||||||
+num_seeds number
|
+num_seeds number
|
||||||
+num_leechs number
|
+num_leechs number
|
||||||
+availability number
|
+availability number
|
||||||
|
+added_on number
|
||||||
}
|
}
|
||||||
class SonarrQueueRecord {
|
class SonarrQueueRecord {
|
||||||
+seriesId number
|
+seriesId number
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 331 KiB |
|
Before Width: | Height: | Size: 304 KiB |
|
Before Width: | Height: | Size: 473 KiB |
|
Before Width: | Height: | Size: 297 KiB |
|
Before Width: | Height: | Size: 247 KiB |
|
Before Width: | Height: | Size: 161 KiB |
|
Before Width: | Height: | Size: 206 KiB |
|
Before Width: | Height: | Size: 131 KiB |
|
Before Width: | Height: | Size: 139 KiB |