Add doc/ and merge README content

This commit is contained in:
Frank Matthieß 2024-08-21 23:13:23 +02:00
parent 87f8c1a1f4
commit 0b202f1592
2 changed files with 74 additions and 42 deletions

View file

@ -1,44 +1,3 @@
= Items database = Items database
An approach to implement a cmdb on steroids as a bunch of linked objects. include::doc/index.adoc[lines=3..]
It's about object schemas and types and typed links to describe the world as
dependency graph.
.A bunch of linked objects
ifdef::textdiagram[]
[plantuml, format=txt]
endif::[]
ifndef::textdiagram[]
[plantuml, format=svg]
endif::[]
----
@startuml
object "item 1" as i1
object "item 2" as i2
object "item 3" as i3
object "item 4" as i4
object "item 5" as i5
object "link 1" as l1
object "link 2" as l2
object "link 3" as l3
object "link 4" as l4
object "link 5" as l5
i1 --> l1
i1 --> l2
l1 --> i2
l2 --> i5
i5 --> l3
l3 --> i4
l4 --> i3
i2 --> l4
l5 --> i1
@enduml
----
This service provides an REST API for all interactions.

73
doc/index.adoc Normal file
View file

@ -0,0 +1,73 @@
# Items database
An approach to implement a cmdb on steroids as a bunch of linked objects.
It's about object schemas, types and typed links to describe the world as
dependency graph.
.A bunch of linked objects
ifdef::textdiagram[]
[plantuml, format=txt]
endif::[]
ifndef::textdiagram[]
[plantuml, format=svg]
endif::[]
----
@startuml
map SwitchType {
manufacturer => MikroTik
model => CRS12345
serial_number => 23468263876
}
map Switch {
switch_type *-> SwitchType
}
map SwitchPort {
switch *-> Switch
port_type => RJ45
port_speed => 1000
port_id => ge0/1/2/3
}
map NetworkAdapter {
mac addr => aa:bb:cc:dd:ee:ff
port_type => RJ45
}
map ServerType {
type => baremetal
serial_number => 1234567890
manufacturer => Thomas Krenn AG
model => Model Mini 2
}
map NetworkAdapterBMC {
mac addr => 12:34:56:78:90:ab
port_type => RJ45
port_speed => 1000
}
map BMC {
bmc_type => OpenBMC
network adapter *-> NetworkAdapterBMC
}
map Server {
network adapter *-> NetworkAdapter
server_type *-> ServerType
bmc *-> BMC
}
map Patchcable {
plug a *-> NetworkAdapter
plug b *-> SwitchPort
}
@enduml
----
This service provides an REST API for all interactions.