gitabu 0.1.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.
Files changed (104) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.rubocop.yml +33 -0
  4. data/CHANGELOG.md +3 -0
  5. data/Gemfile +10 -0
  6. data/Gemfile.lock +65 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +42 -0
  9. data/Rakefile +12 -0
  10. data/gitabu.gemspec +41 -0
  11. data/lib/gitabu/api/v3/actions.rb +3724 -0
  12. data/lib/gitabu/api/v3/activity.rb +835 -0
  13. data/lib/gitabu/api/v3/apps.rb +961 -0
  14. data/lib/gitabu/api/v3/billing.rb +217 -0
  15. data/lib/gitabu/api/v3/branches.rb +1098 -0
  16. data/lib/gitabu/api/v3/checks.rb +384 -0
  17. data/lib/gitabu/api/v3/code_scanning.rb +315 -0
  18. data/lib/gitabu/api/v3/codes_of_conduct.rb +92 -0
  19. data/lib/gitabu/api/v3/codespaces.rb +650 -0
  20. data/lib/gitabu/api/v3/collaborators.rb +341 -0
  21. data/lib/gitabu/api/v3/commits.rb +428 -0
  22. data/lib/gitabu/api/v3/dependabot.rb +419 -0
  23. data/lib/gitabu/api/v3/deploy_keys.rb +152 -0
  24. data/lib/gitabu/api/v3/deployments.rb +356 -0
  25. data/lib/gitabu/api/v3/emojis.rb +67 -0
  26. data/lib/gitabu/api/v3/enterprise_admin.rb +495 -0
  27. data/lib/gitabu/api/v3/gists.rb +552 -0
  28. data/lib/gitabu/api/v3/git.rb +409 -0
  29. data/lib/gitabu/api/v3/gitignore.rb +92 -0
  30. data/lib/gitabu/api/v3/interactions.rb +275 -0
  31. data/lib/gitabu/api/v3/issues.rb +1119 -0
  32. data/lib/gitabu/api/v3/licenses.rb +118 -0
  33. data/lib/gitabu/api/v3/markdown.rb +94 -0
  34. data/lib/gitabu/api/v3/meta.rb +142 -0
  35. data/lib/gitabu/api/v3/metrics.rb +302 -0
  36. data/lib/gitabu/api/v3/migrations.rb +631 -0
  37. data/lib/gitabu/api/v3/orgs.rb +1291 -0
  38. data/lib/gitabu/api/v3/packages.rb +686 -0
  39. data/lib/gitabu/api/v3/pages.rb +282 -0
  40. data/lib/gitabu/api/v3/projects.rb +693 -0
  41. data/lib/gitabu/api/v3/pulls.rb +816 -0
  42. data/lib/gitabu/api/v3/rate_limit.rb +67 -0
  43. data/lib/gitabu/api/v3/reactions.rb +734 -0
  44. data/lib/gitabu/api/v3/releases.rb +411 -0
  45. data/lib/gitabu/api/v3/repos.rb +1136 -0
  46. data/lib/gitabu/api/v3/scim.rb +214 -0
  47. data/lib/gitabu/api/v3/search.rb +217 -0
  48. data/lib/gitabu/api/v3/secret_scanning.rb +201 -0
  49. data/lib/gitabu/api/v3/teams.rb +1963 -0
  50. data/lib/gitabu/api/v3/users.rb +851 -0
  51. data/lib/gitabu/api/v3/webhooks.rb +379 -0
  52. data/lib/gitabu/builder.rb +37 -0
  53. data/lib/gitabu/client.rb +8 -0
  54. data/lib/gitabu/generator.rb +75 -0
  55. data/lib/gitabu/http_client.rb +96 -0
  56. data/lib/gitabu/items.rb +110 -0
  57. data/lib/gitabu/public/api/v3/actions.json +5779 -0
  58. data/lib/gitabu/public/api/v3/activity.json +1248 -0
  59. data/lib/gitabu/public/api/v3/apps.json +1174 -0
  60. data/lib/gitabu/public/api/v3/billing.json +183 -0
  61. data/lib/gitabu/public/api/v3/branches.json +1886 -0
  62. data/lib/gitabu/public/api/v3/checks.json +856 -0
  63. data/lib/gitabu/public/api/v3/code_scanning.json +666 -0
  64. data/lib/gitabu/public/api/v3/codes_of_conduct.json +41 -0
  65. data/lib/gitabu/public/api/v3/codespaces.json +884 -0
  66. data/lib/gitabu/public/api/v3/collaborators.json +464 -0
  67. data/lib/gitabu/public/api/v3/commits.json +830 -0
  68. data/lib/gitabu/public/api/v3/dependabot.json +596 -0
  69. data/lib/gitabu/public/api/v3/deploy_keys.json +195 -0
  70. data/lib/gitabu/public/api/v3/deployments.json +698 -0
  71. data/lib/gitabu/public/api/v3/emojis.json +18 -0
  72. data/lib/gitabu/public/api/v3/enterprise_admin.json +881 -0
  73. data/lib/gitabu/public/api/v3/gists.json +689 -0
  74. data/lib/gitabu/public/api/v3/git.json +735 -0
  75. data/lib/gitabu/public/api/v3/gitignore.json +41 -0
  76. data/lib/gitabu/public/api/v3/interactions.json +265 -0
  77. data/lib/gitabu/public/api/v3/issues.json +2359 -0
  78. data/lib/gitabu/public/api/v3/licenses.json +100 -0
  79. data/lib/gitabu/public/api/v3/markdown.json +59 -0
  80. data/lib/gitabu/public/api/v3/meta.json +69 -0
  81. data/lib/gitabu/public/api/v3/metrics.json +342 -0
  82. data/lib/gitabu/public/api/v3/migrations.json +960 -0
  83. data/lib/gitabu/public/api/v3/orgs.json +1989 -0
  84. data/lib/gitabu/public/api/v3/packages.json +1078 -0
  85. data/lib/gitabu/public/api/v3/pages.json +373 -0
  86. data/lib/gitabu/public/api/v3/projects.json +966 -0
  87. data/lib/gitabu/public/api/v3/pulls.json +1768 -0
  88. data/lib/gitabu/public/api/v3/rate_limit.json +18 -0
  89. data/lib/gitabu/public/api/v3/reactions.json +1425 -0
  90. data/lib/gitabu/public/api/v3/releases.json +753 -0
  91. data/lib/gitabu/public/api/v3/repos.json +2314 -0
  92. data/lib/gitabu/public/api/v3/scim.json +412 -0
  93. data/lib/gitabu/public/api/v3/search.json +408 -0
  94. data/lib/gitabu/public/api/v3/secret_scanning.json +385 -0
  95. data/lib/gitabu/public/api/v3/teams.json +3126 -0
  96. data/lib/gitabu/public/api/v3/users.json +956 -0
  97. data/lib/gitabu/public/api/v3/webhooks.json +667 -0
  98. data/lib/gitabu/run.rb +237 -0
  99. data/lib/gitabu/scraper.rb +86 -0
  100. data/lib/gitabu/templates/template.rb.erb +70 -0
  101. data/lib/gitabu/version.rb +6 -0
  102. data/lib/gitabu.rb +57 -0
  103. data/sig/gitabu.rbs +4 -0
  104. metadata +177 -0
