labclient 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 (615) hide show
  1. checksums.yaml +7 -0
  2. data/lib/labclient/access_levels.rb +47 -0
  3. data/lib/labclient/appearance/appearance.rb +7 -0
  4. data/lib/labclient/appearance/show.rb +19 -0
  5. data/lib/labclient/appearance/update.rb +37 -0
  6. data/lib/labclient/application_settings/application_setting.rb +10 -0
  7. data/lib/labclient/application_settings/show.rb +52 -0
  8. data/lib/labclient/application_settings/update.rb +53 -0
  9. data/lib/labclient/application_statistics/application_statistics.rb +17 -0
  10. data/lib/labclient/applications/application.rb +19 -0
  11. data/lib/labclient/applications/create.rb +36 -0
  12. data/lib/labclient/applications/delete.rb +35 -0
  13. data/lib/labclient/applications/list.rb +18 -0
  14. data/lib/labclient/approvals/client.rb +16 -0
  15. data/lib/labclient/approvals/merge_approval.rb +20 -0
  16. data/lib/labclient/approvals/merge_request/approve.rb +35 -0
  17. data/lib/labclient/approvals/merge_request/create_rule.rb +38 -0
  18. data/lib/labclient/approvals/merge_request/delete_rule.rb +27 -0
  19. data/lib/labclient/approvals/merge_request/rules.rb +27 -0
  20. data/lib/labclient/approvals/merge_request/show.rb +27 -0
  21. data/lib/labclient/approvals/merge_request/unapprove.rb +35 -0
  22. data/lib/labclient/approvals/merge_request/update.rb +28 -0
  23. data/lib/labclient/approvals/merge_request/update_rule.rb +40 -0
  24. data/lib/labclient/approvals/project/create_rule.rb +38 -0
  25. data/lib/labclient/approvals/project/delete_rule.rb +26 -0
  26. data/lib/labclient/approvals/project/rules.rb +26 -0
  27. data/lib/labclient/approvals/project/show.rb +38 -0
  28. data/lib/labclient/approvals/project/update.rb +53 -0
  29. data/lib/labclient/approvals/project/update_rule.rb +39 -0
  30. data/lib/labclient/approvals/rule.rb +36 -0
  31. data/lib/labclient/audit_events/audit_event.rb +12 -0
  32. data/lib/labclient/audit_events/group_list.rb +63 -0
  33. data/lib/labclient/audit_events/group_show.rb +27 -0
  34. data/lib/labclient/audit_events/instance_list.rb +73 -0
  35. data/lib/labclient/audit_events/instance_show.rb +19 -0
  36. data/lib/labclient/avatar/avatar.rb +14 -0
  37. data/lib/labclient/avatar/show.rb +27 -0
  38. data/lib/labclient/awards/award.rb +17 -0
  39. data/lib/labclient/awards/issues/client.rb +17 -0
  40. data/lib/labclient/awards/issues/create.rb +23 -0
  41. data/lib/labclient/awards/issues/delete.rb +20 -0
  42. data/lib/labclient/awards/issues/list.rb +22 -0
  43. data/lib/labclient/awards/issues/show.rb +22 -0
  44. data/lib/labclient/awards/merge_requests/client.rb +17 -0
  45. data/lib/labclient/awards/merge_requests/create.rb +23 -0
  46. data/lib/labclient/awards/merge_requests/delete.rb +20 -0
  47. data/lib/labclient/awards/merge_requests/list.rb +22 -0
  48. data/lib/labclient/awards/merge_requests/show.rb +22 -0
  49. data/lib/labclient/awards/snippets/client.rb +17 -0
  50. data/lib/labclient/awards/snippets/create.rb +23 -0
  51. data/lib/labclient/awards/snippets/delete.rb +20 -0
  52. data/lib/labclient/awards/snippets/list.rb +22 -0
  53. data/lib/labclient/awards/snippets/show.rb +22 -0
  54. data/lib/labclient/branches/branch.rb +15 -0
  55. data/lib/labclient/branches/delete.rb +24 -0
  56. data/lib/labclient/branches/delete_merged.rb +25 -0
  57. data/lib/labclient/branches/list.rb +35 -0
  58. data/lib/labclient/branches/show.rb +24 -0
  59. data/lib/labclient/broadcast_messages/broadcast_message.rb +31 -0
  60. data/lib/labclient/broadcast_messages/create.rb +66 -0
  61. data/lib/labclient/broadcast_messages/delete.rb +36 -0
  62. data/lib/labclient/broadcast_messages/list.rb +18 -0
  63. data/lib/labclient/broadcast_messages/show.rb +18 -0
  64. data/lib/labclient/broadcast_messages/update.rb +75 -0
  65. data/lib/labclient/ci_lint/ci_lint.rb +43 -0
  66. data/lib/labclient/class_helpers.rb +17 -0
  67. data/lib/labclient/client.rb +157 -0
  68. data/lib/labclient/commits/cherry_pick.rb +40 -0
  69. data/lib/labclient/commits/comment_create.rb +67 -0
  70. data/lib/labclient/commits/comments.rb +39 -0
  71. data/lib/labclient/commits/commit.rb +101 -0
  72. data/lib/labclient/commits/commit_comment.rb +14 -0
  73. data/lib/labclient/commits/commit_diff.rb +7 -0
  74. data/lib/labclient/commits/create.rb +83 -0
  75. data/lib/labclient/commits/diff.rb +39 -0
  76. data/lib/labclient/commits/list.rb +54 -0
  77. data/lib/labclient/commits/merge_requests.rb +40 -0
  78. data/lib/labclient/commits/project_helpers.rb +49 -0
  79. data/lib/labclient/commits/refs.rb +44 -0
  80. data/lib/labclient/commits/revert.rb +40 -0
  81. data/lib/labclient/commits/show.rb +25 -0
  82. data/lib/labclient/commits/status/list.rb +57 -0
  83. data/lib/labclient/commits/status/status.rb +14 -0
  84. data/lib/labclient/commits/status/update.rb +53 -0
  85. data/lib/labclient/common.rb +110 -0
  86. data/lib/labclient/curl.rb +27 -0
  87. data/lib/labclient/deploy_keys/add.rb +46 -0
  88. data/lib/labclient/deploy_keys/delete.rb +46 -0
  89. data/lib/labclient/deploy_keys/deploy_key.rb +30 -0
  90. data/lib/labclient/deploy_keys/enable.rb +38 -0
  91. data/lib/labclient/deploy_keys/list.rb +38 -0
  92. data/lib/labclient/deploy_keys/project_helpers.rb +29 -0
  93. data/lib/labclient/deploy_keys/show.rb +30 -0
  94. data/lib/labclient/deploy_keys/update.rb +53 -0
  95. data/lib/labclient/discussions/commits/client.rb +17 -0
  96. data/lib/labclient/discussions/commits/create.rb +32 -0
  97. data/lib/labclient/discussions/commits/delete.rb +20 -0
  98. data/lib/labclient/discussions/commits/list.rb +22 -0
  99. data/lib/labclient/discussions/commits/show.rb +22 -0
  100. data/lib/labclient/discussions/commits/update.rb +32 -0
  101. data/lib/labclient/discussions/discussion.rb +17 -0
  102. data/lib/labclient/discussions/epics/client.rb +17 -0
  103. data/lib/labclient/discussions/epics/create.rb +32 -0
  104. data/lib/labclient/discussions/epics/delete.rb +20 -0
  105. data/lib/labclient/discussions/epics/list.rb +22 -0
  106. data/lib/labclient/discussions/epics/show.rb +22 -0
  107. data/lib/labclient/discussions/epics/update.rb +32 -0
  108. data/lib/labclient/discussions/issues/client.rb +17 -0
  109. data/lib/labclient/discussions/issues/create.rb +32 -0
  110. data/lib/labclient/discussions/issues/delete.rb +20 -0
  111. data/lib/labclient/discussions/issues/list.rb +22 -0
  112. data/lib/labclient/discussions/issues/show.rb +22 -0
  113. data/lib/labclient/discussions/issues/update.rb +32 -0
  114. data/lib/labclient/discussions/merge_requests/client.rb +17 -0
  115. data/lib/labclient/discussions/merge_requests/create.rb +32 -0
  116. data/lib/labclient/discussions/merge_requests/delete.rb +20 -0
  117. data/lib/labclient/discussions/merge_requests/list.rb +22 -0
  118. data/lib/labclient/discussions/merge_requests/show.rb +22 -0
  119. data/lib/labclient/discussions/merge_requests/update.rb +32 -0
  120. data/lib/labclient/discussions/snippets/client.rb +17 -0
  121. data/lib/labclient/discussions/snippets/create.rb +32 -0
  122. data/lib/labclient/discussions/snippets/delete.rb +20 -0
  123. data/lib/labclient/discussions/snippets/list.rb +22 -0
  124. data/lib/labclient/discussions/snippets/show.rb +22 -0
  125. data/lib/labclient/discussions/snippets/update.rb +32 -0
  126. data/lib/labclient/docs.rb +107 -0
  127. data/lib/labclient/epics/create.rb +42 -0
  128. data/lib/labclient/epics/delete.rb +35 -0
  129. data/lib/labclient/epics/epic.rb +72 -0
  130. data/lib/labclient/epics/issues/add.rb +35 -0
  131. data/lib/labclient/epics/issues/list.rb +38 -0
  132. data/lib/labclient/epics/issues/remove.rb +37 -0
  133. data/lib/labclient/epics/issues/update.rb +44 -0
  134. data/lib/labclient/epics/list.rb +54 -0
  135. data/lib/labclient/epics/show.rb +29 -0
  136. data/lib/labclient/epics/todo.rb +27 -0
  137. data/lib/labclient/epics/update.rb +52 -0
  138. data/lib/labclient/error.rb +11 -0
  139. data/lib/labclient/events/event.rb +13 -0
  140. data/lib/labclient/events/list.rb +67 -0
  141. data/lib/labclient/events/project.rb +67 -0
  142. data/lib/labclient/events/user.rb +66 -0
  143. data/lib/labclient/files/create.rb +49 -0
  144. data/lib/labclient/files/delete.rb +43 -0
  145. data/lib/labclient/files/show.rb +48 -0
  146. data/lib/labclient/files/update.rb +49 -0
  147. data/lib/labclient/groups/access_requests/access_request.rb +34 -0
  148. data/lib/labclient/groups/access_requests/approve.rb +38 -0
  149. data/lib/labclient/groups/access_requests/client.rb +17 -0
  150. data/lib/labclient/groups/access_requests/create.rb +25 -0
  151. data/lib/labclient/groups/access_requests/deny.rb +25 -0
  152. data/lib/labclient/groups/access_requests/list.rb +24 -0
  153. data/lib/labclient/groups/badges/client.rb +17 -0
  154. data/lib/labclient/groups/badges/create.rb +49 -0
  155. data/lib/labclient/groups/badges/delete.rb +33 -0
  156. data/lib/labclient/groups/badges/group_badge.rb +47 -0
  157. data/lib/labclient/groups/badges/list.rb +28 -0
  158. data/lib/labclient/groups/badges/preview.rb +42 -0
  159. data/lib/labclient/groups/badges/show.rb +27 -0
  160. data/lib/labclient/groups/badges/update.rb +45 -0
  161. data/lib/labclient/groups/create.rb +31 -0
  162. data/lib/labclient/groups/delete.rb +25 -0
  163. data/lib/labclient/groups/group.rb +317 -0
  164. data/lib/labclient/groups/hooks/client.rb +17 -0
  165. data/lib/labclient/groups/hooks/create.rb +46 -0
  166. data/lib/labclient/groups/hooks/delete.rb +33 -0
  167. data/lib/labclient/groups/hooks/group_hook.rb +37 -0
  168. data/lib/labclient/groups/hooks/list.rb +31 -0
  169. data/lib/labclient/groups/hooks/show.rb +27 -0
  170. data/lib/labclient/groups/hooks/update.rb +55 -0
  171. data/lib/labclient/groups/labels/client.rb +17 -0
  172. data/lib/labclient/groups/labels/create.rb +39 -0
  173. data/lib/labclient/groups/labels/delete.rb +33 -0
  174. data/lib/labclient/groups/labels/group_label.rb +49 -0
  175. data/lib/labclient/groups/labels/list.rb +35 -0
  176. data/lib/labclient/groups/labels/show.rb +34 -0
  177. data/lib/labclient/groups/labels/subscribe.rb +35 -0
  178. data/lib/labclient/groups/labels/unsubscribe.rb +35 -0
  179. data/lib/labclient/groups/labels/update.rb +46 -0
  180. data/lib/labclient/groups/ldap/client.rb +18 -0
  181. data/lib/labclient/groups/ldap/create.rb +35 -0
  182. data/lib/labclient/groups/ldap/delete.rb +37 -0
  183. data/lib/labclient/groups/ldap/link.rb +17 -0
  184. data/lib/labclient/groups/ldap/list.rb +27 -0
  185. data/lib/labclient/groups/ldap/sync.rb +27 -0
  186. data/lib/labclient/groups/list.rb +76 -0
  187. data/lib/labclient/groups/milestones/burndown.rb +36 -0
  188. data/lib/labclient/groups/milestones/client.rb +17 -0
  189. data/lib/labclient/groups/milestones/create.rb +37 -0
  190. data/lib/labclient/groups/milestones/delete.rb +26 -0
  191. data/lib/labclient/groups/milestones/group_milestone.rb +52 -0
  192. data/lib/labclient/groups/milestones/issues.rb +29 -0
  193. data/lib/labclient/groups/milestones/list.rb +41 -0
  194. data/lib/labclient/groups/milestones/merge_requests.rb +29 -0
  195. data/lib/labclient/groups/milestones/show.rb +20 -0
  196. data/lib/labclient/groups/milestones/update.rb +45 -0
  197. data/lib/labclient/groups/projects.rb +54 -0
  198. data/lib/labclient/groups/restore.rb +26 -0
  199. data/lib/labclient/groups/runners.rb +33 -0
  200. data/lib/labclient/groups/search.rb +89 -0
  201. data/lib/labclient/groups/show.rb +37 -0
  202. data/lib/labclient/groups/subgroups.rb +47 -0
  203. data/lib/labclient/groups/transfer.rb +27 -0
  204. data/lib/labclient/groups/update.rb +34 -0
  205. data/lib/labclient/http.rb +87 -0
  206. data/lib/labclient/impersonation_tokens/create.rb +37 -0
  207. data/lib/labclient/impersonation_tokens/impersonation_token.rb +18 -0
  208. data/lib/labclient/impersonation_tokens/list.rb +29 -0
  209. data/lib/labclient/impersonation_tokens/revoke.rb +32 -0
  210. data/lib/labclient/impersonation_tokens/show.rb +18 -0
  211. data/lib/labclient/issues/agent_detail.rb +31 -0
  212. data/lib/labclient/issues/closed_by.rb +27 -0
  213. data/lib/labclient/issues/create.rb +29 -0
  214. data/lib/labclient/issues/delete.rb +26 -0
  215. data/lib/labclient/issues/group_issues.rb +29 -0
  216. data/lib/labclient/issues/issue.rb +114 -0
  217. data/lib/labclient/issues/list.rb +58 -0
  218. data/lib/labclient/issues/move.rb +28 -0
  219. data/lib/labclient/issues/notes.rb +18 -0
  220. data/lib/labclient/issues/participants.rb +35 -0
  221. data/lib/labclient/issues/project_issues.rb +31 -0
  222. data/lib/labclient/issues/related_merge_requests.rb +30 -0
  223. data/lib/labclient/issues/show.rb +21 -0
  224. data/lib/labclient/issues/subscribe.rb +31 -0
  225. data/lib/labclient/issues/time_stats.rb +157 -0
  226. data/lib/labclient/issues/todo.rb +31 -0
  227. data/lib/labclient/issues/unsubscribe.rb +31 -0
  228. data/lib/labclient/issues/update.rb +44 -0
  229. data/lib/labclient/jobs/artifacts.rb +49 -0
  230. data/lib/labclient/jobs/artifacts_latest.rb +39 -0
  231. data/lib/labclient/jobs/artifacts_path.rb +50 -0
  232. data/lib/labclient/jobs/cancel.rb +33 -0
  233. data/lib/labclient/jobs/delete.rb +33 -0
  234. data/lib/labclient/jobs/erase.rb +33 -0
  235. data/lib/labclient/jobs/job.rb +79 -0
  236. data/lib/labclient/jobs/keep.rb +33 -0
  237. data/lib/labclient/jobs/pipeline_list.rb +33 -0
  238. data/lib/labclient/jobs/play.rb +33 -0
  239. data/lib/labclient/jobs/project_list.rb +30 -0
  240. data/lib/labclient/jobs/retry.rb +33 -0
  241. data/lib/labclient/jobs/show.rb +25 -0
  242. data/lib/labclient/jobs/trace.rb +33 -0
  243. data/lib/labclient/keys/fingerprint.rb +27 -0
  244. data/lib/labclient/keys/key.rb +26 -0
  245. data/lib/labclient/keys/project.rb +68 -0
  246. data/lib/labclient/keys/show.rb +15 -0
  247. data/lib/labclient/keys/user.rb +66 -0
  248. data/lib/labclient/klass.rb +107 -0
  249. data/lib/labclient/license/add.rb +21 -0
  250. data/lib/labclient/license/delete.rb +17 -0
  251. data/lib/labclient/license/license.rb +12 -0
  252. data/lib/labclient/license/list.rb +71 -0
  253. data/lib/labclient/markdown/markdown.rb +28 -0
  254. data/lib/labclient/members/groups/add.rb +37 -0
  255. data/lib/labclient/members/groups/delete.rb +23 -0
  256. data/lib/labclient/members/groups/list.rb +67 -0
  257. data/lib/labclient/members/groups/show.rb +49 -0
  258. data/lib/labclient/members/groups/update.rb +36 -0
  259. data/lib/labclient/members/member.rb +56 -0
  260. data/lib/labclient/members/members.rb +15 -0
  261. data/lib/labclient/members/projects/add.rb +37 -0
  262. data/lib/labclient/members/projects/delete.rb +23 -0
  263. data/lib/labclient/members/projects/list.rb +66 -0
  264. data/lib/labclient/members/projects/show.rb +49 -0
  265. data/lib/labclient/members/projects/update.rb +36 -0
  266. data/lib/labclient/merge_requests/accept.rb +39 -0
  267. data/lib/labclient/merge_requests/cancel_auto_merge.rb +38 -0
  268. data/lib/labclient/merge_requests/change.rb +25 -0
  269. data/lib/labclient/merge_requests/changes.rb +34 -0
  270. data/lib/labclient/merge_requests/closes_issues.rb +35 -0
  271. data/lib/labclient/merge_requests/commits.rb +22 -0
  272. data/lib/labclient/merge_requests/create.rb +51 -0
  273. data/lib/labclient/merge_requests/delete.rb +31 -0
  274. data/lib/labclient/merge_requests/diff.rb +28 -0
  275. data/lib/labclient/merge_requests/diff_versions.rb +70 -0
  276. data/lib/labclient/merge_requests/list.rb +105 -0
  277. data/lib/labclient/merge_requests/merge_ref.rb +48 -0
  278. data/lib/labclient/merge_requests/merge_request.rb +211 -0
  279. data/lib/labclient/merge_requests/notes.rb +18 -0
  280. data/lib/labclient/merge_requests/participants.rb +36 -0
  281. data/lib/labclient/merge_requests/pipelines.rb +63 -0
  282. data/lib/labclient/merge_requests/rebase.rb +45 -0
  283. data/lib/labclient/merge_requests/show.rb +32 -0
  284. data/lib/labclient/merge_requests/subscribe.rb +31 -0
  285. data/lib/labclient/merge_requests/time_stats.rb +157 -0
  286. data/lib/labclient/merge_requests/todo.rb +31 -0
  287. data/lib/labclient/merge_requests/unsubscribe.rb +31 -0
  288. data/lib/labclient/merge_requests/update.rb +35 -0
  289. data/lib/labclient/namespaces/list.rb +30 -0
  290. data/lib/labclient/namespaces/namespace.rb +10 -0
  291. data/lib/labclient/namespaces/show.rb +18 -0
  292. data/lib/labclient/notes/epics/client.rb +17 -0
  293. data/lib/labclient/notes/epics/create.rb +32 -0
  294. data/lib/labclient/notes/epics/delete.rb +20 -0
  295. data/lib/labclient/notes/epics/list.rb +22 -0
  296. data/lib/labclient/notes/epics/show.rb +22 -0
  297. data/lib/labclient/notes/epics/update.rb +32 -0
  298. data/lib/labclient/notes/issues/client.rb +17 -0
  299. data/lib/labclient/notes/issues/create.rb +32 -0
  300. data/lib/labclient/notes/issues/delete.rb +20 -0
  301. data/lib/labclient/notes/issues/list.rb +22 -0
  302. data/lib/labclient/notes/issues/show.rb +22 -0
  303. data/lib/labclient/notes/issues/update.rb +32 -0
  304. data/lib/labclient/notes/merge_requests/client.rb +17 -0
  305. data/lib/labclient/notes/merge_requests/create.rb +32 -0
  306. data/lib/labclient/notes/merge_requests/delete.rb +20 -0
  307. data/lib/labclient/notes/merge_requests/list.rb +22 -0
  308. data/lib/labclient/notes/merge_requests/show.rb +22 -0
  309. data/lib/labclient/notes/merge_requests/update.rb +32 -0
  310. data/lib/labclient/notes/note.rb +17 -0
  311. data/lib/labclient/notes/snippets/client.rb +17 -0
  312. data/lib/labclient/notes/snippets/create.rb +32 -0
  313. data/lib/labclient/notes/snippets/delete.rb +20 -0
  314. data/lib/labclient/notes/snippets/list.rb +22 -0
  315. data/lib/labclient/notes/snippets/show.rb +22 -0
  316. data/lib/labclient/notes/snippets/update.rb +32 -0
  317. data/lib/labclient/notifications/list.rb +54 -0
  318. data/lib/labclient/notifications/update.rb +64 -0
  319. data/lib/labclient/open_struct.rb +14 -0
  320. data/lib/labclient/overview.rb +243 -0
  321. data/lib/labclient/paginated_response.rb +115 -0
  322. data/lib/labclient/pipelines/cancel.rb +34 -0
  323. data/lib/labclient/pipelines/create.rb +29 -0
  324. data/lib/labclient/pipelines/delete.rb +33 -0
  325. data/lib/labclient/pipelines/list.rb +50 -0
  326. data/lib/labclient/pipelines/pipeline.rb +48 -0
  327. data/lib/labclient/pipelines/retry.rb +34 -0
  328. data/lib/labclient/pipelines/show.rb +26 -0
  329. data/lib/labclient/pipelines/variables.rb +47 -0
  330. data/lib/labclient/projects/access_requests/access_request.rb +34 -0
  331. data/lib/labclient/projects/access_requests/approve.rb +38 -0
  332. data/lib/labclient/projects/access_requests/client.rb +17 -0
  333. data/lib/labclient/projects/access_requests/create.rb +25 -0
  334. data/lib/labclient/projects/access_requests/deny.rb +25 -0
  335. data/lib/labclient/projects/access_requests/list.rb +24 -0
  336. data/lib/labclient/projects/archive.rb +25 -0
  337. data/lib/labclient/projects/badges/client.rb +17 -0
  338. data/lib/labclient/projects/badges/create.rb +49 -0
  339. data/lib/labclient/projects/badges/delete.rb +33 -0
  340. data/lib/labclient/projects/badges/list.rb +28 -0
  341. data/lib/labclient/projects/badges/preview.rb +42 -0
  342. data/lib/labclient/projects/badges/project_badge.rb +47 -0
  343. data/lib/labclient/projects/badges/show.rb +27 -0
  344. data/lib/labclient/projects/badges/update.rb +45 -0
  345. data/lib/labclient/projects/clusters/add.rb +48 -0
  346. data/lib/labclient/projects/clusters/client.rb +17 -0
  347. data/lib/labclient/projects/clusters/delete.rb +37 -0
  348. data/lib/labclient/projects/clusters/list.rb +28 -0
  349. data/lib/labclient/projects/clusters/project_cluster.rb +38 -0
  350. data/lib/labclient/projects/clusters/show.rb +29 -0
  351. data/lib/labclient/projects/clusters/update.rb +37 -0
  352. data/lib/labclient/projects/create.rb +49 -0
  353. data/lib/labclient/projects/delete.rb +25 -0
  354. data/lib/labclient/projects/deployments/client.rb +17 -0
  355. data/lib/labclient/projects/deployments/create.rb +56 -0
  356. data/lib/labclient/projects/deployments/list.rb +67 -0
  357. data/lib/labclient/projects/deployments/merge_requests.rb +33 -0
  358. data/lib/labclient/projects/deployments/project_deployment.rb +39 -0
  359. data/lib/labclient/projects/deployments/show.rb +27 -0
  360. data/lib/labclient/projects/deployments/update.rb +52 -0
  361. data/lib/labclient/projects/environments/client.rb +17 -0
  362. data/lib/labclient/projects/environments/create.rb +37 -0
  363. data/lib/labclient/projects/environments/delete.rb +33 -0
  364. data/lib/labclient/projects/environments/list.rb +34 -0
  365. data/lib/labclient/projects/environments/project_environment.rb +44 -0
  366. data/lib/labclient/projects/environments/show.rb +27 -0
  367. data/lib/labclient/projects/environments/stop.rb +27 -0
  368. data/lib/labclient/projects/environments/update.rb +44 -0
  369. data/lib/labclient/projects/events.rb +19 -0
  370. data/lib/labclient/projects/forks/existing.rb +28 -0
  371. data/lib/labclient/projects/forks/fork.rb +44 -0
  372. data/lib/labclient/projects/forks/list.rb +39 -0
  373. data/lib/labclient/projects/forks/remove.rb +26 -0
  374. data/lib/labclient/projects/github_import.rb +23 -0
  375. data/lib/labclient/projects/hooks/client.rb +17 -0
  376. data/lib/labclient/projects/hooks/create.rb +46 -0
  377. data/lib/labclient/projects/hooks/delete.rb +33 -0
  378. data/lib/labclient/projects/hooks/list.rb +31 -0
  379. data/lib/labclient/projects/hooks/project_hook.rb +32 -0
  380. data/lib/labclient/projects/hooks/show.rb +27 -0
  381. data/lib/labclient/projects/hooks/update.rb +55 -0
  382. data/lib/labclient/projects/housekeeping.rb +29 -0
  383. data/lib/labclient/projects/labels/client.rb +17 -0
  384. data/lib/labclient/projects/labels/create.rb +39 -0
  385. data/lib/labclient/projects/labels/delete.rb +33 -0
  386. data/lib/labclient/projects/labels/list.rb +35 -0
  387. data/lib/labclient/projects/labels/project_label.rb +56 -0
  388. data/lib/labclient/projects/labels/promote.rb +35 -0
  389. data/lib/labclient/projects/labels/show.rb +34 -0
  390. data/lib/labclient/projects/labels/subscribe.rb +35 -0
  391. data/lib/labclient/projects/labels/unsubscribe.rb +35 -0
  392. data/lib/labclient/projects/labels/update.rb +46 -0
  393. data/lib/labclient/projects/languages.rb +28 -0
  394. data/lib/labclient/projects/list.rb +90 -0
  395. data/lib/labclient/projects/methods.rb +681 -0
  396. data/lib/labclient/projects/milestones/burndown.rb +36 -0
  397. data/lib/labclient/projects/milestones/client.rb +17 -0
  398. data/lib/labclient/projects/milestones/create.rb +37 -0
  399. data/lib/labclient/projects/milestones/delete.rb +26 -0
  400. data/lib/labclient/projects/milestones/issues.rb +29 -0
  401. data/lib/labclient/projects/milestones/list.rb +41 -0
  402. data/lib/labclient/projects/milestones/merge_requests.rb +29 -0
  403. data/lib/labclient/projects/milestones/project_milestone.rb +58 -0
  404. data/lib/labclient/projects/milestones/promote.rb +27 -0
  405. data/lib/labclient/projects/milestones/show.rb +20 -0
  406. data/lib/labclient/projects/milestones/update.rb +45 -0
  407. data/lib/labclient/projects/mirror_start.rb +26 -0
  408. data/lib/labclient/projects/mirrors/client.rb +17 -0
  409. data/lib/labclient/projects/mirrors/create.rb +41 -0
  410. data/lib/labclient/projects/mirrors/list.rb +32 -0
  411. data/lib/labclient/projects/mirrors/project_mirror.rb +30 -0
  412. data/lib/labclient/projects/mirrors/update.rb +45 -0
  413. data/lib/labclient/projects/pipeline_schedules/client.rb +17 -0
  414. data/lib/labclient/projects/pipeline_schedules/create.rb +35 -0
  415. data/lib/labclient/projects/pipeline_schedules/delete.rb +26 -0
  416. data/lib/labclient/projects/pipeline_schedules/list.rb +28 -0
  417. data/lib/labclient/projects/pipeline_schedules/pipeline_schedule.rb +69 -0
  418. data/lib/labclient/projects/pipeline_schedules/play.rb +29 -0
  419. data/lib/labclient/projects/pipeline_schedules/show.rb +20 -0
  420. data/lib/labclient/projects/pipeline_schedules/take_ownership.rb +29 -0
  421. data/lib/labclient/projects/pipeline_schedules/update.rb +43 -0
  422. data/lib/labclient/projects/pipeline_schedules/variables/client.rb +17 -0
  423. data/lib/labclient/projects/pipeline_schedules/variables/create.rb +41 -0
  424. data/lib/labclient/projects/pipeline_schedules/variables/delete.rb +38 -0
  425. data/lib/labclient/projects/pipeline_schedules/variables/update.rb +41 -0
  426. data/lib/labclient/projects/project.rb +17 -0
  427. data/lib/labclient/projects/push_rules/client.rb +17 -0
  428. data/lib/labclient/projects/push_rules/create.rb +44 -0
  429. data/lib/labclient/projects/push_rules/delete.rb +32 -0
  430. data/lib/labclient/projects/push_rules/push_rule.rb +31 -0
  431. data/lib/labclient/projects/push_rules/show.rb +31 -0
  432. data/lib/labclient/projects/push_rules/update.rb +51 -0
  433. data/lib/labclient/projects/reference.rb +254 -0
  434. data/lib/labclient/projects/release_links/client.rb +17 -0
  435. data/lib/labclient/projects/release_links/create.rb +40 -0
  436. data/lib/labclient/projects/release_links/delete.rb +34 -0
  437. data/lib/labclient/projects/release_links/list.rb +37 -0
  438. data/lib/labclient/projects/release_links/project_release_link.rb +42 -0
  439. data/lib/labclient/projects/release_links/show.rb +28 -0
  440. data/lib/labclient/projects/release_links/update.rb +45 -0
  441. data/lib/labclient/projects/releases/client.rb +17 -0
  442. data/lib/labclient/projects/releases/create.rb +47 -0
  443. data/lib/labclient/projects/releases/delete.rb +33 -0
  444. data/lib/labclient/projects/releases/evidence.rb +34 -0
  445. data/lib/labclient/projects/releases/list.rb +28 -0
  446. data/lib/labclient/projects/releases/project_release.rb +58 -0
  447. data/lib/labclient/projects/releases/show.rb +27 -0
  448. data/lib/labclient/projects/releases/update.rb +47 -0
  449. data/lib/labclient/projects/resources.rb +24 -0
  450. data/lib/labclient/projects/restore.rb +26 -0
  451. data/lib/labclient/projects/runners/client.rb +17 -0
  452. data/lib/labclient/projects/runners/disable.rb +25 -0
  453. data/lib/labclient/projects/runners/enable.rb +27 -0
  454. data/lib/labclient/projects/runners/list.rb +34 -0
  455. data/lib/labclient/projects/search.rb +91 -0
  456. data/lib/labclient/projects/services/client.rb +29 -0
  457. data/lib/labclient/projects/services/delete.rb +33 -0
  458. data/lib/labclient/projects/services/list.rb +27 -0
  459. data/lib/labclient/projects/services/project_service.rb +37 -0
  460. data/lib/labclient/projects/services/show.rb +27 -0
  461. data/lib/labclient/projects/services/update.rb +41 -0
  462. data/lib/labclient/projects/share.rb +56 -0
  463. data/lib/labclient/projects/show.rb +47 -0
  464. data/lib/labclient/projects/snapshot.rb +25 -0
  465. data/lib/labclient/projects/snippets/agent_detail.rb +30 -0
  466. data/lib/labclient/projects/snippets/client.rb +17 -0
  467. data/lib/labclient/projects/snippets/content.rb +32 -0
  468. data/lib/labclient/projects/snippets/create.rb +40 -0
  469. data/lib/labclient/projects/snippets/delete.rb +26 -0
  470. data/lib/labclient/projects/snippets/list.rb +20 -0
  471. data/lib/labclient/projects/snippets/project_snippet.rb +50 -0
  472. data/lib/labclient/projects/snippets/show.rb +20 -0
  473. data/lib/labclient/projects/snippets/update.rb +42 -0
  474. data/lib/labclient/projects/stars/star.rb +49 -0
  475. data/lib/labclient/projects/stars/starred_projects.rb +51 -0
  476. data/lib/labclient/projects/stars/starrers.rb +46 -0
  477. data/lib/labclient/projects/submodule.rb +34 -0
  478. data/lib/labclient/projects/transfer.rb +27 -0
  479. data/lib/labclient/projects/triggers/client.rb +17 -0
  480. data/lib/labclient/projects/triggers/create.rb +37 -0
  481. data/lib/labclient/projects/triggers/delete.rb +33 -0
  482. data/lib/labclient/projects/triggers/list.rb +28 -0
  483. data/lib/labclient/projects/triggers/project_trigger.rb +33 -0
  484. data/lib/labclient/projects/triggers/show.rb +27 -0
  485. data/lib/labclient/projects/unarchive.rb +25 -0
  486. data/lib/labclient/projects/unshare.rb +27 -0
  487. data/lib/labclient/projects/update.rb +37 -0
  488. data/lib/labclient/projects/upload.rb +28 -0
  489. data/lib/labclient/projects/user.rb +52 -0
  490. data/lib/labclient/projects/users.rb +39 -0
  491. data/lib/labclient/projects/variables/client.rb +17 -0
  492. data/lib/labclient/projects/variables/create.rb +49 -0
  493. data/lib/labclient/projects/variables/delete.rb +33 -0
  494. data/lib/labclient/projects/variables/list.rb +28 -0
  495. data/lib/labclient/projects/variables/project_variable.rb +42 -0
  496. data/lib/labclient/projects/variables/show.rb +27 -0
  497. data/lib/labclient/projects/variables/update.rb +47 -0
  498. data/lib/labclient/protected_branches/code_owner_approval.rb +26 -0
  499. data/lib/labclient/protected_branches/list.rb +35 -0
  500. data/lib/labclient/protected_branches/protect.rb +49 -0
  501. data/lib/labclient/protected_branches/show.rb +24 -0
  502. data/lib/labclient/protected_branches/unprotect.rb +24 -0
  503. data/lib/labclient/protected_tags/list.rb +29 -0
  504. data/lib/labclient/protected_tags/protect.rb +44 -0
  505. data/lib/labclient/protected_tags/show.rb +24 -0
  506. data/lib/labclient/protected_tags/unprotect.rb +24 -0
  507. data/lib/labclient/registry/delete.rb +25 -0
  508. data/lib/labclient/registry/group.rb +33 -0
  509. data/lib/labclient/registry/list.rb +31 -0
  510. data/lib/labclient/registry/repository.rb +26 -0
  511. data/lib/labclient/registry/tags/bulk.rb +30 -0
  512. data/lib/labclient/registry/tags/delete.rb +27 -0
  513. data/lib/labclient/registry/tags/details.rb +20 -0
  514. data/lib/labclient/registry/tags/list.rb +27 -0
  515. data/lib/labclient/registry/tags/tag.rb +23 -0
  516. data/lib/labclient/repository/alias.rb +14 -0
  517. data/lib/labclient/repository/archive.rb +34 -0
  518. data/lib/labclient/repository/blob.rb +32 -0
  519. data/lib/labclient/repository/compare.rb +31 -0
  520. data/lib/labclient/repository/contributors.rb +45 -0
  521. data/lib/labclient/repository/merge_base.rb +38 -0
  522. data/lib/labclient/repository/raw_blob.rb +27 -0
  523. data/lib/labclient/repository/tree.rb +35 -0
  524. data/lib/labclient/resource_labels/epics/client.rb +9 -0
  525. data/lib/labclient/resource_labels/epics/list.rb +30 -0
  526. data/lib/labclient/resource_labels/epics/show.rb +31 -0
  527. data/lib/labclient/resource_labels/issues/client.rb +9 -0
  528. data/lib/labclient/resource_labels/issues/list.rb +30 -0
  529. data/lib/labclient/resource_labels/issues/show.rb +31 -0
  530. data/lib/labclient/resource_labels/merge_requests/client.rb +9 -0
  531. data/lib/labclient/resource_labels/merge_requests/list.rb +30 -0
  532. data/lib/labclient/resource_labels/merge_requests/show.rb +31 -0
  533. data/lib/labclient/resource_labels/resource_label.rb +22 -0
  534. data/lib/labclient/runners/all.rb +24 -0
  535. data/lib/labclient/runners/delete.rb +14 -0
  536. data/lib/labclient/runners/jobs.rb +25 -0
  537. data/lib/labclient/runners/list.rb +24 -0
  538. data/lib/labclient/runners/register.rb +30 -0
  539. data/lib/labclient/runners/remove.rb +24 -0
  540. data/lib/labclient/runners/runner.rb +41 -0
  541. data/lib/labclient/runners/show.rb +16 -0
  542. data/lib/labclient/runners/update.rb +45 -0
  543. data/lib/labclient/runners/verify.rb +22 -0
  544. data/lib/labclient/search/search.rb +18 -0
  545. data/lib/labclient/snippets/agent_detail.rb +31 -0
  546. data/lib/labclient/snippets/content.rb +33 -0
  547. data/lib/labclient/snippets/create.rb +38 -0
  548. data/lib/labclient/snippets/delete.rb +35 -0
  549. data/lib/labclient/snippets/list.rb +18 -0
  550. data/lib/labclient/snippets/public.rb +26 -0
  551. data/lib/labclient/snippets/show.rb +18 -0
  552. data/lib/labclient/snippets/snippet.rb +39 -0
  553. data/lib/labclient/snippets/update.rb +46 -0
  554. data/lib/labclient/system_hooks/add.rb +33 -0
  555. data/lib/labclient/system_hooks/delete.rb +23 -0
  556. data/lib/labclient/system_hooks/list.rb +17 -0
  557. data/lib/labclient/system_hooks/system_hook.rb +19 -0
  558. data/lib/labclient/system_hooks/test.rb +25 -0
  559. data/lib/labclient/tags/create.rb +34 -0
  560. data/lib/labclient/tags/delete.rb +25 -0
  561. data/lib/labclient/tags/list.rb +34 -0
  562. data/lib/labclient/tags/release.rb +27 -0
  563. data/lib/labclient/tags/show.rb +26 -0
  564. data/lib/labclient/tags/tag.rb +16 -0
  565. data/lib/labclient/tags/update.rb +27 -0
  566. data/lib/labclient/todos/list.rb +36 -0
  567. data/lib/labclient/todos/mark_all_done.rb +18 -0
  568. data/lib/labclient/todos/mark_done.rb +29 -0
  569. data/lib/labclient/todos/todo.rb +22 -0
  570. data/lib/labclient/users/activate.rb +25 -0
  571. data/lib/labclient/users/activity.rb +23 -0
  572. data/lib/labclient/users/block.rb +25 -0
  573. data/lib/labclient/users/counts.rb +16 -0
  574. data/lib/labclient/users/create.rb +25 -0
  575. data/lib/labclient/users/current.rb +28 -0
  576. data/lib/labclient/users/deactivate.rb +25 -0
  577. data/lib/labclient/users/delete.rb +28 -0
  578. data/lib/labclient/users/delete_identity.rb +25 -0
  579. data/lib/labclient/users/email/client.rb +18 -0
  580. data/lib/labclient/users/email/create.rb +37 -0
  581. data/lib/labclient/users/email/delete.rb +33 -0
  582. data/lib/labclient/users/email/email.rb +11 -0
  583. data/lib/labclient/users/email/list.rb +33 -0
  584. data/lib/labclient/users/email/show.rb +17 -0
  585. data/lib/labclient/users/gpg/client.rb +18 -0
  586. data/lib/labclient/users/gpg/create.rb +37 -0
  587. data/lib/labclient/users/gpg/delete.rb +33 -0
  588. data/lib/labclient/users/gpg/gpg_key.rb +13 -0
  589. data/lib/labclient/users/gpg/list.rb +33 -0
  590. data/lib/labclient/users/gpg/show.rb +17 -0
  591. data/lib/labclient/users/keys/client.rb +18 -0
  592. data/lib/labclient/users/keys/create.rb +42 -0
  593. data/lib/labclient/users/keys/delete.rb +33 -0
  594. data/lib/labclient/users/keys/list.rb +33 -0
  595. data/lib/labclient/users/keys/show.rb +17 -0
  596. data/lib/labclient/users/list.rb +64 -0
  597. data/lib/labclient/users/memberships.rb +34 -0
  598. data/lib/labclient/users/search.rb +22 -0
  599. data/lib/labclient/users/show.rb +22 -0
  600. data/lib/labclient/users/status.rb +26 -0
  601. data/lib/labclient/users/status_set.rb +23 -0
  602. data/lib/labclient/users/unblock.rb +25 -0
  603. data/lib/labclient/users/update.rb +28 -0
  604. data/lib/labclient/users/user.rb +138 -0
  605. data/lib/labclient/version/show.rb +18 -0
  606. data/lib/labclient/version.rb +3 -0
  607. data/lib/labclient/wikis/create.rb +33 -0
  608. data/lib/labclient/wikis/delete.rb +32 -0
  609. data/lib/labclient/wikis/list.rb +26 -0
  610. data/lib/labclient/wikis/show.rb +25 -0
  611. data/lib/labclient/wikis/update.rb +42 -0
  612. data/lib/labclient/wikis/upload.rb +27 -0
  613. data/lib/labclient/wikis/wiki.rb +40 -0
  614. data/lib/labclient.rb +843 -0
  615. metadata +880 -0
