diff --git a/doc/architecture/blueprints/gitlab_steps/implementation.md b/doc/architecture/blueprints/gitlab_steps/implementation.md index add6097b08fc255ab638c137056f0317b2921641..85625f2d0a7cd44f9e92679d87ded44f53acaf83 100644 --- a/doc/architecture/blueprints/gitlab_steps/implementation.md +++ b/doc/architecture/blueprints/gitlab_steps/implementation.md @@ -26,79 +26,68 @@ trace will include sub-traces for each sub-step. ```protobuf message Step { - string name = 1; - Reference ref = 2; - repeated EnvironmentVariable env = 3; - repeated Input inputs = 4; - message Reference { - string uri = 1; - string version = 2; - string hash = 3; - Definition def = 4; - } + string name = 1; + string step = 2; + map<string,string> env = 3; + map<string,google.protobuf.Value> inputs = 4; } + message Definition { - Spec spec = 1; - enum Type { - type_unknown = 0; - type_steps = 1; - type_exec = 2; - } - Type type = 2; - oneof type_oneof { - DefinitionExec exec = 3; - DefinitionSteps steps = 4; - } + DefinitionType type = 1; + Exec exec = 2; + repeated Step steps = 3; message Exec { repeated string command = 1; string work_dir = 2; } - message Steps { - repeated Step children = 1; - } -} - -message Spec { - repeated Input inputs = 1; - message Input { - string key = 1; - string default_value = 2; - } } -message EnvironmentVariable { - string key = 1; - string value = 2; - bool masked = 3; - bool raw = 4; +enum DefinitionType { + definition_type_unspecified = 0; + exec = 1; + steps = 2; } -message Input { - string key = 1; - string value = 2; - bool masked = 3; - bool raw = 4; +message Spec { + Content spec = 1; + message Content { + map<string,Input> inputs = 1; + message Input { + InputType type = 1; + google.protobuf.Value default = 2; + } + } } -message Output { - string key = 1; - string value = 2; - bool masked = 3; +enum InputType { + spec_type_unspecified = 0; + string = 1; + number = 2; + bool = 3; + struct = 4; + list = 5; } message StepResult { Step step = 1; + Spec spec = 2; + Definition def = 3; enum Status { - unknown_result = 0; - success = 1; - failure = 2; - running = 3; + unspecified = 0; + running = 1; + success = 2; + failure = 3; + } + Status status = 4; + map<string,Output> outputs = 5; + message Output { + string key = 1; + string value = 2; + bool masked = 3; } - Result result = 2; - repeated Output outputs = 3; - repeated EnvironmentVariable exports = 4; - int32 exit_code = 5; - repeated StepResult children_step_results = 6; + map<string,string> exports = 6; + int32 exit_code = 7; + repeated StepResult children_step_results = 8; } ```