@@ -0,0 +1,464 @@
1
+ {
2
+ "result": [
3
+ {
4
+ "namespace_description": "List repository collaborators",
5
+ "method": "get",
6
+ "endpoint": "/repos/{owner}/{repo}/collaborators",
7
+ "field_0": {
8
+ "field_type": "header",
9
+ "fields": {
10
+ "name": "accept",
11
+ "type": "string",
12
+ "in": "header",
13
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
14
+ }
15
+ },
16
+ "field_1": {
17
+ "field_type": "path",
18
+ "fields": {
19
+ "name": "owner",
20
+ "type": "string",
21
+ "in": "path",
22
+ "description": ""
23
+ }
24
+ },
25
+ "field_2": {
26
+ "field_type": "path",
27
+ "fields": {
28
+ "name": "repo",
29
+ "type": "string",
30
+ "in": "path",
31
+ "description": ""
32
+ }
33
+ },
34
+ "field_3": {
35
+ "field_type": "query",
36
+ "fields": {
37
+ "name": "affiliation",
38
+ "type": "string",
39
+ "in": "query",
40
+ "description": "Filter collaborators returned by their affiliation. Can be one of:\n* outside: All outside collaborators of an organization-owned repository.\n* direct: All collaborators with permissions to an organization-owned repository, regardless of organization membership status.\n* all: All collaborators the authenticated user can see.Default: all"
41
+ }
42
+ },
43
+ "field_4": {
44
+ "field_type": "query",
45
+ "fields": {
46
+ "name": "per_page",
47
+ "type": "integer",
48
+ "in": "query",
49
+ "description": "Results per page (max 100)Default: 30"
50
+ }
51
+ },
52
+ "field_5": {
53
+ "field_type": "query",
54
+ "fields": {
55
+ "name": "page",
56
+ "type": "integer",
57
+ "in": "query",
58
+ "description": "Page number of the results to fetch.Default: 1"
59
+ }
60
+ }
61
+ },
62
+ {
63
+ "namespace_description": "Check if a user is a repository collaborator",
64
+ "method": "get",
65
+ "endpoint": "/repos/{owner}/{repo}/collaborators/{username}",
66
+ "field_0": {
67
+ "field_type": "header",
68
+ "fields": {
69
+ "name": "accept",
70
+ "type": "string",
71
+ "in": "header",
72
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
73
+ }
74
+ },
75
+ "field_1": {
76
+ "field_type": "path",
77
+ "fields": {
78
+ "name": "owner",
79
+ "type": "string",
80
+ "in": "path",
81
+ "description": ""
82
+ }
83
+ },
84
+ "field_2": {
85
+ "field_type": "path",
86
+ "fields": {
87
+ "name": "repo",
88
+ "type": "string",
89
+ "in": "path",
90
+ "description": ""
91
+ }
92
+ },
93
+ "field_3": {
94
+ "field_type": "path",
95
+ "fields": {
96
+ "name": "username",
97
+ "type": "string",
98
+ "in": "path",
99
+ "description": ""
100
+ }
101
+ }
102
+ },
103
+ {
104
+ "namespace_description": "Add a repository collaborator",
105
+ "method": "put",
106
+ "endpoint": "Cannot assign {member} permission of {role name}\n",
107
+ "field_0": {
108
+ "field_type": "header",
109
+ "fields": {
110
+ "name": "accept",
111
+ "type": "string",
112
+ "in": "header",
113
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
114
+ }
115
+ },
116
+ "field_1": {
117
+ "field_type": "path",
118
+ "fields": {
119
+ "name": "owner",
120
+ "type": "string",
121
+ "in": "path",
122
+ "description": ""
123
+ }
124
+ },
125
+ "field_2": {
126
+ "field_type": "path",
127
+ "fields": {
128
+ "name": "repo",
129
+ "type": "string",
130
+ "in": "path",
131
+ "description": ""
132
+ }
133
+ },
134
+ "field_3": {
135
+ "field_type": "path",
136
+ "fields": {
137
+ "name": "username",
138
+ "type": "string",
139
+ "in": "path",
140
+ "description": ""
141
+ }
142
+ },
143
+ "field_4": {
144
+ "field_type": "body",
145
+ "fields": {
146
+ "name": "permission",
147
+ "type": "string",
148
+ "in": "body",
149
+ "description": "The permission to grant the collaborator. Only valid on organization-owned repositories. Can be one of:\n* pull - can pull, but not push to or administer this repository.\n* push - can pull and push, but not administer this repository.\n* admin - can pull, push and administer this repository.\n* maintain - Recommended for project managers who need to manage the repository without access to sensitive or destructive actions.\n* triage - Recommended for contributors who need to proactively manage issues and pull requests without write access.\n* custom repository role name - A custom repository role, if the owning organization has defined any.Default: push"
150
+ }
151
+ },
152
+ "field_5": {
153
+ "field_type": "body",
154
+ "fields": {
155
+ "name": "permissions",
156
+ "type": "string",
157
+ "in": "body",
158
+ "description": ""
159
+ }
160
+ }
161
+ },
162
+ {
163
+ "namespace_description": "Remove a repository collaborator",
164
+ "method": "delete",
165
+ "endpoint": "/repos/{owner}/{repo}/collaborators/{username}",
166
+ "field_0": {
167
+ "field_type": "header",
168
+ "fields": {
169
+ "name": "accept",
170
+ "type": "string",
171
+ "in": "header",
172
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
173
+ }
174
+ },
175
+ "field_1": {
176
+ "field_type": "path",
177
+ "fields": {
178
+ "name": "owner",
179
+ "type": "string",
180
+ "in": "path",
181
+ "description": ""
182
+ }
183
+ },
184
+ "field_2": {
185
+ "field_type": "path",
186
+ "fields": {
187
+ "name": "repo",
188
+ "type": "string",
189
+ "in": "path",
190
+ "description": ""
191
+ }
192
+ },
193
+ "field_3": {
194
+ "field_type": "path",
195
+ "fields": {
196
+ "name": "username",
197
+ "type": "string",
198
+ "in": "path",
199
+ "description": ""
200
+ }
201
+ }
202
+ },
203
+ {
204
+ "namespace_description": "Get repository permissions for a user",
205
+ "method": "get",
206
+ "endpoint": "/repos/{owner}/{repo}/collaborators/{username}/permission",
207
+ "field_0": {
208
+ "field_type": "header",
209
+ "fields": {
210
+ "name": "accept",
211
+ "type": "string",
212
+ "in": "header",
213
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
214
+ }
215
+ },
216
+ "field_1": {
217
+ "field_type": "path",
218
+ "fields": {
219
+ "name": "owner",
220
+ "type": "string",
221
+ "in": "path",
222
+ "description": ""
223
+ }
224
+ },
225
+ "field_2": {
226
+ "field_type": "path",
227
+ "fields": {
228
+ "name": "repo",
229
+ "type": "string",
230
+ "in": "path",
231
+ "description": ""
232
+ }
233
+ },
234
+ "field_3": {
235
+ "field_type": "path",
236
+ "fields": {
237
+ "name": "username",
238
+ "type": "string",
239
+ "in": "path",
240
+ "description": ""
241
+ }
242
+ }
243
+ },
244
+ {
245
+ "namespace_description": "List repository invitations",
246
+ "method": "get",
247
+ "endpoint": "/repos/{owner}/{repo}/invitations",
248
+ "field_0": {
249
+ "field_type": "header",
250
+ "fields": {
251
+ "name": "accept",
252
+ "type": "string",
253
+ "in": "header",
254
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
255
+ }
256
+ },
257
+ "field_1": {
258
+ "field_type": "path",
259
+ "fields": {
260
+ "name": "owner",
261
+ "type": "string",
262
+ "in": "path",
263
+ "description": ""
264
+ }
265
+ },
266
+ "field_2": {
267
+ "field_type": "path",
268
+ "fields": {
269
+ "name": "repo",
270
+ "type": "string",
271
+ "in": "path",
272
+ "description": ""
273
+ }
274
+ },
275
+ "field_3": {
276
+ "field_type": "query",
277
+ "fields": {
278
+ "name": "per_page",
279
+ "type": "integer",
280
+ "in": "query",
281
+ "description": "Results per page (max 100)Default: 30"
282
+ }
283
+ },
284
+ "field_4": {
285
+ "field_type": "query",
286
+ "fields": {
287
+ "name": "page",
288
+ "type": "integer",
289
+ "in": "query",
290
+ "description": "Page number of the results to fetch.Default: 1"
291
+ }
292
+ }
293
+ },
294
+ {
295
+ "namespace_description": "Update a repository invitation",
296
+ "method": "patch",
297
+ "endpoint": "/repos/{owner}/{repo}/invitations/{invitation_id}",
298
+ "field_0": {
299
+ "field_type": "header",
300
+ "fields": {
301
+ "name": "accept",
302
+ "type": "string",
303
+ "in": "header",
304
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
305
+ }
306
+ },
307
+ "field_1": {
308
+ "field_type": "path",
309
+ "fields": {
310
+ "name": "owner",
311
+ "type": "string",
312
+ "in": "path",
313
+ "description": ""
314
+ }
315
+ },
316
+ "field_2": {
317
+ "field_type": "path",
318
+ "fields": {
319
+ "name": "repo",
320
+ "type": "string",
321
+ "in": "path",
322
+ "description": ""
323
+ }
324
+ },
325
+ "field_3": {
326
+ "field_type": "path",
327
+ "fields": {
328
+ "name": "invitation_id",
329
+ "type": "integer",
330
+ "in": "path",
331
+ "description": "invitation_id parameter"
332
+ }
333
+ },
334
+ "field_4": {
335
+ "field_type": "body",
336
+ "fields": {
337
+ "name": "permissions",
338
+ "type": "string",
339
+ "in": "body",
340
+ "description": "The permissions that the associated user will have on the repository. Valid values are read, write, maintain, triage, and admin."
341
+ }
342
+ }
343
+ },
344
+ {
345
+ "namespace_description": "Delete a repository invitation",
346
+ "method": "delete",
347
+ "endpoint": "/repos/{owner}/{repo}/invitations/{invitation_id}",
348
+ "field_0": {
349
+ "field_type": "header",
350
+ "fields": {
351
+ "name": "accept",
352
+ "type": "string",
353
+ "in": "header",
354
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
355
+ }
356
+ },
357
+ "field_1": {
358
+ "field_type": "path",
359
+ "fields": {
360
+ "name": "owner",
361
+ "type": "string",
362
+ "in": "path",
363
+ "description": ""
364
+ }
365
+ },
366
+ "field_2": {
367
+ "field_type": "path",
368
+ "fields": {
369
+ "name": "repo",
370
+ "type": "string",
371
+ "in": "path",
372
+ "description": ""
373
+ }
374
+ },
375
+ "field_3": {
376
+ "field_type": "path",
377
+ "fields": {
378
+ "name": "invitation_id",
379
+ "type": "integer",
380
+ "in": "path",
381
+ "description": "invitation_id parameter"
382
+ }
383
+ }
384
+ },
385
+ {
386
+ "namespace_description": "List repository invitations for the authenticated user",
387
+ "method": "get",
388
+ "endpoint": "/user/repository_invitations",
389
+ "field_0": {
390
+ "field_type": "header",
391
+ "fields": {
392
+ "name": "accept",
393
+ "type": "string",
394
+ "in": "header",
395
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
396
+ }
397
+ },
398
+ "field_1": {
399
+ "field_type": "query",
400
+ "fields": {
401
+ "name": "per_page",
402
+ "type": "integer",
403
+ "in": "query",
404
+ "description": "Results per page (max 100)Default: 30"
405
+ }
406
+ },
407
+ "field_2": {
408
+ "field_type": "query",
409
+ "fields": {
410
+ "name": "page",
411
+ "type": "integer",
412
+ "in": "query",
413
+ "description": "Page number of the results to fetch.Default: 1"
414
+ }
415
+ }
416
+ },
417
+ {
418
+ "namespace_description": "Accept a repository invitation",
419
+ "method": "patch",
420
+ "endpoint": "/user/repository_invitations/{invitation_id}",
421
+ "field_0": {
422
+ "field_type": "header",
423
+ "fields": {
424
+ "name": "accept",
425
+ "type": "string",
426
+ "in": "header",
427
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
428
+ }
429
+ },
430
+ "field_1": {
431
+ "field_type": "path",
432
+ "fields": {
433
+ "name": "invitation_id",
434
+ "type": "integer",
435
+ "in": "path",
436
+ "description": "invitation_id parameter"
437
+ }
438
+ }
439
+ },
440
+ {
441
+ "namespace_description": "Decline a repository invitation",
442
+ "method": "delete",
443
+ "endpoint": "/user/repository_invitations/{invitation_id}",
444
+ "field_0": {
445
+ "field_type": "header",
446
+ "fields": {
447
+ "name": "accept",
448
+ "type": "string",
449
+ "in": "header",
450
+ "description": "Setting toapplication/vnd.github.v3+json is recommended."
451
+ }
452
+ },
453
+ "field_1": {
454
+ "field_type": "path",
455
+ "fields": {
456
+ "name": "invitation_id",
457
+ "type": "integer",
458
+ "in": "path",
459
+ "description": "invitation_id parameter"
460
+ }
461
+ }
462
+ }
463
+ ]
464
+ }