@@ -0,0 +1,35 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Repositories < Common
5
+ @group_name = 'Repository'
6
+ doc 'Tree' do
7
+ desc 'GetGet a list of repository files and directories in a project [Project ID, Hash]'
8
+ example 'client.repository.tree(264)'
9
+ result '[{:id=>"a3c86dff3a547733fd3d91432785386211481842", :name=>"README", :type=>"blob", :path=>"README", :mode=>"100644"}]'
10
+
11
+ markdown <<~DOC
12
+ **Parameters**:
13
+
14
+ * path (optional) - The path inside repository. Used to get content of subdirectories
15
+ * ref (optional) - The name of a repository branch or tag or if not given the default branch
16
+ * recursive (optional) - Boolean value used to get a recursive tree (false by default)
17
+
18
+ DOC
19
+ end
20
+
21
+ doc 'Tree' do
22
+ desc 'via Project'
23
+ example <<~DOC
24
+ project = client.projects.show(264)
25
+ project.tree(ref: :master)
26
+ DOC
27
+ end
28
+
29
+ def tree(project_id, query = {})
30
+ project_id = format_id(project_id)
31
+
32
+ client.request(:get, "projects/#{project_id}/repository/tree", nil, query)
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,9 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabels < Common
5
+ def epics
6
+ ResourceLabelEpics.new(client)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,30 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabelEpics < Common
5
+ @group_name = 'Resource Labels'
6
+ doc 'Epics' do
7
+ title 'List'
8
+ desc 'Gets a list of all label events for a single epic. [Group ID, Epic ID]'
9
+ example 'client.resource_labels.epics.list(59,6)'
10
+ result <<~DOC
11
+ => [#<ResourceLabel Epic id: 4>, #<ResourceLabel Epic id: 5>]
12
+ DOC
13
+ end
14
+
15
+ doc 'Epics' do
16
+ desc 'Via Epic'
17
+ example <<~DOC
18
+ epic = client.epics.show(59,3)
19
+ epic.resource_labels
20
+ DOC
21
+ end
22
+
23
+ def list(group_id, epic_id)
24
+ group_id = format_id(group_id)
25
+ epic_id = format_id(epic_id)
26
+
27
+ client.request(:get, "groups/#{group_id}/epics/#{epic_id}/resource_label_events", ResourceLabel)
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,31 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabelEpics < Common
5
+ @group_name = 'Resource Labels'
6
+ doc 'Epics' do
7
+ title 'Show'
8
+ desc 'Returns a single label event for a specific group epic [Group ID, Epic ID, Resource Event ID]'
9
+ example 'client.resource_labels.epics.show(59,6,5)'
10
+ result <<~DOC
11
+ => #<ResourceLabel Epic id: 5>
12
+ DOC
13
+ end
14
+
15
+ doc 'Epics' do
16
+ desc 'Via Epic'
17
+ example <<~DOC
18
+ epic = client.epics.show(59,3)
19
+ epic.resource_label(5)
20
+ DOC
21
+ end
22
+
23
+ def show(group_id, epic_id, resource_event_id)
24
+ group_id = format_id(group_id)
25
+ epic_id = format_id(epic_id)
26
+ resource_event_id = format_id(resource_event_id)
27
+
28
+ client.request(:get, "groups/#{group_id}/epics/#{epic_id}/resource_label_events/#{resource_event_id}", ResourceLabel)
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,9 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabels < Common
5
+ def issues
6
+ ResourceLabelIssues.new(client)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,30 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabelIssues < Common
5
+ @group_name = 'Resource Labels'
6
+ doc 'Issues' do
7
+ title 'List'
8
+ desc 'Gets a list of all label events for a single issue. [Project ID, Issue IID]'
9
+ example 'client.resource_labels.issues.list(16,2)'
10
+ result <<~DOC
11
+ => [#<ResourceLabel Issue id: 2>, #<ResourceLabel Issue id: 3>]
12
+ DOC
13
+ end
14
+
15
+ doc 'Issues' do
16
+ desc 'Via Issue'
17
+ example <<~DOC
18
+ issue = client.issues.show(16,2)
19
+ issue.resource_labels
20
+ DOC
21
+ end
22
+
23
+ def list(project_id, issue_iid)
24
+ project_id = format_id(project_id)
25
+ issue_iid = format_id(issue_iid)
26
+
27
+ client.request(:get, "projects/#{project_id}/issues/#{issue_iid}/resource_label_events", ResourceLabel)
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,31 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabelIssues < Common
5
+ @group_name = 'Resource Labels'
6
+ doc 'Issues' do
7
+ title 'Show'
8
+ desc 'Returns a single label event for a specific project issue [Project ID, Issue IID, Resource Event ID]'
9
+ example 'client.resource_labels.issues.show(16,3,2)'
10
+ result <<~DOC
11
+ => #<ResourceLabel Issue id: 2>
12
+ DOC
13
+ end
14
+
15
+ doc 'Issues' do
16
+ desc 'Via Issue'
17
+ example <<~DOC
18
+ issue = client.issues.show(16,3)
19
+ issue.resource_label(2)
20
+ DOC
21
+ end
22
+
23
+ def show(project_id, issue_iid, resource_event_id)
24
+ project_id = format_id(project_id)
25
+ issue_iid = format_id(issue_iid)
26
+ resource_event_id = format_id(resource_event_id)
27
+
28
+ client.request(:get, "projects/#{project_id}/issues/#{issue_iid}/resource_label_events/#{resource_event_id}", ResourceLabel)
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,9 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabels < Common
5
+ def merge_requests
6
+ ResourceLabelMergeRequests.new(client)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,30 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabelMergeRequests < Common
5
+ @group_name = 'Resource Labels'
6
+ doc 'Merge Requests' do
7
+ title 'List'
8
+ desc 'Gets a list of all label events for a single merge_request. [Project ID, MergeRequest IID]'
9
+ example 'client.resource_labels.merge_requests.list(16,1)'
10
+ result <<~DOC
11
+ => [#<ResourceLabel MergeRequest id: 4>, #<ResourceLabel MergeRequest id: 5>]
12
+ DOC
13
+ end
14
+
15
+ doc 'Merge Requests' do
16
+ desc 'Via MergeRequest'
17
+ example <<~DOC
18
+ merge_request = client.merge_requests.show(16,1)
19
+ merge_request.resource_labels
20
+ DOC
21
+ end
22
+
23
+ def list(project_id, merge_request_iid)
24
+ project_id = format_id(project_id)
25
+ merge_request_iid = format_id(merge_request_iid)
26
+
27
+ client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_iid}/resource_label_events", ResourceLabel)
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,31 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ResourceLabelMergeRequests < Common
5
+ @group_name = 'Resource Labels'
6
+ doc 'Merge Requests' do
7
+ title 'Show'
8
+ desc 'Returns a single label event for a specific group merge_requests [Project ID, MergeRequest IID, Resource Event ID]'
9
+ example 'client.resource_labels.merge_requests.show(59,6,5)'
10
+ result <<~DOC
11
+ => #<ResourceLabel MergeRequest id: 5>
12
+ DOC
13
+ end
14
+
15
+ doc 'Merge Requests' do
16
+ desc 'Via MergeRequest'
17
+ example <<~DOC
18
+ merge_requests = client.merge_requests.show(59,3)
19
+ merge_requests.resource_label(5)
20
+ DOC
21
+ end
22
+
23
+ def show(project_id, merge_requests_iid, resource_event_id)
24
+ project_id = format_id(project_id)
25
+ merge_requests_iid = format_id(merge_requests_iid)
26
+ resource_event_id = format_id(resource_event_id)
27
+
28
+ client.request(:get, "projects/#{project_id}/merge_requests/#{merge_requests_iid}/resource_label_events/#{resource_event_id}", ResourceLabel)
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,22 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Inspect Helper
4
+ class ResourceLabel < Klass
5
+ include ClassHelpers
6
+
7
+ def inspect
8
+ "#<ResourceLabel #{resource_type} id: #{id}>"
9
+ end
10
+
11
+ date_time_attrs %i[created_at]
12
+ user_attrs %i[user]
13
+ end
14
+ end
15
+
16
+ # Top namespace
17
+ module LabClient
18
+ # Inspect Helper
19
+ class ResourceLabels < Common
20
+ include ClassHelpers
21
+ end
22
+ end
@@ -0,0 +1,24 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'List' do
6
+ title 'All'
7
+ desc 'Get a list of all runners in the GitLab instance (specific and shared). [Hash]'
8
+ example 'client.runners.all'
9
+ result '[#<Runner id: 1, status: online>, ... ]'
10
+
11
+ markdown <<~DOC
12
+ | Attribute | Type | Required | Description |
13
+ |-------------|----------------|----------|---------------------|
14
+ | type | string | no | The type of runners to show, one of: instance_type, group_type, project_type |
15
+ | status | string | no | The status of runners to show, one of: active, paused, online, offline |
16
+ | tag_list | string array | no | List of of the runner's tags |
17
+ DOC
18
+ end
19
+
20
+ def all(query = {})
21
+ client.request(:get, 'runners/all', Runner, query)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,14 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Delete' do
6
+ desc 'Delete a registered runner. [Authentication Token]'
7
+ example 'client.runners.delete("TokenInformation")'
8
+ end
9
+
10
+ def delete(token)
11
+ client.request(:delete, 'runners', nil, token: token)
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,25 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Jobs' do
6
+ desc 'List jobs that are being processed or were processed by specified Runner. [Runner ID]'
7
+ example 'client.runners.jobs(1)'
8
+ result '[#<Runner id: 1, status: online>, ... ]'
9
+
10
+ markdown <<~DOC
11
+ | Attribute | Type | Required | Description |
12
+ |-----------|---------|----------|---------------------|
13
+ | status | string | no | Status of the job; one of: running, success, failed, canceled |
14
+ | order_by| string | no | Order jobs by id. |
15
+ | sort | string | no | Sort jobs in asc or desc order (default: desc) |
16
+
17
+ DOC
18
+ end
19
+
20
+ def jobs(runner_id, query = {})
21
+ runner_id = format_id(runner_id)
22
+ client.request(:get, "runners/#{runner_id}/jobs", Job, query)
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,24 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'List' do
6
+ title 'Owned'
7
+ desc 'Get a list of specific runners available to the user. [Hash]'
8
+ example 'client.runners.list'
9
+ result '[#<Runner id: 1, status: online>, ... ]'
10
+
11
+ markdown <<~DOC
12
+ | Attribute | Type | Required | Description |
13
+ |-------------|----------------|----------|---------------------|
14
+ | type | string | no | The type of runners to show, one of: instance_type, group_type, project_type |
15
+ | status | string | no | The status of runners to show, one of: active, paused, online, offline |
16
+ | tag_list | string array | no | List of of the runner's tags |
17
+ DOC
18
+ end
19
+
20
+ def list(query = {})
21
+ client.request(:get, 'runners', Runner, query)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,30 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Register' do
6
+ desc 'Register a new Runner for the instance. [Hash]'
7
+ example 'client.runners.register(token: "Token!")'
8
+ result '{:id=>"12345", :token=>"6337ff461c94fd3fa32ba3b1ff4125"}'
9
+
10
+ markdown <<~DOC
11
+
12
+ | Attribute | Type | Required | Description |
13
+ |--------------|---------|----------|---------------------|
14
+ | token | string | yes | Registration token |
15
+ | description| string | no | Runner's description |
16
+ | info | hash | no | Runner's metadata |
17
+ | active | boolean | no | Whether the Runner is active |
18
+ | locked | boolean | no | Whether the Runner should be locked for current project |
19
+ | run_untagged | boolean | no | Whether the Runner should handle untagged jobs |
20
+ | tag_list | string array | no | List of Runner's tags |
21
+ | access_level | string | no | The access_level of the runner; not_protected or ref_protected |
22
+ | maximum_timeout | integer | no | Maximum timeout set when this Runner will handle the job |
23
+ DOC
24
+ end
25
+
26
+ def register(query)
27
+ client.request(:post, 'runners', nil, query)
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,24 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Remove' do
6
+ desc 'Remove a runner. [Runner ID]'
7
+ example 'client.runners.delete(5)'
8
+ end
9
+
10
+ doc 'Remove' do
11
+ desc 'Via Runner'
12
+ example <<~DOC
13
+ runner = client.runners.show(5)
14
+ runner.delete
15
+ DOC
16
+ end
17
+
18
+ def remove(runner_id)
19
+ runner_id = format_id(runner_id)
20
+
21
+ client.request(:delete, "runners/#{runner_id}")
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,41 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Inspect Helper
4
+ class Runner < Klass
5
+ include ClassHelpers
6
+
7
+ def inspect
8
+ "#<Runner id: #{id}, status: #{status}>"
9
+ end
10
+
11
+ def details
12
+ update_self client.runners.show(id)
13
+ end
14
+
15
+ def remove
16
+ client.runners.remove(id)
17
+ end
18
+
19
+ def jobs(query = {})
20
+ client.runners.jobs(id, query)
21
+ end
22
+
23
+ def update(query)
24
+ update_self client.runners.update(id, query)
25
+ end
26
+
27
+ def verify
28
+ details if token.nil? # Not included in List
29
+ client.runners.verify(token)
30
+ end
31
+
32
+ help do
33
+ subtitle 'Runner'
34
+ option 'details', 'Collect runner details'
35
+ option 'update', 'Update this runner [Hash]'
36
+ option 'update', 'Remove runner'
37
+ option 'jobs', 'Show runner jobs [Hash]'
38
+ option 'verify', 'Verify authentication token'
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,16 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Show' do
6
+ desc 'Get details of a runner. [Runner ID]'
7
+ example 'client.runners.show(3)'
8
+ result '#<Runner id: 3, status: online>'
9
+ end
10
+
11
+ def show(runner_id)
12
+ runner_id = format_id(runner_id)
13
+ client.request(:get, "runners/#{runner_id}", Runner)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,45 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Update' do
6
+ desc 'Update details of a runner. [Runner ID, Hash]'
7
+ example 'client.runners.update(3, description: :rawr)'
8
+ result '#<Runner id: 3, status: online>'
9
+ markdown <<~DOC
10
+
11
+ | Attribute | Type | Required | Description |
12
+ |---------------|---------|----------|---------------------|
13
+ | description | string | no | The description of a runner |
14
+ | active | boolean | no | The state of a runner; can be set to true or false |
15
+ | tag_list | array | no | The list of tags for a runner; put array of tags, that should be finally assigned to a runner |
16
+ | run_untagged| boolean | no | Flag indicating the runner can execute untagged jobs |
17
+ | locked | boolean | no | Flag indicating the runner is locked |
18
+ | access_level | string | no | The access_level of the runner; not_protected or ref_protected |
19
+ | maximum_timeout | integer | no | Maximum timeout set when this Runner will handle the job |
20
+ DOC
21
+ end
22
+
23
+ doc 'Update' do
24
+ desc 'Via Runner'
25
+ example <<~DOC
26
+ runner = client.runners.show(5)
27
+ runner.update(description: 'Hello!')
28
+ DOC
29
+ end
30
+
31
+ doc 'Update' do
32
+ desc 'Pausing a Runner'
33
+ example <<~DOC
34
+ client.runners.update(3, active: false)
35
+ => #<Runner id: 3, status: paused>
36
+ DOC
37
+ end
38
+
39
+ def update(runner_id, query)
40
+ runner_id = format_id(runner_id)
41
+
42
+ client.request(:put, "runners/#{runner_id}", Runner, query)
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,22 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Runners < Common
5
+ doc 'Verify' do
6
+ desc 'Validates authentication credentials for a registered Runner. [Authentication Token]'
7
+ example 'client.runners.verify("TokenInformation")'
8
+ end
9
+
10
+ doc 'Verify' do
11
+ desc 'Via Runner'
12
+ example <<~DOC
13
+ runner = client.runners.show(3)
14
+ runner.verify
15
+ DOC
16
+ end
17
+
18
+ def verify(token)
19
+ client.request(:post, 'runners/verify', nil, token: token)
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,18 @@
1
+ # The glorious gitlab labclient of labs
2
+ module LabClient
3
+ # Helper for Docs
4
+ class Search
5
+ extend Docs
6
+
7
+ doc 'Search' do
8
+ title ''
9
+ desc 'Lots! Search Scopes are on each of the individual scope endpoints'
10
+
11
+ markdown <<~DOC
12
+ - <a target="_blank" href="/#Users-Search">Users</a>
13
+ - <a target="_blank" href="/#Projects-Search">Projects</a>
14
+ - <a target="_blank" href="/#Groups-Search">Groups</a>
15
+ DOC
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,31 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Snippets < Common
5
+ doc 'Show' do
6
+ title 'Get user agent details'
7
+ example 'client.snippets.agent_detail(2)'
8
+ result <<~DOC
9
+ => {:user_agent=>"Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0", :ip_address=>"10.0.0.14", :akismet_submitted=>false}
10
+ DOC
11
+ end
12
+
13
+ doc 'Show' do
14
+ desc 'From Snippet Object'
15
+ example 'snippet.agent_detail'
16
+ result <<~DOC
17
+ snippet = client.snippets.show(2)
18
+ => #<Snippet id: 2, Grapthar's hammer>
19
+ snippet.agent_detail
20
+ => {:user_agent=>"Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0", :ip_address=>"10.0.0.14", :akismet_submitted=>false}
21
+ DOC
22
+ end
23
+
24
+ # Show Specific
25
+ def agent_detail(project_id)
26
+ project_id = format_id(project_id)
27
+
28
+ client.request(:get, "snippets/#{project_id}/user_agent_detail")
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,33 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class Snippets < Common
5
+ doc 'Content' do
6
+ desc 'Get a single snippet’s raw contents.'
7
+ example 'client.snippets.raw(2)'
8
+ result <<~DOC
9
+ => "Here's the special content"
10
+ DOC
11
+ end
12
+
13
+ doc 'Content' do
14
+ markdown 'Display content from `Snippet` object.'
15
+ example <<~DOC
16
+ snippet = client.snippets.raw(2)
17
+ snippet.raw
18
+ DOC
19
+
20
+ result <<~DOC
21
+ snippet = client.snippets.show(2)
22
+ => #<Snippet id: 2, Special Title>
23
+ snippet.raw
24
+ => "Here's the special content"
25
+ DOC
26
+ end
27
+
28
+ # Show Specific
29
+ def raw(snippet_id)
30
+ client.request(:get, "snippets/#{snippet_id}/raw")
31
+ end
32
+ end
33
+ end