gcf-utils 13.4.0 → 13.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/bot-request.d.ts +21 -0
- package/build/src/bot-request.js +99 -0
- package/build/src/bot-request.js.map +1 -0
- package/build/src/custom-events.d.ts +4 -0
- package/build/src/custom-events.js +25 -0
- package/build/src/custom-events.js.map +1 -0
- package/build/src/gcf-utils.d.ts +2 -31
- package/build/src/gcf-utils.js +45 -100
- package/build/src/gcf-utils.js.map +1 -1
- package/build/src/logging/trigger-info-builder.d.ts +2 -1
- package/build/src/logging/trigger-info-builder.js +6 -8
- package/build/src/logging/trigger-info-builder.js.map +1 -1
- package/package.json +2 -2
@@ -0,0 +1,21 @@
|
|
1
|
+
import * as express from 'express';
|
2
|
+
/**
|
3
|
+
* Type of function execution trigger
|
4
|
+
*/
|
5
|
+
export declare enum TriggerType {
|
6
|
+
GITHUB = "GitHub Webhook",
|
7
|
+
SCHEDULER = "Cloud Scheduler",
|
8
|
+
TASK = "Cloud Task",
|
9
|
+
PUBSUB = "Pub/Sub",
|
10
|
+
UNKNOWN = "Unknown"
|
11
|
+
}
|
12
|
+
export interface BotRequest {
|
13
|
+
eventName: string;
|
14
|
+
githubDeliveryId: string;
|
15
|
+
signature?: string;
|
16
|
+
taskName?: string;
|
17
|
+
taskRetryCount?: number;
|
18
|
+
traceId?: string;
|
19
|
+
triggerType: TriggerType;
|
20
|
+
}
|
21
|
+
export declare function parseBotRequest(request: express.Request): BotRequest;
|
@@ -0,0 +1,99 @@
|
|
1
|
+
"use strict";
|
2
|
+
// Copyright 2022 Google LLC
|
3
|
+
//
|
4
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
// you may not use this file except in compliance with the License.
|
6
|
+
// You may obtain a copy of the License at
|
7
|
+
//
|
8
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
//
|
10
|
+
// Unless required by applicable law or agreed to in writing, software
|
11
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
// See the License for the specific language governing permissions and
|
14
|
+
// limitations under the License.
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
16
|
+
exports.parseBotRequest = exports.TriggerType = void 0;
|
17
|
+
const custom_events_1 = require("./custom-events");
|
18
|
+
/**
|
19
|
+
* Type of function execution trigger
|
20
|
+
*/
|
21
|
+
var TriggerType;
|
22
|
+
(function (TriggerType) {
|
23
|
+
TriggerType["GITHUB"] = "GitHub Webhook";
|
24
|
+
TriggerType["SCHEDULER"] = "Cloud Scheduler";
|
25
|
+
TriggerType["TASK"] = "Cloud Task";
|
26
|
+
TriggerType["PUBSUB"] = "Pub/Sub";
|
27
|
+
TriggerType["UNKNOWN"] = "Unknown";
|
28
|
+
})(TriggerType = exports.TriggerType || (exports.TriggerType = {}));
|
29
|
+
function parseBotRequest(request) {
|
30
|
+
const eventName = request.get('X-GitHub-Event') || '';
|
31
|
+
const githubDeliveryId = request.get('X-GitHub-Delivery') || '';
|
32
|
+
const signature = parseSignatureHeader(request);
|
33
|
+
const taskName = request.get('X-CloudTasks-TaskName');
|
34
|
+
const taskRetryCount = parseInt(request.get('X-CloudTasks-TaskRetryCount') || '0');
|
35
|
+
const triggerType = parseTriggerType(eventName, taskName);
|
36
|
+
const traceId = parseTraceId(request);
|
37
|
+
return {
|
38
|
+
eventName,
|
39
|
+
githubDeliveryId,
|
40
|
+
signature,
|
41
|
+
taskName,
|
42
|
+
taskRetryCount,
|
43
|
+
traceId,
|
44
|
+
triggerType,
|
45
|
+
};
|
46
|
+
}
|
47
|
+
exports.parseBotRequest = parseBotRequest;
|
48
|
+
/**
|
49
|
+
* Determine the type of trigger that started this execution
|
50
|
+
* @param eventName event name from header
|
51
|
+
* @param taskName task id from header
|
52
|
+
*/
|
53
|
+
function parseTriggerType(eventName, taskName) {
|
54
|
+
if (!taskName && custom_events_1.SCHEDULER_EVENT_NAMES.includes(eventName)) {
|
55
|
+
return TriggerType.SCHEDULER;
|
56
|
+
}
|
57
|
+
else if (!taskName && eventName === 'pubsub.message') {
|
58
|
+
return TriggerType.PUBSUB;
|
59
|
+
}
|
60
|
+
else if (!taskName && eventName) {
|
61
|
+
return TriggerType.GITHUB;
|
62
|
+
}
|
63
|
+
else if (eventName) {
|
64
|
+
return TriggerType.TASK;
|
65
|
+
}
|
66
|
+
return TriggerType.UNKNOWN;
|
67
|
+
}
|
68
|
+
/**
|
69
|
+
* Parse the signature from the request headers.
|
70
|
+
*
|
71
|
+
* If the expected header is not set, returns `unset` because the verification
|
72
|
+
* function throws an exception on empty string when we would rather
|
73
|
+
* treat the error as an invalid signature.
|
74
|
+
* @param request incoming trigger request
|
75
|
+
*/
|
76
|
+
function parseSignatureHeader(request) {
|
77
|
+
const sha1Signature = request.get('X-Hub-Signature');
|
78
|
+
if (sha1Signature) {
|
79
|
+
return sha1Signature;
|
80
|
+
}
|
81
|
+
return 'unset';
|
82
|
+
}
|
83
|
+
/**
|
84
|
+
* Parse the trace id from the trace context header. The format of the header
|
85
|
+
* looks something like `<trace-id>/<span-id>;o=<options-flags>`.
|
86
|
+
* @param request incoming trigger request
|
87
|
+
*/
|
88
|
+
function parseTraceId(request) {
|
89
|
+
const traceContext = request.get('X-Cloud-Trace-Context');
|
90
|
+
if (!traceContext) {
|
91
|
+
return undefined;
|
92
|
+
}
|
93
|
+
const parts = traceContext.split('/');
|
94
|
+
if (parts.length === 0 || !parts[0]) {
|
95
|
+
return undefined;
|
96
|
+
}
|
97
|
+
return parts[0];
|
98
|
+
}
|
99
|
+
//# sourceMappingURL=bot-request.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"bot-request.js","sourceRoot":"","sources":["../../src/bot-request.ts"],"names":[],"mappings":";AAAA,4BAA4B;AAC5B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,kDAAkD;AAClD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;;AAGjC,mDAAsD;AAEtD;;GAEG;AACH,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,4CAA6B,CAAA;IAC7B,kCAAmB,CAAA;IACnB,iCAAkB,CAAA;IAClB,kCAAmB,CAAA;AACrB,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB;AAYD,SAAgB,eAAe,CAAC,OAAwB;IACtD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACtD,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAChE,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,QAAQ,CAC7B,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,GAAG,CAClD,CAAC;IACF,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO;QACL,SAAS;QACT,gBAAgB;QAChB,SAAS;QACT,QAAQ;QACR,cAAc;QACd,OAAO;QACP,WAAW;KACZ,CAAC;AACJ,CAAC;AAnBD,0CAmBC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,SAAiB,EAAE,QAAgB;IAC3D,IAAI,CAAC,QAAQ,IAAI,qCAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC1D,OAAO,WAAW,CAAC,SAAS,CAAC;KAC9B;SAAM,IAAI,CAAC,QAAQ,IAAI,SAAS,KAAK,gBAAgB,EAAE;QACtD,OAAO,WAAW,CAAC,MAAM,CAAC;KAC3B;SAAM,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;QACjC,OAAO,WAAW,CAAC,MAAM,CAAC;KAC3B;SAAM,IAAI,SAAS,EAAE;QACpB,OAAO,WAAW,CAAC,IAAI,CAAC;KACzB;IACD,OAAO,WAAW,CAAC,OAAO,CAAC;AAC7B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oBAAoB,CAAC,OAAwB;IACpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACrD,IAAI,aAAa,EAAE;QACjB,OAAO,aAAa,CAAC;KACtB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,OAAwB;IAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAC1D,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACnC,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
export declare const SCHEDULER_GLOBAL_EVENT_NAME = "schedule.global";
|
2
|
+
export declare const SCHEDULER_INSTALLATION_EVENT_NAME = "schedule.installation";
|
3
|
+
export declare const SCHEDULER_REPOSITORY_EVENT_NAME = "schedule.repository";
|
4
|
+
export declare const SCHEDULER_EVENT_NAMES: string[];
|
@@ -0,0 +1,25 @@
|
|
1
|
+
"use strict";
|
2
|
+
// Copyright 2022 Google LLC
|
3
|
+
//
|
4
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
// you may not use this file except in compliance with the License.
|
6
|
+
// You may obtain a copy of the License at
|
7
|
+
//
|
8
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
//
|
10
|
+
// Unless required by applicable law or agreed to in writing, software
|
11
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
// See the License for the specific language governing permissions and
|
14
|
+
// limitations under the License.
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
16
|
+
exports.SCHEDULER_EVENT_NAMES = exports.SCHEDULER_REPOSITORY_EVENT_NAME = exports.SCHEDULER_INSTALLATION_EVENT_NAME = exports.SCHEDULER_GLOBAL_EVENT_NAME = void 0;
|
17
|
+
exports.SCHEDULER_GLOBAL_EVENT_NAME = 'schedule.global';
|
18
|
+
exports.SCHEDULER_INSTALLATION_EVENT_NAME = 'schedule.installation';
|
19
|
+
exports.SCHEDULER_REPOSITORY_EVENT_NAME = 'schedule.repository';
|
20
|
+
exports.SCHEDULER_EVENT_NAMES = [
|
21
|
+
exports.SCHEDULER_GLOBAL_EVENT_NAME,
|
22
|
+
exports.SCHEDULER_INSTALLATION_EVENT_NAME,
|
23
|
+
exports.SCHEDULER_REPOSITORY_EVENT_NAME,
|
24
|
+
];
|
25
|
+
//# sourceMappingURL=custom-events.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"custom-events.js","sourceRoot":"","sources":["../../src/custom-events.ts"],"names":[],"mappings":";AAAA,4BAA4B;AAC5B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,kDAAkD;AAClD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;;AAEpB,QAAA,2BAA2B,GAAG,iBAAiB,CAAC;AAChD,QAAA,iCAAiC,GAAG,uBAAuB,CAAC;AAC5D,QAAA,+BAA+B,GAAG,qBAAqB,CAAC;AACxD,QAAA,qBAAqB,GAAG;IACnC,mCAA2B;IAC3B,yCAAiC;IACjC,uCAA+B;CAChC,CAAC"}
|
package/build/src/gcf-utils.d.ts
CHANGED
@@ -8,6 +8,7 @@ import { Storage } from '@google-cloud/storage';
|
|
8
8
|
import * as express from 'express';
|
9
9
|
import { Octokit } from '@octokit/rest';
|
10
10
|
import { GCFLogger } from './logging/gcf-logger';
|
11
|
+
export { TriggerType } from './bot-request';
|
11
12
|
export interface RequestWithRawBody extends express.Request {
|
12
13
|
rawBody?: Buffer;
|
13
14
|
}
|
@@ -48,16 +49,6 @@ export interface CronPayload {
|
|
48
49
|
};
|
49
50
|
cron_org: string;
|
50
51
|
}
|
51
|
-
/**
|
52
|
-
* Type of function execution trigger
|
53
|
-
*/
|
54
|
-
export declare enum TriggerType {
|
55
|
-
GITHUB = "GitHub Webhook",
|
56
|
-
SCHEDULER = "Cloud Scheduler",
|
57
|
-
TASK = "Cloud Task",
|
58
|
-
PUBSUB = "Pub/Sub",
|
59
|
-
UNKNOWN = "Unknown"
|
60
|
-
}
|
61
52
|
/**
|
62
53
|
* It creates a comment string used for `addOrUpdateissuecomment`.
|
63
54
|
*/
|
@@ -105,26 +96,6 @@ export declare class GCFBootstrapper {
|
|
105
96
|
getSecretName(): string;
|
106
97
|
getLatestSecretVersionName(): string;
|
107
98
|
getProbotConfig(logging?: boolean): Promise<Options>;
|
108
|
-
/**
|
109
|
-
* Parse the signature from the request headers.
|
110
|
-
*
|
111
|
-
* If the expected header is not set, returns `unset` because the verification
|
112
|
-
* function throws an exception on empty string when we would rather
|
113
|
-
* treat the error as an invalid signature.
|
114
|
-
* @param request incoming trigger request
|
115
|
-
*/
|
116
|
-
private static parseSignatureHeader;
|
117
|
-
/**
|
118
|
-
* Parse the event name, delivery id, signature and task id from the request headers
|
119
|
-
* @param request incoming trigger request
|
120
|
-
*/
|
121
|
-
private static parseRequestHeaders;
|
122
|
-
/**
|
123
|
-
* Determine the type of trigger that started this execution
|
124
|
-
* @param name event name from header
|
125
|
-
* @param taskId task id from header
|
126
|
-
*/
|
127
|
-
private static parseTriggerType;
|
128
99
|
private parseWrapConfig;
|
129
100
|
private getRetryLimit;
|
130
101
|
/**
|
@@ -141,6 +112,7 @@ export declare class GCFBootstrapper {
|
|
141
112
|
* @param wrapOptions {WrapOptions} Bot handler options
|
142
113
|
*/
|
143
114
|
gcf(appFn: ApplicationFunction, wrapOptions?: WrapOptions): HandlerFunction;
|
115
|
+
private buildLoggerBindings;
|
144
116
|
/**
|
145
117
|
* Entrypoint for handling all scheduled tasks.
|
146
118
|
*
|
@@ -237,4 +209,3 @@ export declare class GCFBootstrapper {
|
|
237
209
|
private maybeDownloadOriginalBody;
|
238
210
|
}
|
239
211
|
export declare function getContextLogger(context: any): GCFLogger;
|
240
|
-
export {};
|
package/build/src/gcf-utils.js
CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.getContextLogger = exports.GCFBootstrapper = exports.addOrUpdateIssueComment = exports.getCommentMark = exports.
|
6
|
+
exports.getContextLogger = exports.GCFBootstrapper = exports.addOrUpdateIssueComment = exports.getCommentMark = exports.logger = exports.TriggerType = void 0;
|
7
7
|
// Copyright 2019 Google LLC
|
8
8
|
//
|
9
9
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
@@ -34,17 +34,13 @@ const uuid_1 = require("uuid");
|
|
34
34
|
const server_1 = require("./server/server");
|
35
35
|
const run_1 = require("@googleapis/run");
|
36
36
|
const google_auth_library_1 = require("google-auth-library");
|
37
|
+
const bot_request_1 = require("./bot-request");
|
38
|
+
const custom_events_1 = require("./custom-events");
|
39
|
+
var bot_request_2 = require("./bot-request");
|
40
|
+
Object.defineProperty(exports, "TriggerType", { enumerable: true, get: function () { return bot_request_2.TriggerType; } });
|
37
41
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
38
42
|
const LoggingOctokitPlugin = require('../src/logging/logging-octokit-plugin.js');
|
39
43
|
const DEFAULT_CRON_TYPE = 'repository';
|
40
|
-
const SCHEDULER_GLOBAL_EVENT_NAME = 'schedule.global';
|
41
|
-
const SCHEDULER_INSTALLATION_EVENT_NAME = 'schedule.installation';
|
42
|
-
const SCHEDULER_REPOSITORY_EVENT_NAME = 'schedule.repository';
|
43
|
-
const SCHEDULER_EVENT_NAMES = [
|
44
|
-
SCHEDULER_GLOBAL_EVENT_NAME,
|
45
|
-
SCHEDULER_INSTALLATION_EVENT_NAME,
|
46
|
-
SCHEDULER_REPOSITORY_EVENT_NAME,
|
47
|
-
];
|
48
44
|
const RUNNING_IN_TEST = process.env.NODE_ENV === 'test';
|
49
45
|
const DEFAULT_TASK_CALLER = 'task-caller@repo-automation-bots.iam.gserviceaccount.com';
|
50
46
|
const DEFAULT_WRAP_CONFIG = {
|
@@ -55,17 +51,6 @@ const DEFAULT_WRAP_CONFIG = {
|
|
55
51
|
maxPubSubRetries: 0,
|
56
52
|
};
|
57
53
|
exports.logger = new gcf_logger_1.GCFLogger();
|
58
|
-
/**
|
59
|
-
* Type of function execution trigger
|
60
|
-
*/
|
61
|
-
var TriggerType;
|
62
|
-
(function (TriggerType) {
|
63
|
-
TriggerType["GITHUB"] = "GitHub Webhook";
|
64
|
-
TriggerType["SCHEDULER"] = "Cloud Scheduler";
|
65
|
-
TriggerType["TASK"] = "Cloud Task";
|
66
|
-
TriggerType["PUBSUB"] = "Pub/Sub";
|
67
|
-
TriggerType["UNKNOWN"] = "Unknown";
|
68
|
-
})(TriggerType = exports.TriggerType || (exports.TriggerType = {}));
|
69
54
|
/**
|
70
55
|
* It creates a comment string used for `addOrUpdateissuecomment`.
|
71
56
|
*/
|
@@ -211,59 +196,6 @@ class GCFBootstrapper {
|
|
211
196
|
};
|
212
197
|
}
|
213
198
|
}
|
214
|
-
/**
|
215
|
-
* Parse the signature from the request headers.
|
216
|
-
*
|
217
|
-
* If the expected header is not set, returns `unset` because the verification
|
218
|
-
* function throws an exception on empty string when we would rather
|
219
|
-
* treat the error as an invalid signature.
|
220
|
-
* @param request incoming trigger request
|
221
|
-
*/
|
222
|
-
static parseSignatureHeader(request) {
|
223
|
-
const sha1Signature = request.get('x-hub-signature') || request.get('X-Hub-Signature');
|
224
|
-
if (sha1Signature) {
|
225
|
-
return sha1Signature;
|
226
|
-
}
|
227
|
-
return 'unset';
|
228
|
-
}
|
229
|
-
/**
|
230
|
-
* Parse the event name, delivery id, signature and task id from the request headers
|
231
|
-
* @param request incoming trigger request
|
232
|
-
*/
|
233
|
-
static parseRequestHeaders(request) {
|
234
|
-
const name = request.get('x-github-event') || request.get('X-GitHub-Event') || '';
|
235
|
-
const id = request.get('x-github-delivery') ||
|
236
|
-
request.get('X-GitHub-Delivery') ||
|
237
|
-
'';
|
238
|
-
const signature = this.parseSignatureHeader(request);
|
239
|
-
const taskId = request.get('X-CloudTasks-TaskName') ||
|
240
|
-
request.get('x-cloudtasks-taskname') ||
|
241
|
-
'';
|
242
|
-
const taskRetries = parseInt(request.get('X-CloudTasks-TaskRetryCount') ||
|
243
|
-
request.get('x-cloudtasks-taskretrycount') ||
|
244
|
-
'0');
|
245
|
-
return { name, id, signature, taskId, taskRetries };
|
246
|
-
}
|
247
|
-
/**
|
248
|
-
* Determine the type of trigger that started this execution
|
249
|
-
* @param name event name from header
|
250
|
-
* @param taskId task id from header
|
251
|
-
*/
|
252
|
-
static parseTriggerType(name, taskId) {
|
253
|
-
if (!taskId && SCHEDULER_EVENT_NAMES.includes(name)) {
|
254
|
-
return TriggerType.SCHEDULER;
|
255
|
-
}
|
256
|
-
else if (!taskId && name === 'pubsub.message') {
|
257
|
-
return TriggerType.PUBSUB;
|
258
|
-
}
|
259
|
-
else if (!taskId && name) {
|
260
|
-
return TriggerType.GITHUB;
|
261
|
-
}
|
262
|
-
else if (name) {
|
263
|
-
return TriggerType.TASK;
|
264
|
-
}
|
265
|
-
return TriggerType.UNKNOWN;
|
266
|
-
}
|
267
199
|
parseWrapConfig(wrapOptions) {
|
268
200
|
const wrapConfig = {
|
269
201
|
...DEFAULT_WRAP_CONFIG,
|
@@ -308,11 +240,11 @@ class GCFBootstrapper {
|
|
308
240
|
const wrapConfig = this.parseWrapConfig(wrapOptions);
|
309
241
|
this.probot =
|
310
242
|
this.probot || (await this.loadProbot(appFn, wrapConfig.logging));
|
311
|
-
|
312
|
-
const
|
243
|
+
// parse all common fields from a bot request
|
244
|
+
const botRequest = (0, bot_request_1.parseBotRequest)(request);
|
313
245
|
// validate the signature
|
314
246
|
if (!wrapConfig.skipVerification &&
|
315
|
-
!(await this.probot.webhooks.verify(request.rawBody ? request.rawBody.toString() : request.body, signature))) {
|
247
|
+
!(await this.probot.webhooks.verify(request.rawBody ? request.rawBody.toString() : request.body, botRequest.signature))) {
|
316
248
|
response.status(400).send({
|
317
249
|
statusCode: 400,
|
318
250
|
body: JSON.stringify({ message: 'Invalid signature' }),
|
@@ -323,34 +255,34 @@ class GCFBootstrapper {
|
|
323
255
|
* Note: any logs written before resetting bindings may contain
|
324
256
|
* bindings from previous executions
|
325
257
|
*/
|
326
|
-
const
|
258
|
+
const loggerBindings = this.buildLoggerBindings(botRequest, request.body);
|
327
259
|
exports.logger.resetBindings();
|
328
|
-
exports.logger.addBindings(
|
329
|
-
const requestLogger = exports.logger.child(
|
260
|
+
exports.logger.addBindings(loggerBindings);
|
261
|
+
const requestLogger = exports.logger.child(loggerBindings);
|
330
262
|
try {
|
331
|
-
if (triggerType === TriggerType.UNKNOWN) {
|
263
|
+
if (botRequest.triggerType === bot_request_1.TriggerType.UNKNOWN) {
|
332
264
|
response.sendStatus(400);
|
333
265
|
return;
|
334
266
|
}
|
335
|
-
else if (triggerType === TriggerType.SCHEDULER) {
|
267
|
+
else if (botRequest.triggerType === bot_request_1.TriggerType.SCHEDULER) {
|
336
268
|
// Cloud scheduler tasks (cron)
|
337
|
-
await this.handleScheduled(
|
269
|
+
await this.handleScheduled(botRequest.githubDeliveryId, request, wrapConfig);
|
338
270
|
}
|
339
|
-
else if (triggerType === TriggerType.PUBSUB) {
|
271
|
+
else if (botRequest.triggerType === bot_request_1.TriggerType.PUBSUB) {
|
340
272
|
const payload = this.parsePubSubPayload(request);
|
341
273
|
await this.enqueueTask({
|
342
|
-
id,
|
343
|
-
name,
|
274
|
+
id: botRequest.githubDeliveryId,
|
275
|
+
name: botRequest.eventName,
|
344
276
|
body: JSON.stringify(payload),
|
345
277
|
});
|
346
278
|
}
|
347
|
-
else if (triggerType === TriggerType.TASK) {
|
348
|
-
const maxRetries = this.getRetryLimit(wrapConfig,
|
279
|
+
else if (botRequest.triggerType === bot_request_1.TriggerType.TASK) {
|
280
|
+
const maxRetries = this.getRetryLimit(wrapConfig, botRequest.eventName);
|
349
281
|
// Abort task retries if we've hit the max number by
|
350
282
|
// returning "success"
|
351
|
-
if (
|
283
|
+
if (botRequest.taskRetryCount > maxRetries) {
|
352
284
|
requestLogger.metric('too-many-retries');
|
353
|
-
requestLogger.info(`Too many retries: ${
|
285
|
+
requestLogger.info(`Too many retries: ${botRequest.taskRetryCount} > ${maxRetries}`);
|
354
286
|
// return 200 so we don't retry the task again
|
355
287
|
response.send({
|
356
288
|
statusCode: 200,
|
@@ -376,17 +308,17 @@ class GCFBootstrapper {
|
|
376
308
|
// keep using a custom event name.
|
377
309
|
await this.probot.receive({
|
378
310
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
379
|
-
name:
|
311
|
+
name: botRequest.eventName,
|
380
312
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
381
|
-
id:
|
313
|
+
id: botRequest.githubDeliveryId,
|
382
314
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
383
315
|
payload: payload,
|
384
316
|
});
|
385
317
|
}
|
386
|
-
else if (triggerType === TriggerType.GITHUB) {
|
318
|
+
else if (botRequest.triggerType === bot_request_1.TriggerType.GITHUB) {
|
387
319
|
await this.enqueueTask({
|
388
|
-
id,
|
389
|
-
name,
|
320
|
+
id: botRequest.githubDeliveryId,
|
321
|
+
name: botRequest.eventName,
|
390
322
|
body: JSON.stringify(request.body),
|
391
323
|
});
|
392
324
|
}
|
@@ -407,6 +339,19 @@ class GCFBootstrapper {
|
|
407
339
|
exports.logger.flushSync();
|
408
340
|
};
|
409
341
|
}
|
342
|
+
buildLoggerBindings(botRequest,
|
343
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
344
|
+
requestBody) {
|
345
|
+
const extras = {};
|
346
|
+
const triggerInfo = (0, trigger_info_builder_1.buildTriggerInfo)(botRequest, requestBody);
|
347
|
+
if (botRequest.traceId) {
|
348
|
+
extras['logging.googleapis.com/trace'] = `projects/${this.projectId}/traces/${botRequest.traceId}`;
|
349
|
+
}
|
350
|
+
return {
|
351
|
+
...triggerInfo,
|
352
|
+
...extras,
|
353
|
+
};
|
354
|
+
}
|
410
355
|
/**
|
411
356
|
* Entrypoint for handling all scheduled tasks.
|
412
357
|
*
|
@@ -442,7 +387,7 @@ class GCFBootstrapper {
|
|
442
387
|
async handleScheduledGlobal(id, body) {
|
443
388
|
await this.enqueueTask({
|
444
389
|
id,
|
445
|
-
name: SCHEDULER_GLOBAL_EVENT_NAME,
|
390
|
+
name: custom_events_1.SCHEDULER_GLOBAL_EVENT_NAME,
|
446
391
|
body: JSON.stringify(body),
|
447
392
|
});
|
448
393
|
}
|
@@ -503,7 +448,7 @@ class GCFBootstrapper {
|
|
503
448
|
if (body.installation) {
|
504
449
|
await this.enqueueTask({
|
505
450
|
id,
|
506
|
-
name: SCHEDULER_INSTALLATION_EVENT_NAME,
|
451
|
+
name: custom_events_1.SCHEDULER_INSTALLATION_EVENT_NAME,
|
507
452
|
body: JSON.stringify(body),
|
508
453
|
});
|
509
454
|
}
|
@@ -525,7 +470,7 @@ class GCFBootstrapper {
|
|
525
470
|
};
|
526
471
|
await this.enqueueTask({
|
527
472
|
id,
|
528
|
-
name: SCHEDULER_INSTALLATION_EVENT_NAME,
|
473
|
+
name: custom_events_1.SCHEDULER_INSTALLATION_EVENT_NAME,
|
529
474
|
body: JSON.stringify(payload),
|
530
475
|
});
|
531
476
|
}
|
@@ -551,7 +496,7 @@ class GCFBootstrapper {
|
|
551
496
|
var _a, _b;
|
552
497
|
if (body.repo) {
|
553
498
|
// Job was scheduled for a single repository:
|
554
|
-
await this.scheduledToTask(body.repo, id, body, SCHEDULER_REPOSITORY_EVENT_NAME);
|
499
|
+
await this.scheduledToTask(body.repo, id, body, custom_events_1.SCHEDULER_REPOSITORY_EVENT_NAME);
|
555
500
|
}
|
556
501
|
else if (body.installation) {
|
557
502
|
const generator = this.eachInstalledRepository(body.installation.id, wrapConfig);
|
@@ -561,7 +506,7 @@ class GCFBootstrapper {
|
|
561
506
|
if (repo.archived === true || repo.disabled === true) {
|
562
507
|
continue;
|
563
508
|
}
|
564
|
-
promises.push(this.scheduledToTask(repo.full_name, id, body, SCHEDULER_REPOSITORY_EVENT_NAME));
|
509
|
+
promises.push(this.scheduledToTask(repo.full_name, id, body, custom_events_1.SCHEDULER_REPOSITORY_EVENT_NAME));
|
565
510
|
if (promises.length >= batchSize) {
|
566
511
|
await Promise.all(promises);
|
567
512
|
promises.splice(0, promises.length);
|
@@ -603,7 +548,7 @@ class GCFBootstrapper {
|
|
603
548
|
if (repo.archived === true || repo.disabled === true) {
|
604
549
|
continue;
|
605
550
|
}
|
606
|
-
promises.push(this.scheduledToTask(repo.full_name, id, payload, SCHEDULER_REPOSITORY_EVENT_NAME));
|
551
|
+
promises.push(this.scheduledToTask(repo.full_name, id, payload, custom_events_1.SCHEDULER_REPOSITORY_EVENT_NAME));
|
607
552
|
if (promises.length >= batchSize) {
|
608
553
|
await Promise.all(promises);
|
609
554
|
promises.splice(0, promises.length);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"gcf-utils.js","sourceRoot":"","sources":["../../src/gcf-utils.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"gcf-utils.js","sourceRoot":"","sources":["../../src/gcf-utils.ts"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { TriggerType } from '../gcf-utils';
|
2
|
+
import { BotRequest } from '../bot-request';
|
2
3
|
/**
|
3
4
|
* Information on GCF execution trigger
|
4
5
|
*/
|
@@ -29,7 +30,7 @@ interface TriggerInfo {
|
|
29
30
|
* @param githubEventName the value of the X-GitHub-Event header
|
30
31
|
* @param requestBody body of the incoming trigger request
|
31
32
|
*/
|
32
|
-
export declare function buildTriggerInfo(
|
33
|
+
export declare function buildTriggerInfo(botRequest: BotRequest, requestBody: {
|
33
34
|
[key: string]: any;
|
34
35
|
}): TriggerInfo;
|
35
36
|
export {};
|
@@ -27,26 +27,24 @@ const crypto_1 = __importDefault(require("crypto"));
|
|
27
27
|
* @param githubEventName the value of the X-GitHub-Event header
|
28
28
|
* @param requestBody body of the incoming trigger request
|
29
29
|
*/
|
30
|
-
function buildTriggerInfo(
|
30
|
+
function buildTriggerInfo(botRequest,
|
31
31
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
32
32
|
requestBody) {
|
33
33
|
var _a;
|
34
34
|
const UNKNOWN = 'UNKNOWN';
|
35
35
|
const triggerInfo = {
|
36
36
|
trigger: {
|
37
|
-
trigger_type: triggerType,
|
37
|
+
trigger_type: botRequest.triggerType,
|
38
38
|
},
|
39
39
|
};
|
40
|
-
if (triggerType === gcf_utils_1.TriggerType.GITHUB ||
|
41
|
-
|
42
|
-
|
43
|
-
// TODO: include these properties in more event types
|
44
|
-
if (triggerType === gcf_utils_1.TriggerType.GITHUB) {
|
40
|
+
if (botRequest.triggerType === gcf_utils_1.TriggerType.GITHUB ||
|
41
|
+
botRequest.triggerType === gcf_utils_1.TriggerType.TASK) {
|
42
|
+
triggerInfo.trigger.github_delivery_guid = botRequest.githubDeliveryId;
|
45
43
|
const webhookProperties = {
|
46
44
|
trigger_source_repo: getRepositoryDetails(requestBody),
|
47
45
|
trigger_sender: ((_a = requestBody.sender) === null || _a === void 0 ? void 0 : _a.login) || UNKNOWN,
|
48
46
|
payload_hash: getPayloadHash(requestBody),
|
49
|
-
github_event_type: getEventTypeDetails(
|
47
|
+
github_event_type: getEventTypeDetails(botRequest.eventName, requestBody.action),
|
50
48
|
};
|
51
49
|
triggerInfo.trigger = { ...webhookProperties, ...triggerInfo.trigger };
|
52
50
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"trigger-info-builder.js","sourceRoot":"","sources":["../../../src/logging/trigger-info-builder.ts"],"names":[],"mappings":";;;;;;AAAA,4BAA4B;AAC5B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,kDAAkD;AAClD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,4CAAyC;AACzC,oDAA4B;
|
1
|
+
{"version":3,"file":"trigger-info-builder.js","sourceRoot":"","sources":["../../../src/logging/trigger-info-builder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "gcf-utils",
|
3
|
-
"version": "13.
|
3
|
+
"version": "13.5.0",
|
4
4
|
"description": "An extension for running Probot in Google Cloud Functions",
|
5
5
|
"scripts": {
|
6
6
|
"compile": "tsc -p .",
|
@@ -38,7 +38,7 @@
|
|
38
38
|
"@types/uuid": "^8.3.1",
|
39
39
|
"body-parser": "^1.19.0",
|
40
40
|
"express": "^4.17.1",
|
41
|
-
"gaxios": "^
|
41
|
+
"gaxios": "^5.0.0",
|
42
42
|
"get-stream": "^6.0.1",
|
43
43
|
"into-stream": "^6.0.0",
|
44
44
|
"octokit-auth-probot": "^1.2.6",
|