Welcome to mirror list, hosted at ThFree Co, Russian Federation.

hook.proto « proto - gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: f70d57362cdc80111e18487f5c337b6c0fe914c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
syntax = "proto3";

package gitaly;

import "lint.proto";
import "shared.proto";

option go_package = "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb";

// HookService is a service which provides the implementation of a subset of
// Git hooks. These are typically invoked via the `gitaly-hooks` binary to
// ensure that the actual hook logic is executed in the context of the server.
service HookService {

  // This comment is left unintentionally blank.
  rpc PreReceiveHook(stream PreReceiveHookRequest) returns (stream PreReceiveHookResponse) {
    option (op_type) = {
      op: ACCESSOR
    };
  }

  // This comment is left unintentionally blank.
  rpc PostReceiveHook(stream PostReceiveHookRequest) returns  (stream PostReceiveHookResponse) {
    option (op_type) = {
      op: ACCESSOR
    };
  }

  // This comment is left unintentionally blank.
  rpc UpdateHook(UpdateHookRequest) returns (stream UpdateHookResponse) {
    option (op_type) = {
      op: ACCESSOR
    };
  }

  // This comment is left unintentionally blank.
  rpc ReferenceTransactionHook(stream ReferenceTransactionHookRequest) returns (stream ReferenceTransactionHookResponse) {
    option (op_type) = {
      op: ACCESSOR
    };
  }

  // PackObjectsHookWithSidechannel is an optimized version of PackObjectsHook that uses
  // a unix socket side channel.
  rpc PackObjectsHookWithSidechannel(PackObjectsHookWithSidechannelRequest) returns (PackObjectsHookWithSidechannelResponse) {
    option (op_type) = {
      op: ACCESSOR
    };
  }

}

// This comment is left unintentionally blank.
message PreReceiveHookRequest {
  // This comment is left unintentionally blank.
  Repository repository = 1 [(target_repository)=true];
  // This comment is left unintentionally blank.
  repeated string environment_variables = 2;
  // This comment is left unintentionally blank.
  bytes stdin = 4;
  // This comment is left unintentionally blank.
  repeated string git_push_options = 5;
}

// This comment is left unintentionally blank.
message PreReceiveHookResponse{
  // This comment is left unintentionally blank.
  bytes stdout = 1;
  // This comment is left unintentionally blank.
  bytes stderr = 2;
  // This comment is left unintentionally blank.
  ExitStatus exit_status = 3;
}

// This comment is left unintentionally blank.
message PostReceiveHookRequest {
  // This comment is left unintentionally blank.
  Repository repository = 1 [(target_repository)=true];
  // This comment is left unintentionally blank.
  repeated string environment_variables = 2;
  // This comment is left unintentionally blank.
  bytes stdin = 3;
  // This comment is left unintentionally blank.
  repeated string git_push_options = 4;
}

// This comment is left unintentionally blank.
message PostReceiveHookResponse{
  // This comment is left unintentionally blank.
  bytes stdout = 1;
  // This comment is left unintentionally blank.
  bytes stderr = 2;
  // This comment is left unintentionally blank.
  ExitStatus exit_status = 3;
}

// This comment is left unintentionally blank.
message UpdateHookRequest {
  // This comment is left unintentionally blank.
  Repository repository = 1 [(target_repository)=true];
  // This comment is left unintentionally blank.
  repeated string environment_variables = 2;
  // This comment is left unintentionally blank.
  bytes ref = 3;
  // This comment is left unintentionally blank.
  string old_value = 4;
  // This comment is left unintentionally blank.
  string new_value = 5;
}

// This comment is left unintentionally blank.
message UpdateHookResponse{
  // This comment is left unintentionally blank.
  bytes stdout = 1;
  // This comment is left unintentionally blank.
  bytes stderr = 2;
  // This comment is left unintentionally blank.
  ExitStatus exit_status = 3;
}

// This comment is left unintentionally blank.
message ReferenceTransactionHookRequest {
  // This comment is left unintentionally blank.
  enum State {
    // This comment is left unintentionally blank.
    PREPARED = 0; // protolint:disable:this ENUM_FIELD_NAMES_PREFIX ENUM_FIELD_NAMES_ZERO_VALUE_END_WITH
    // This comment is left unintentionally blank.
    COMMITTED = 1; // protolint:disable:this ENUM_FIELD_NAMES_PREFIX
    // This comment is left unintentionally blank.
    ABORTED = 2; // protolint:disable:this ENUM_FIELD_NAMES_PREFIX
  }

  // This comment is left unintentionally blank.
  Repository repository = 1 [(target_repository)=true];
  // This comment is left unintentionally blank.
  repeated string environment_variables = 2;
  // This comment is left unintentionally blank.
  bytes stdin = 3;
  // This comment is left unintentionally blank.
  State state = 4;
}

// This comment is left unintentionally blank.
message ReferenceTransactionHookResponse {
  // This comment is left unintentionally blank.
  bytes stdout = 1;
  // This comment is left unintentionally blank.
  bytes stderr = 2;
  // This comment is left unintentionally blank.
  ExitStatus exit_status = 3;
}

// This comment is left unintentionally blank.
message PackObjectsHookWithSidechannelRequest {
  // This comment is left unintentionally blank.
  Repository repository = 1 [(target_repository)=true];
  // args contains the arguments passed to the pack-objects hook, without the leading "git"
  repeated string args = 2;
}

// This comment is left unintentionally blank.
message PackObjectsHookWithSidechannelResponse {
}