| // Copyright 2020 The Go Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| syntax = "proto3"; |
| |
| package protos; |
| |
| message Workflow { |
| // name is a unique name for a workflow, such as local_go_release. The name must be unique across |
| // all workflow configurations. |
| string name = 1; |
| |
| // buildable_asks is a list of tasks to be performed by the workflow. |
| repeated BuildableTask buildable_tasks = 2; |
| |
| // params are parameters provided when creating a workflow. |
| map<string, string> params = 3; |
| |
| // id is a unique identifier generated by relui when a workflow is created. |
| string id = 4; |
| } |
| |
| message BuildableTask { |
| // name is a unique name for a task, such as fetch_go_source. The name must be unique across |
| // all workflow configurations. |
| string name = 1; |
| |
| // depends_on is the name of a task this task depends on. Artifacts from the depends_on task will be available |
| // to this task. |
| string depends_on = 2; |
| |
| // task_status is the current status of a task. |
| TaskStatus status = 3; |
| |
| // artifact_url is an optional URL to an artifact published by this task. |
| string artifact_url = 4; |
| |
| // git_source is an optional configuration for which git source to fetch. |
| GitSource git_source = 5; |
| |
| // task_type is a unique type for a task, such as FetchGerritSource. Types are used by task runners to identify |
| // how to execute a task. |
| string task_type = 6; |
| |
| // id is a unique identifier generated by relui when a buildable task is created. |
| string id = 7; |
| } |
| |
| // StartBuildableTaskRequest is a message sent to workers to start working on a BuildableTask for a Workflow. |
| message StartBuildableTaskRequest { |
| // workflow_id is the workflow to which the BuildableTask belongs. |
| string workflow_id = 1; |
| |
| // buildable_task_id is the id of the BuildableTask to be started. |
| string buildable_task_id = 2; |
| |
| // buildable_task_type is the type of the BuildableTask to be started. |
| string buildable_task_type = 3; |
| } |
| |
| // LocalStorage is the persisted data of relui. It is used in development mode for saving application state. |
| message LocalStorage { |
| // workflows are a list of user-created workflows. |
| repeated Workflow workflows = 1; |
| } |
| |
| message GitSource { |
| string url = 1; |
| string ref = 2; |
| } |
| |
| enum TaskStatus { |
| TASK_STATUS_UNKNOWN = 0; |
| TASK_STATUS_CREATED = 1; |
| TASK_STATUS_STARTED = 2; |
| } |