github.com/pachyderm/pachyderm@v1.13.4/src/client/transaction/transaction.proto (about) 1 syntax = "proto3"; 2 3 package transaction; 4 option go_package = "github.com/pachyderm/pachyderm/src/client/transaction"; 5 6 import "google/protobuf/empty.proto"; 7 import "google/protobuf/timestamp.proto"; 8 9 import "gogoproto/gogo.proto"; 10 11 import "client/pfs/pfs.proto"; 12 import "client/pps/pps.proto"; 13 14 message DeleteAllRequest { 15 } 16 17 message TransactionRequest { 18 // Exactly one of these fields should be set 19 pfs.CreateRepoRequest create_repo = 1; 20 pfs.DeleteRepoRequest delete_repo = 2; 21 pfs.StartCommitRequest start_commit = 3; 22 pfs.FinishCommitRequest finish_commit = 4; 23 pfs.DeleteCommitRequest delete_commit = 5; 24 pfs.CreateBranchRequest create_branch = 6; 25 pfs.DeleteBranchRequest delete_branch = 7; 26 pps.UpdateJobStateRequest update_job_state = 11; 27 pps.CreatePipelineRequest create_pipeline = 12; 28 DeleteAllRequest delete_all = 10; 29 } 30 31 message TransactionResponse { 32 // At most, one of these fields should be set (most responses are empty) 33 pfs.Commit commit = 2; // Only used for StartCommit - any way we can deterministically provide this before finishing the transaction? 34 } 35 36 message Transaction { 37 string id = 1 [(gogoproto.customname) = "ID"]; 38 } 39 40 message TransactionInfo { 41 Transaction transaction = 1; 42 repeated TransactionRequest requests = 2; 43 repeated TransactionResponse responses = 3; 44 google.protobuf.Timestamp started = 4; 45 } 46 47 message TransactionInfos { 48 repeated TransactionInfo transaction_info = 1; 49 } 50 51 message BatchTransactionRequest { 52 repeated TransactionRequest requests = 1; 53 } 54 55 message StartTransactionRequest { 56 } 57 58 message InspectTransactionRequest { 59 Transaction transaction = 1; 60 } 61 62 message DeleteTransactionRequest { 63 Transaction transaction = 1; 64 } 65 66 message ListTransactionRequest { 67 } 68 69 message FinishTransactionRequest { 70 Transaction transaction = 1; 71 } 72 73 service API { 74 // Transaction rpcs 75 rpc BatchTransaction(BatchTransactionRequest) returns (TransactionInfo) {} 76 rpc StartTransaction(StartTransactionRequest) returns (Transaction) {} 77 rpc InspectTransaction(InspectTransactionRequest) returns (TransactionInfo) {} 78 rpc DeleteTransaction(DeleteTransactionRequest) returns (google.protobuf.Empty) {} 79 rpc ListTransaction(ListTransactionRequest) returns (TransactionInfos) {} 80 rpc FinishTransaction(FinishTransactionRequest) returns (TransactionInfo) {} 81 rpc DeleteAll(DeleteAllRequest) returns (google.protobuf.Empty) {} 82 }