@useairfoil/producer-github 0.0.2 → 0.0.3
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/LICENSE.txt +201 -0
- package/dist/index.mjs +1 -1
- package/dist/main.mjs +6 -4
- package/dist/main.mjs.map +1 -1
- package/dist/{src-D6cTmVtF.mjs → src-DKDUc00e.mjs} +272 -275
- package/dist/src-DKDUc00e.mjs.map +1 -0
- package/package.json +17 -17
- package/src/create-table.ts +6 -1
- package/src/main.ts +8 -2
- package/src/schemas/check-runs.ts +46 -22
- package/src/schemas/commit-statuses.ts +32 -12
- package/src/schemas/commits.ts +49 -33
- package/src/schemas/issue-comments.ts +22 -12
- package/src/schemas/issues.ts +38 -24
- package/src/schemas/pull-request-commits.ts +26 -12
- package/src/schemas/pull-request-review-comments.ts +41 -23
- package/src/schemas/pull-request-reviews.ts +29 -13
- package/src/schemas/pull-requests.ts +64 -44
- package/src/schemas/releases.ts +49 -32
- package/src/schemas/repositories.ts +40 -20
- package/src/schemas/shared.ts +24 -34
- package/src/schemas/workflow-jobs.ts +51 -27
- package/src/schemas/workflow-runs.ts +47 -30
- package/src/start.ts +2 -2
- package/dist/src-D6cTmVtF.mjs.map +0 -1
package/src/schemas/releases.ts
CHANGED
|
@@ -1,41 +1,58 @@
|
|
|
1
1
|
import { Iceberg } from "@useairfoil/connector-kit";
|
|
2
2
|
import { Schema, Struct } from "effect";
|
|
3
3
|
|
|
4
|
-
import { Long, Text, Timestamp, deleted,
|
|
4
|
+
import { Long, Text, Timestamp, deleted, user, version } from "./shared";
|
|
5
5
|
|
|
6
|
-
const asset = (
|
|
7
|
-
Schema.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
),
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
})
|
|
6
|
+
const asset = Schema.Struct({
|
|
7
|
+
id: Long.pipe(Schema.annotateKey({ description: "Asset ID." })),
|
|
8
|
+
name: Schema.String.pipe(Schema.annotateKey({ description: "File name." })),
|
|
9
|
+
label: Schema.NullOr(Schema.String).pipe(
|
|
10
|
+
Schema.annotateKey({ description: "Label shown instead of the name." }),
|
|
11
|
+
),
|
|
12
|
+
state: Schema.String.pipe(Schema.annotateKey({ description: "State: uploaded or open." })),
|
|
13
|
+
content_type: Schema.String.pipe(Schema.annotateKey({ description: "Media type of the file." })),
|
|
14
|
+
size: Long.pipe(Schema.annotateKey({ description: "Size in bytes." })),
|
|
15
|
+
download_count: Long.pipe(
|
|
16
|
+
Schema.annotateKey({ description: "Number of downloads when the release last changed." }),
|
|
17
|
+
),
|
|
18
|
+
created_at: Timestamp.pipe(Schema.annotateKey({ description: "Time the asset was uploaded." })),
|
|
19
|
+
updated_at: Timestamp.pipe(Schema.annotateKey({ description: "Time the asset last changed." })),
|
|
20
|
+
browser_download_url: Schema.String.pipe(Schema.annotateKey({ description: "Download link." })),
|
|
21
|
+
});
|
|
21
22
|
|
|
22
23
|
export const ReleaseSchema = Schema.Struct({
|
|
23
|
-
id: Long.pipe(
|
|
24
|
-
version: version(
|
|
25
|
-
node_id: Schema.String.pipe(
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
24
|
+
id: Long.pipe(Schema.annotateKey({ description: "Unique release ID." })),
|
|
25
|
+
version: version("release"),
|
|
26
|
+
node_id: Schema.String.pipe(
|
|
27
|
+
Schema.annotateKey({ description: "GraphQL node ID of the release." }),
|
|
28
|
+
),
|
|
29
|
+
repository_id: Long.pipe(
|
|
30
|
+
Schema.annotateKey({ description: "ID of the repository the release belongs to." }),
|
|
31
|
+
),
|
|
32
|
+
tag_name: Schema.String.pipe(Schema.annotateKey({ description: "Tag of the release." })),
|
|
33
|
+
target_commitish: Schema.String.pipe(
|
|
34
|
+
Schema.annotateKey({ description: "Branch or commit the tag was created from." }),
|
|
35
|
+
),
|
|
36
|
+
name: Text.pipe(Schema.annotateKey({ description: "Release title. Empty when not set." })),
|
|
37
|
+
body: Text.pipe(
|
|
38
|
+
Schema.annotateKey({ description: "Release notes in Markdown. Empty when not set." }),
|
|
39
|
+
),
|
|
40
|
+
draft: Schema.Boolean.pipe(
|
|
41
|
+
Schema.annotateKey({ description: "Whether the release is a draft." }),
|
|
42
|
+
),
|
|
43
|
+
prerelease: Schema.Boolean.pipe(
|
|
44
|
+
Schema.annotateKey({ description: "Whether the release is a pre-release." }),
|
|
45
|
+
),
|
|
46
|
+
author: user.pipe(Schema.annotateKey({ description: "Account that created the release." })),
|
|
47
|
+
assets: Schema.Array(asset).pipe(
|
|
48
|
+
Schema.annotateKey({ description: "Files attached to the release." }),
|
|
49
|
+
),
|
|
50
|
+
created_at: Timestamp.pipe(Schema.annotateKey({ description: "Time the release was created." })),
|
|
51
|
+
published_at: Schema.NullOr(Timestamp).pipe(
|
|
52
|
+
Schema.annotateKey({ description: "Time the release was published." }),
|
|
53
|
+
),
|
|
54
|
+
html_url: Schema.String.pipe(Schema.annotateKey({ description: "Release page on GitHub." })),
|
|
55
|
+
_deleted: deleted("release"),
|
|
39
56
|
})
|
|
40
57
|
.annotate({
|
|
41
58
|
description: "Releases in the installation's repositories, with their assets.",
|
|
@@ -1,29 +1,49 @@
|
|
|
1
1
|
import { Iceberg } from "@useairfoil/connector-kit";
|
|
2
2
|
import { Effect, Schema, Struct } from "effect";
|
|
3
3
|
|
|
4
|
-
import { Long, Text, Timestamp, deleted,
|
|
4
|
+
import { Long, Text, Timestamp, deleted, optionalList, user, version } from "./shared";
|
|
5
5
|
|
|
6
6
|
export const RepositorySchema = Schema.Struct({
|
|
7
|
-
id: Long.pipe(
|
|
8
|
-
version: version(
|
|
9
|
-
node_id: Schema.String.pipe(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
id: Long.pipe(Schema.annotateKey({ description: "Unique repository ID." })),
|
|
8
|
+
version: version("repository"),
|
|
9
|
+
node_id: Schema.String.pipe(
|
|
10
|
+
Schema.annotateKey({ description: "GraphQL node ID of the repository." }),
|
|
11
|
+
),
|
|
12
|
+
name: Schema.String.pipe(Schema.annotateKey({ description: "Repository name." })),
|
|
13
|
+
full_name: Schema.String.pipe(
|
|
14
|
+
Schema.annotateKey({ description: "Owner and name, such as octo-org/octo-repo." }),
|
|
15
|
+
),
|
|
16
|
+
owner: user.pipe(Schema.annotateKey({ description: "Account that owns the repository." })),
|
|
17
|
+
private: Schema.Boolean.pipe(
|
|
18
|
+
Schema.annotateKey({ description: "Whether the repository is private." }),
|
|
19
|
+
),
|
|
14
20
|
visibility: Schema.optionalKey(Schema.String).pipe(
|
|
15
|
-
|
|
16
|
-
),
|
|
17
|
-
description: Text.pipe(
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
21
|
+
Schema.annotateKey({ description: "Visibility: public, private, or internal." }),
|
|
22
|
+
),
|
|
23
|
+
description: Text.pipe(
|
|
24
|
+
Schema.annotateKey({ description: "Repository description. Empty when not set." }),
|
|
25
|
+
),
|
|
26
|
+
fork: Schema.Boolean.pipe(
|
|
27
|
+
Schema.annotateKey({ description: "Whether the repository is a fork." }),
|
|
28
|
+
),
|
|
29
|
+
archived: Schema.Boolean.pipe(
|
|
30
|
+
Schema.annotateKey({ description: "Whether the repository is archived." }),
|
|
31
|
+
),
|
|
32
|
+
disabled: Schema.Boolean.pipe(
|
|
33
|
+
Schema.annotateKey({ description: "Whether the repository is disabled." }),
|
|
34
|
+
),
|
|
35
|
+
default_branch: Schema.String.pipe(Schema.annotateKey({ description: "Default branch name." })),
|
|
36
|
+
language: Schema.NullOr(Schema.String).pipe(
|
|
37
|
+
Schema.annotateKey({ description: "Main language GitHub detected." }),
|
|
38
|
+
),
|
|
39
|
+
topics: Schema.Array(Schema.String).pipe(
|
|
40
|
+
Schema.annotateKey({ description: "Repository topics." }),
|
|
41
|
+
),
|
|
42
|
+
html_url: Schema.String.pipe(Schema.annotateKey({ description: "Repository page on GitHub." })),
|
|
43
|
+
created_at: Timestamp.pipe(
|
|
44
|
+
Schema.annotateKey({ description: "Time the repository was created." }),
|
|
45
|
+
),
|
|
46
|
+
_deleted: deleted("repository"),
|
|
27
47
|
})
|
|
28
48
|
.annotate({
|
|
29
49
|
description: "Repositories the GitHub App installation can read.",
|
package/src/schemas/shared.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import { Iceberg } from "@useairfoil/connector-kit";
|
|
2
1
|
import { Schema, SchemaTransformation } from "effect";
|
|
3
2
|
|
|
4
|
-
export const field = (fieldId: number, description: string) =>
|
|
5
|
-
Iceberg.field(fieldId, { description });
|
|
6
|
-
|
|
7
3
|
/** IDs and counts. Connector Kit maps whole numbers to Iceberg longs. */
|
|
8
4
|
export const Long = Schema.Int.pipe(
|
|
9
5
|
Schema.decodeTo(
|
|
@@ -42,45 +38,39 @@ export const optionalList = <S extends Schema.Top>(item: S) =>
|
|
|
42
38
|
),
|
|
43
39
|
);
|
|
44
40
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
Schema.
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
),
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
export const label = (baseId: number) =>
|
|
56
|
-
Schema.Struct({
|
|
57
|
-
id: Long.pipe(field(baseId, "Label ID.")),
|
|
58
|
-
name: Schema.String.pipe(field(baseId + 1, "Label name.")),
|
|
59
|
-
});
|
|
41
|
+
export const user = Schema.Struct({
|
|
42
|
+
id: Long.pipe(Schema.annotateKey({ description: "GitHub user ID." })),
|
|
43
|
+
login: Schema.String.pipe(Schema.annotateKey({ description: "GitHub username." })),
|
|
44
|
+
type: Schema.String.pipe(
|
|
45
|
+
Schema.annotateKey({ description: "Account type, such as User, Bot, or Organization." }),
|
|
46
|
+
),
|
|
47
|
+
});
|
|
60
48
|
|
|
61
|
-
export const
|
|
62
|
-
Schema.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
title: Schema.String.pipe(field(baseId + 2, "Milestone title.")),
|
|
66
|
-
});
|
|
49
|
+
export const label = Schema.Struct({
|
|
50
|
+
id: Long.pipe(Schema.annotateKey({ description: "Label ID." })),
|
|
51
|
+
name: Schema.String.pipe(Schema.annotateKey({ description: "Label name." })),
|
|
52
|
+
});
|
|
67
53
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
54
|
+
export const milestone = Schema.Struct({
|
|
55
|
+
id: Long.pipe(Schema.annotateKey({ description: "Milestone ID." })),
|
|
56
|
+
number: Long.pipe(Schema.annotateKey({ description: "Milestone number in the repository." })),
|
|
57
|
+
title: Schema.String.pipe(Schema.annotateKey({ description: "Milestone title." })),
|
|
58
|
+
});
|
|
71
59
|
|
|
72
|
-
export const version = (
|
|
73
|
-
Schema.Date.pipe(
|
|
60
|
+
export const version = (object: string) =>
|
|
61
|
+
Schema.Date.pipe(Schema.annotateKey({ description: `Time GitHub last updated the ${object}.` }));
|
|
74
62
|
|
|
75
63
|
/** For objects without an update time. A newer read wins. */
|
|
76
|
-
export const readVersion = (
|
|
64
|
+
export const readVersion = (object: string) =>
|
|
77
65
|
Schema.Date.pipe(
|
|
78
|
-
|
|
66
|
+
Schema.annotateKey({
|
|
67
|
+
description: `Time the connector read the ${object}. GitHub has no update time for it.`,
|
|
68
|
+
}),
|
|
79
69
|
);
|
|
80
70
|
|
|
81
|
-
export const deleted = (
|
|
71
|
+
export const deleted = (object: string) =>
|
|
82
72
|
Schema.optional(Schema.Boolean).pipe(
|
|
83
|
-
|
|
73
|
+
Schema.annotateKey({ description: `Whether the ${object} was deleted in GitHub.` }),
|
|
84
74
|
);
|
|
85
75
|
|
|
86
76
|
export const ObjectRefSchema = Schema.Struct({ id: Long });
|
|
@@ -1,43 +1,67 @@
|
|
|
1
1
|
import { Iceberg } from "@useairfoil/connector-kit";
|
|
2
2
|
import { Schema, Struct } from "effect";
|
|
3
3
|
|
|
4
|
-
import { Long, Timestamp,
|
|
4
|
+
import { Long, Timestamp, readVersion } from "./shared";
|
|
5
5
|
|
|
6
6
|
const step = Schema.Struct({
|
|
7
|
-
number: Long.pipe(
|
|
8
|
-
name: Schema.String.pipe(
|
|
9
|
-
status: Schema.String.pipe(
|
|
10
|
-
|
|
7
|
+
number: Long.pipe(Schema.annotateKey({ description: "Step number." })),
|
|
8
|
+
name: Schema.String.pipe(Schema.annotateKey({ description: "Step name." })),
|
|
9
|
+
status: Schema.String.pipe(
|
|
10
|
+
Schema.annotateKey({ description: "Status, such as queued, in_progress, or completed." }),
|
|
11
|
+
),
|
|
12
|
+
conclusion: Schema.NullOr(Schema.String).pipe(
|
|
13
|
+
Schema.annotateKey({ description: "Result of a completed step." }),
|
|
14
|
+
),
|
|
11
15
|
started_at: Schema.optionalKey(Schema.NullOr(Timestamp)).pipe(
|
|
12
|
-
|
|
16
|
+
Schema.annotateKey({ description: "Time the step started." }),
|
|
13
17
|
),
|
|
14
18
|
completed_at: Schema.optionalKey(Schema.NullOr(Timestamp)).pipe(
|
|
15
|
-
|
|
19
|
+
Schema.annotateKey({ description: "Time the step completed." }),
|
|
16
20
|
),
|
|
17
21
|
});
|
|
18
22
|
|
|
19
23
|
export const WorkflowJobSchema = Schema.Struct({
|
|
20
|
-
id: Long.pipe(
|
|
21
|
-
version: readVersion(
|
|
22
|
-
node_id: Schema.String.pipe(
|
|
23
|
-
repository_id: Long.pipe(
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
24
|
+
id: Long.pipe(Schema.annotateKey({ description: "Unique job ID." })),
|
|
25
|
+
version: readVersion("job"),
|
|
26
|
+
node_id: Schema.String.pipe(Schema.annotateKey({ description: "GraphQL node ID of the job." })),
|
|
27
|
+
repository_id: Long.pipe(
|
|
28
|
+
Schema.annotateKey({ description: "ID of the repository the job belongs to." }),
|
|
29
|
+
),
|
|
30
|
+
run_id: Long.pipe(Schema.annotateKey({ description: "ID of the workflow run." })),
|
|
31
|
+
run_attempt: Schema.optionalKey(Long).pipe(
|
|
32
|
+
Schema.annotateKey({ description: "Attempt of the run the job belongs to." }),
|
|
33
|
+
),
|
|
34
|
+
workflow_name: Schema.NullOr(Schema.String).pipe(
|
|
35
|
+
Schema.annotateKey({ description: "Workflow name." }),
|
|
36
|
+
),
|
|
37
|
+
name: Schema.String.pipe(Schema.annotateKey({ description: "Job name." })),
|
|
38
|
+
head_sha: Schema.String.pipe(
|
|
39
|
+
Schema.annotateKey({ description: "SHA of the commit the job ran on." }),
|
|
40
|
+
),
|
|
41
|
+
head_branch: Schema.NullOr(Schema.String).pipe(
|
|
42
|
+
Schema.annotateKey({ description: "Branch the job ran on." }),
|
|
43
|
+
),
|
|
44
|
+
status: Schema.String.pipe(
|
|
45
|
+
Schema.annotateKey({ description: "Status, such as queued, in_progress, or completed." }),
|
|
46
|
+
),
|
|
31
47
|
conclusion: Schema.NullOr(Schema.String).pipe(
|
|
32
|
-
|
|
33
|
-
),
|
|
34
|
-
created_at: Timestamp.pipe(
|
|
35
|
-
started_at: Timestamp.pipe(
|
|
36
|
-
completed_at: Schema.NullOr(Timestamp).pipe(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
48
|
+
Schema.annotateKey({ description: "Result of a completed job, such as success or failure." }),
|
|
49
|
+
),
|
|
50
|
+
created_at: Timestamp.pipe(Schema.annotateKey({ description: "Time the job was queued." })),
|
|
51
|
+
started_at: Timestamp.pipe(Schema.annotateKey({ description: "Time the job started." })),
|
|
52
|
+
completed_at: Schema.NullOr(Timestamp).pipe(
|
|
53
|
+
Schema.annotateKey({ description: "Time the job completed." }),
|
|
54
|
+
),
|
|
55
|
+
runner_name: Schema.NullOr(Schema.String).pipe(
|
|
56
|
+
Schema.annotateKey({ description: "Name of the runner." }),
|
|
57
|
+
),
|
|
58
|
+
labels: Schema.Array(Schema.String).pipe(
|
|
59
|
+
Schema.annotateKey({ description: "Runner labels the job asked for." }),
|
|
60
|
+
),
|
|
61
|
+
steps: Schema.Array(step).pipe(Schema.annotateKey({ description: "Steps of the job." })),
|
|
62
|
+
html_url: Schema.NullOr(Schema.String).pipe(
|
|
63
|
+
Schema.annotateKey({ description: "Job page on GitHub." }),
|
|
64
|
+
),
|
|
41
65
|
})
|
|
42
66
|
.annotate({
|
|
43
67
|
description: "Jobs of GitHub Actions workflow runs. Each run attempt has its own jobs.",
|
|
@@ -1,43 +1,60 @@
|
|
|
1
1
|
import { Iceberg } from "@useairfoil/connector-kit";
|
|
2
2
|
import { Schema, Struct } from "effect";
|
|
3
3
|
|
|
4
|
-
import { Long, Timestamp,
|
|
4
|
+
import { Long, Timestamp, user, version } from "./shared";
|
|
5
5
|
|
|
6
6
|
export const WorkflowRunSchema = Schema.Struct({
|
|
7
|
-
id: Long.pipe(
|
|
8
|
-
version: version(
|
|
9
|
-
node_id: Schema.String.pipe(
|
|
10
|
-
repository_id: Long.pipe(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
id: Long.pipe(Schema.annotateKey({ description: "Unique workflow run ID." })),
|
|
8
|
+
version: version("workflow run"),
|
|
9
|
+
node_id: Schema.String.pipe(Schema.annotateKey({ description: "GraphQL node ID of the run." })),
|
|
10
|
+
repository_id: Long.pipe(
|
|
11
|
+
Schema.annotateKey({ description: "ID of the repository the run belongs to." }),
|
|
12
|
+
),
|
|
13
|
+
workflow_id: Long.pipe(Schema.annotateKey({ description: "ID of the workflow." })),
|
|
14
|
+
name: Schema.NullOr(Schema.String).pipe(Schema.annotateKey({ description: "Workflow name." })),
|
|
15
|
+
display_title: Schema.String.pipe(
|
|
16
|
+
Schema.annotateKey({ description: "Title of the run, such as the commit message." }),
|
|
17
|
+
),
|
|
18
|
+
path: Schema.String.pipe(Schema.annotateKey({ description: "Path of the workflow file." })),
|
|
19
|
+
event: Schema.String.pipe(
|
|
20
|
+
Schema.annotateKey({ description: "Event that started the run, such as push." }),
|
|
21
|
+
),
|
|
16
22
|
status: Schema.NullOr(Schema.String).pipe(
|
|
17
|
-
|
|
23
|
+
Schema.annotateKey({ description: "Status, such as queued, in_progress, or completed." }),
|
|
18
24
|
),
|
|
19
25
|
conclusion: Schema.NullOr(Schema.String).pipe(
|
|
20
|
-
|
|
21
|
-
),
|
|
22
|
-
head_branch: Schema.NullOr(Schema.String).pipe(
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
Schema.annotateKey({ description: "Result of a completed run, such as success or failure." }),
|
|
27
|
+
),
|
|
28
|
+
head_branch: Schema.NullOr(Schema.String).pipe(
|
|
29
|
+
Schema.annotateKey({ description: "Branch the run is for." }),
|
|
30
|
+
),
|
|
31
|
+
head_sha: Schema.String.pipe(
|
|
32
|
+
Schema.annotateKey({ description: "SHA of the commit the run is for." }),
|
|
33
|
+
),
|
|
34
|
+
run_number: Long.pipe(Schema.annotateKey({ description: "Run number of the workflow." })),
|
|
35
|
+
run_attempt: Schema.optionalKey(Long).pipe(
|
|
36
|
+
Schema.annotateKey({ description: "Attempt number. Re-runs count up." }),
|
|
37
|
+
),
|
|
38
|
+
check_suite_id: Schema.optionalKey(Long).pipe(
|
|
39
|
+
Schema.annotateKey({ description: "ID of the run's check suite." }),
|
|
40
|
+
),
|
|
41
|
+
actor: Schema.optionalKey(user).pipe(
|
|
42
|
+
Schema.annotateKey({ description: "Account that started the first attempt." }),
|
|
43
|
+
),
|
|
44
|
+
triggering_actor: Schema.optionalKey(user).pipe(
|
|
45
|
+
Schema.annotateKey({ description: "Account that started the latest attempt." }),
|
|
46
|
+
),
|
|
47
|
+
pull_requests: Schema.Array(
|
|
33
48
|
Schema.Struct({
|
|
34
|
-
id: Long.pipe(
|
|
35
|
-
number: Long.pipe(
|
|
49
|
+
id: Long.pipe(Schema.annotateKey({ description: "Pull request ID." })),
|
|
50
|
+
number: Long.pipe(Schema.annotateKey({ description: "Pull request number." })),
|
|
36
51
|
}),
|
|
37
|
-
).pipe(
|
|
38
|
-
created_at: Timestamp.pipe(
|
|
39
|
-
run_started_at: Schema.optionalKey(Timestamp).pipe(
|
|
40
|
-
|
|
52
|
+
).pipe(Schema.annotateKey({ description: "Pull requests the run is for. Empty for forks." })),
|
|
53
|
+
created_at: Timestamp.pipe(Schema.annotateKey({ description: "Time the run was created." })),
|
|
54
|
+
run_started_at: Schema.optionalKey(Timestamp).pipe(
|
|
55
|
+
Schema.annotateKey({ description: "Time the latest attempt started." }),
|
|
56
|
+
),
|
|
57
|
+
html_url: Schema.String.pipe(Schema.annotateKey({ description: "Run page on GitHub." })),
|
|
41
58
|
})
|
|
42
59
|
.annotate({
|
|
43
60
|
description: "GitHub Actions workflow runs in the installation's repositories.",
|
package/src/start.ts
CHANGED
|
@@ -30,7 +30,7 @@ export const startCommand = Command.make("start", {}, () =>
|
|
|
30
30
|
const entrypoint = yield* GitHubConnector.GitHubConnector;
|
|
31
31
|
|
|
32
32
|
return yield* ConnectorApp.start(entrypoint, { port }).pipe(
|
|
33
|
-
Effect.provide(Ingestor.
|
|
33
|
+
Effect.provide(Ingestor.layerArrowFlightConfig(entrypoint)),
|
|
34
34
|
);
|
|
35
35
|
}).pipe(
|
|
36
36
|
Effect.annotateLogs({ component: "github" }),
|
|
@@ -44,4 +44,4 @@ export const startCommand = Command.make("start", {}, () =>
|
|
|
44
44
|
),
|
|
45
45
|
Effect.provide(RuntimeConfig.layerHosted()),
|
|
46
46
|
),
|
|
47
|
-
).pipe(Command.withDescription("Run the
|
|
47
|
+
).pipe(Command.withDescription("Run the connector"));
|