forked from Fediversity/meta
converted to uml and changes after meeting
This commit is contained in:
parent
5ff10fafd8
commit
feda821b85
BIN
architecture-docs/Fediversity-architecture-notes-1.png
Normal file
BIN
architecture-docs/Fediversity-architecture-notes-1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 59 KiB |
|
@ -1,9 +1,6 @@
|
|||
```mermaid
|
||||
graph TB
|
||||
|
||||
Core[<b>Core-services</b><br/><small>DNS<br/>Email<br/>identity_management<br/>secret_management<br/>authentication<br/>SASL</small>]
|
||||
|
||||
|
||||
subgraph Management
|
||||
A[Nix-panel] --> I
|
||||
Z[(central database<br/>Netbox)]--> B[Orchestrator<br/>NixOps] --> D[Proxmox]
|
||||
|
@ -11,9 +8,10 @@ subgraph Management
|
|||
B --> G[DNS]
|
||||
B --> F[Email]
|
||||
B --> J[Garage]
|
||||
B --> H[IdentityManagement]
|
||||
B --> H[<b>IdentityManagement</b><br/><small>Authentication<br/>Authorization<br/>Accounting</small>]
|
||||
I[Nix-Panel API] --> Z
|
||||
H --> I
|
||||
Core[<b>Core-services</b><br/><small>DNS<br/>Email<br/>identity_management<br/>secret_management<br/>authentication<br/>SASL</small>]
|
||||
end
|
||||
|
||||
|
||||
|
@ -86,3 +84,16 @@ Attendees: Robert, Valentin, Koen, Kevin
|
|||
- But for the full integration to work one will have to understand the whole system anyway
|
||||
- At that point one may as well keep maintaining it or rewrite it
|
||||
- Koen: The existing thing needs work regardless, and would like to move away from PHP to Python anyway
|
||||
|
||||
## Architecture meeting
|
||||
- Identitymanagement == AAA
|
||||
- Central database is two databases, one accounting and one state
|
||||
- Datamodel -> dns, aaa, ip, machines, etc.
|
||||
- Data complete first, model later
|
||||
- Data flows/processes
|
||||
- Describe casestories
|
||||
- Nixos -> VM
|
||||
- LinuxOS out of scope
|
||||
- Services and Fediservices one box
|
||||
- move secretsmanagement
|
||||
- move core-services to management
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 463 KiB After Width: | Height: | Size: 74 KiB |
80
architecture-docs/architecture.uml
Normal file
80
architecture-docs/architecture.uml
Normal file
|
@ -0,0 +1,80 @@
|
|||
@startuml
|
||||
|
||||
package Management {
|
||||
object "Nix-Panel" as A {
|
||||
}
|
||||
object "Nix-Panel API" as B {
|
||||
}
|
||||
object "**Central Database**" as CD {
|
||||
Netbox
|
||||
Accounting
|
||||
State
|
||||
Secrets
|
||||
}
|
||||
object "**Orchestrator**" as Orch {
|
||||
NixOps
|
||||
}
|
||||
object "**Identity Management**" as AAA {
|
||||
Authentication
|
||||
Authorization
|
||||
Accounting
|
||||
}
|
||||
object "**Central Services**" as CS {
|
||||
DNS
|
||||
Email
|
||||
}
|
||||
}
|
||||
|
||||
package Hardware {
|
||||
object "**Systems**" as Sys {
|
||||
Operating System
|
||||
Network
|
||||
Storage
|
||||
Virtualisation
|
||||
}
|
||||
object "**Storage**" as Stor {
|
||||
exclusive_filesystem
|
||||
}
|
||||
object "**S3 storage**" as S3 {
|
||||
Garage
|
||||
}
|
||||
}
|
||||
|
||||
package Virtualization {
|
||||
object "**Nixos VM A**" as NixA {
|
||||
Application A
|
||||
Application B
|
||||
}
|
||||
object "**Nixos VM B**" as NixB {
|
||||
Application C
|
||||
}
|
||||
map "**Application options**" as App {
|
||||
Edumeet => Matrix
|
||||
NextCloud => Pixelfed
|
||||
Webmail => Peertube
|
||||
Hedgehoc => Mastodon
|
||||
Project planning => Owncast
|
||||
Office => Castopod
|
||||
}
|
||||
}
|
||||
|
||||
Sys --> Stor
|
||||
Sys::Virtualisation -l-> Virtualization
|
||||
NixA --> Stor
|
||||
NixB --r--> S3
|
||||
NixA --> App
|
||||
NixB --> App
|
||||
NixA --> AAA
|
||||
NixB --> AAA
|
||||
A -d-> B
|
||||
B -d-> CD
|
||||
CD <-d-> Orch
|
||||
Orch -r-> CS::DNS
|
||||
Orch -r-> CS::Email
|
||||
Orch -d-> Virtualization
|
||||
Orch --> NixA
|
||||
Orch --> NixB
|
||||
Orch --> S3
|
||||
Orch <-l-> AAA
|
||||
B -d-> AAA
|
||||
@enduml
|
BIN
planning/gantt.png
Normal file
BIN
planning/gantt.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 79 KiB |
59
planning/gantt.uml
Normal file
59
planning/gantt.uml
Normal file
|
@ -0,0 +1,59 @@
|
|||
@startgantt
|
||||
|
||||
<style>
|
||||
ganttDiagram {
|
||||
task {
|
||||
BackGroundColor GreenYellow
|
||||
LineColor Green
|
||||
}
|
||||
undone {
|
||||
BackGroundColor Yellow
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
Project starts 2023-12-01
|
||||
projectscale monthly
|
||||
-- WP1 Project Management --
|
||||
[M1 First ActivityPub presence] starts 2023-12-29 and requires 7 days and is 100% completed
|
||||
[D1.1 Data Management Plan] starts 2023-12-01 and ends 2024-02-29 and is 80% completed
|
||||
[M6 First Tech talk] starts 2024-05-31 and requires 7 days and is 100% completed
|
||||
[M7 First Workshop] starts 2024-07-31 and requires 7 days and is 100% completed
|
||||
|
||||
-- WP2 Vertical Hosting --
|
||||
[D2.5 Technical architecture document] starts 2024-01-01 and ends 2024-03-29 and is 60% completed
|
||||
[D2.7 Analyze investment on fediverse] starts 2023-12-01 and ends 2024-04-30 and is colored in Red
|
||||
[D2.6 CI/CD setup] starts 2024-03-01 and ends 2024-10-31 and is colored in Red
|
||||
[D2.4 Nix Packages and NixOS Services] starts 2024-05-01 and ends 2024-11-29 and is colored in Red
|
||||
[D2.1 Software Release test environment] starts 2024-06-28 and ends 2024-11-29 and is colored in Red
|
||||
[D2.2 Software Release beta environment] starts 2025-01-01 and ends 2025-12-31 and is 0% completed
|
||||
[D2.3 Software release 1.0] starts 2025-12-01 and ends 2026-11-30 and is 0% completed
|
||||
|
||||
-- WP3 Vertical Public organizations --
|
||||
[D3.1 Requirements document] as [c1] starts 2023-12-01 and ends 2024-07-31 and is colored in Red
|
||||
[D3.2 Pilot program proposals] starts at [c1]'s end and ends 2024-11-29 and is colored in Red
|
||||
[D3.3 Technical architecture document pilot programs] starts 2024-12-02 and ends 2025-05-30 and is 0% completed
|
||||
[D3.4 Nix service flakes, packages and services for pilot programs] starts 2024-12-02 and ends 2025-05-30 and is 0% completed
|
||||
[D3.5 CI/CD setup for pilot programs] starts 2024-12-02 and ends 2025-05-30 and is 0% completed
|
||||
[D3.6 Running Fediverse software for public organisations advisory] starts 2025-05-01 and ends 2026-10-30 and is 0% completed
|
||||
|
||||
-- WP4 Open calls and grant management --
|
||||
[M2 Announcement open call] starts 2023-12-29 and requires 7 days and is 100% completed
|
||||
[M3 First open call opens] starts 2024-02-01 and requires 7 days and is 100% completed
|
||||
[M4 First batch of grantees selected] starts 2024-03-29 and requires 7 days and is 0% completed
|
||||
[D4.1 Overview of granted projects] starts 2026-07-01 and ends 2026-11-30 and is 0% completed
|
||||
|
||||
-- WP5 Enhancement and Usability --
|
||||
[D5.6 Setup UX design testlab] starts 2023-12-01 and ends 2024-07-31 and is colored in Red
|
||||
[D5.1 User requirement document] starts 2024-05-01 and ends 2024-08-30 and is colored in Red
|
||||
[D5.2 UX design] starts 2024-09-02 and ends 2025-11-28 and is 0% completed
|
||||
[D5.3 UX design implementation] starts 2025-12-01 and ends 2026-05-29 and is 0% completed
|
||||
[D5.4 UX design user studies] starts 2026-05-01 and ends 2026-09-30 and is 0% completed
|
||||
[D5.5 Design iteration and final release] starts 2026-10-01 and ends 2026-11-30 and is 0% completed
|
||||
|
||||
-- WP6 Outreach and Dissemination --
|
||||
[D6.1 Communication strategy] starts 2023-12-01 and ends 2024-01-31 and is colored in Red
|
||||
[D6.2 Media package] starts 2024-05-01 and ends 2024-07-31 and is colored in Red
|
||||
[D6.3 Communication report first period] starts 2025-03-03 and ends 2025-04-30 and is 0% completed
|
||||
[D6.4 Communication report second period] starts 2026-09-01 and ends 2026-10-30 and is 0% completed
|
||||
@endgantt
|
Loading…
Reference in a new issue