Public Access
initial-commit
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package charybdis.core;
|
||||
|
||||
import "core/common.proto";
|
||||
|
||||
// ComponentMetadata represents identifying information for a component entity
|
||||
// A component is a software component (service, website, library, etc.)
|
||||
message ComponentMetadata {
|
||||
// Required: The name of the component
|
||||
string name = 1;
|
||||
|
||||
// Optional: Namespace for organizational grouping (default: "default")
|
||||
string namespace = 2;
|
||||
|
||||
// Optional: Human-readable description of the component
|
||||
string description = 3;
|
||||
|
||||
// Optional: Labels for categorization and filtering
|
||||
// Key-value pairs (e.g., "environment": "production", "team": "payments")
|
||||
map<string, string> labels = 4;
|
||||
|
||||
// Optional: Tags for additional classification
|
||||
repeated string tags = 5;
|
||||
|
||||
// Optional: Links to external resources
|
||||
repeated Link links = 6;
|
||||
}
|
||||
|
||||
// ComponentSpec represents configuration for a component entity
|
||||
message ComponentSpec {
|
||||
// Required: Type of component (e.g., "service", "website", "library", "documentation")
|
||||
string type = 1;
|
||||
|
||||
// Required: Lifecycle stage (e.g., "production", "experimental", "deprecated")
|
||||
string lifecycle = 2;
|
||||
|
||||
// Required: Owner team or individual (references a Group or User entity)
|
||||
string owner = 3;
|
||||
|
||||
// Optional: Parent system this component belongs to (references a System entity)
|
||||
string system = 4;
|
||||
|
||||
// Optional: Sub-component of another component (references a Component entity)
|
||||
string subcomponent_of = 5;
|
||||
|
||||
// Optional: Components this component depends on (references Component entities)
|
||||
repeated string depends_on = 6;
|
||||
|
||||
// Optional: APIs this component provides (references API entities)
|
||||
repeated string provides_apis = 7;
|
||||
|
||||
// Optional: APIs this component consumes (references API entities)
|
||||
repeated string consumes_apis = 8;
|
||||
}
|
||||
Reference in New Issue
Block a user