@@ -7,6 +7,7 @@ package workflows.v1;
77import "google/protobuf/empty.proto" ;
88import "google/protobuf/go_features.proto" ;
99import "google/protobuf/timestamp.proto" ;
10+ import "tilebox/v1/id.proto" ;
1011import "workflows/v1/core.proto" ;
1112
1213option features.(pb.go).api_level = API_OPAQUE;
@@ -22,7 +23,7 @@ enum StorageType {
2223
2324// Storage location is some kind of storage that can contain data files or objects and be used as a trigger source.
2425message StorageLocation {
25- UUID id = 1 ; // Unique identifier for the storage location
26+ tilebox.v1.ID id = 1 ; // Unique identifier for the storage location
2627 string location = 2 ; // A unique identifier for the storage location in the storage system
2728 StorageType type = 3 ; // The type of the storage location, e.g. GCS, S3, FS
2829}
@@ -35,7 +36,7 @@ message StorageLocations {
3536// AutomationPrototype is a task prototype that can result in many submitted tasks. Task submissions are triggered by
3637// NRT triggers, such as bucket triggers or cron triggers.
3738message AutomationPrototype {
38- UUID id = 1 ; // Unique identifier for the trigger
39+ tilebox.v1.ID id = 1 ; // Unique identifier for the trigger
3940 string name = 2 ; // A human-readable name for the trigger
4041 TaskSubmission prototype = 3 ; // The task submission to trigger
4142
@@ -51,14 +52,14 @@ message Automations {
5152// StorageEventTrigger is a trigger that will trigger a task submission when an object matching the glob pattern is
5253// created in a storage location.
5354message StorageEventTrigger {
54- UUID id = 1 ; // Unique identifier for the trigger
55+ tilebox.v1.ID id = 1 ; // Unique identifier for the trigger
5556 StorageLocation storage_location = 2 ; // The storage location to watch for events
5657 string glob_pattern = 3 ; // A glob pattern to match objects/files in the storage location
5758}
5859
5960// CronTrigger is a trigger that will trigger a task submission on a schedule.
6061message CronTrigger {
61- UUID id = 1 ; // Unique identifier for the trigger
62+ tilebox.v1.ID id = 1 ; // Unique identifier for the trigger
6263 string schedule = 2 ; // A cron schedule for the trigger, e.g. "0 0 * * *" (every day at midnight)
6364}
6465
@@ -79,7 +80,7 @@ enum StorageEventType {
7980
8081// TriggeredStorageEvent contains the details of the concrete event that triggered a storage event trigger.
8182message TriggeredStorageEvent {
82- UUID storage_location_id = 1 ; // The storage location that triggered the task
83+ tilebox.v1.ID storage_location_id = 1 ; // The storage location that triggered the task
8384 StorageEventType type = 2 ; // The type of the storage event, e.g. created
8485 // The object that triggered the task, e.g. a file name in a directory or object name in a bucket
8586 string location = 3 ;
@@ -93,7 +94,7 @@ message TriggeredCronEvent {
9394// DeleteAutomationRequest requests the deletion of an automation.
9495message DeleteAutomationRequest {
9596 // The ID of the automation to delete.
96- UUID automation_id = 1 ;
97+ tilebox.v1.ID automation_id = 1 ;
9798 // Whether to cancel all jobs that have been created by this automation.
9899 bool cancel_jobs = 2 ;
99100}
@@ -105,16 +106,16 @@ service AutomationService {
105106 // ListStorageLocations lists all the storage buckets that are available for use as bucket triggers.
106107 rpc ListStorageLocations (google.protobuf.Empty ) returns (StorageLocations );
107108 // GetStorageLocation gets a storage location by its ID.
108- rpc GetStorageLocation (UUID ) returns (StorageLocation );
109+ rpc GetStorageLocation (tilebox.v1.ID ) returns (StorageLocation );
109110 // CreateStorageLocation creates a new storage bucket.
110111 rpc CreateStorageLocation (StorageLocation ) returns (StorageLocation );
111112 // DeleteStorageLocation deletes a storage location.
112- rpc DeleteStorageLocation (UUID ) returns (google.protobuf.Empty );
113+ rpc DeleteStorageLocation (tilebox.v1.ID ) returns (google.protobuf.Empty );
113114
114115 // ListAutomations lists all the automations that are currently registered in a namespace.
115116 rpc ListAutomations (google.protobuf.Empty ) returns (Automations );
116117 // GetAutomation gets an automation by its ID.
117- rpc GetAutomation (UUID ) returns (AutomationPrototype );
118+ rpc GetAutomation (tilebox.v1.ID ) returns (AutomationPrototype );
118119 // CreateAutomation creates a new automation in a namespace.
119120 rpc CreateAutomation (AutomationPrototype ) returns (AutomationPrototype );
120121 // UpdateAutomation updates an automation in a namespace.
0 commit comments