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,254 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # rubocop:disable Metrics/BlockLength, Metrics/ClassLength
4
+ # Help Do Block
5
+ class Project < Klass
6
+ help do
7
+ subtitle 'Project'
8
+ option 'archive', 'Archive this project'
9
+ option 'delete', 'Schedule/Delete this project'
10
+ option 'events', "List this project's events"
11
+ option 'fork_existing', 'Create Fork Relationship [Target/Source Project]'
12
+ option 'fork_remove', 'Remove Fork Relationshgip'
13
+ option 'fork', 'Fork this project, accepts hash, [namespace, path, name]'
14
+ option 'forks', 'List forks of this project'
15
+ option 'issues', 'List project issues [Hash]'
16
+
17
+ option 'housekeeping', 'Start the Housekeeping'
18
+ option 'languages', 'Get percentage value of languages used.'
19
+
20
+ # Mirror
21
+ option 'mirror_start', 'Start mirroring process'
22
+ option 'mirrors', 'List remote mirrors'
23
+ option 'mirror_create', 'Create new remote mirror [Hash]'
24
+
25
+ option 'push_rule_create', 'Create project push rule [Hash]'
26
+ option 'push_rule_delete', 'Delete project push rule'
27
+ option 'push_rules_update', 'Update existing project push rule [Hash]'
28
+ option 'push_rules', 'List the project push rules'
29
+ option 'restore', 'Restores project marked for deletion'
30
+ option 'search', 'Search by scope within project [scope, search_string]'
31
+ option 'share', 'Share project with group [{group_id, group_access }]'
32
+ option 'star', 'Star this project'
33
+ option 'starrers', 'List users who have starred this project'
34
+ option 'transfer', 'Transfer to namespace [Namespace Name/ID]'
35
+ option 'unarchive', 'Unarchive this project'
36
+ option 'unshare', 'Remove project group share [ group_id ]'
37
+ option 'unstar', 'Unstar this project'
38
+ option 'update', 'Update this project'
39
+ option 'upload', 'Upload file to project [ full_file_path ]'
40
+ option 'snapshot', 'Download snapshot [ file_path, wiki/boolean ]'
41
+ option 'users', "List this project's users"
42
+
43
+ # Registry
44
+ option 'registry_repositories', 'Get a list of registry repositories [Hash]'
45
+
46
+ # Hooks
47
+ option 'hooks', "List this project's hooks"
48
+ option 'hook_create', 'Create project hook [Hash]'
49
+ option 'hook_delete', 'Delete project hook [Hook ID]'
50
+ option 'hook_show', 'Show specific hook from project [Hook ID]'
51
+ option 'hook_update', 'Update project hook [Hook ID, Hash]'
52
+
53
+ # Badges
54
+ option 'badge_create', 'Create project badge [Hash]'
55
+ option 'badge_delete', 'Delete project badge [Badge ID]'
56
+ option 'badge_show', 'Show specific badge from project [Badge ID]'
57
+ option 'badge_update', 'Update project badge [Badge ID, Hash]'
58
+ option 'badges', "List this project's badges"
59
+
60
+ # Environments
61
+ option 'environments', "List this project's environments"
62
+ option 'environment_create', 'Create project environment [Hash]'
63
+ option 'environment_delete', 'Delete project environment [Environment ID]'
64
+ option 'environment_show', 'Show specific environment from project [Environment ID]'
65
+ option 'environment_update', 'Update project environment [Environment ID, Hash]'
66
+ option 'environment_stop', 'Stop project environment [Environment ID]'
67
+
68
+ # Deployments
69
+ option 'deployments', "List this project's deployments"
70
+ option 'deployment_create', 'Create project deployment [Hash]'
71
+ option 'deployment_merge_requests', 'Show related merge requests [Deployment ID, Hash]'
72
+ option 'deployment_show', 'Show specific deployment from project [Deployment ID]'
73
+ option 'deployment_update', 'Update project deployment [Deployment ID, String Status]'
74
+
75
+ # Triggers
76
+ option 'trigger_create', 'Create project trigger [String]'
77
+ option 'trigger_delete', 'Delete project trigger [Trigger ID]'
78
+ option 'trigger_show', 'Show specific trigger from project [Trigger ID]'
79
+ option 'triggers', "List this project's triggers"
80
+
81
+ # Variables
82
+ option 'variable_create', 'Create project variable [Hash]'
83
+ option 'variable_delete', 'Delete project variable [Variable Key]'
84
+ option 'variable_show', 'Show specific variable from project [Variable Key]'
85
+ option 'variable_update', 'Update project variable [Variable Key, Hash]'
86
+ option 'variables', "List this project's variables"
87
+
88
+ # Labels
89
+ option 'labels', "List this project's labels"
90
+ option 'label', 'Show specific label from project [Label ID]'
91
+ option 'label_create', 'Create project label [Hash]'
92
+ option 'label_delete', 'Delete project label [Label ID]'
93
+ option 'label_update', 'Update project label [Label ID, Hash]'
94
+ option 'label_promote', 'Promote label to group [Label ID]'
95
+ option 'label_subscribe', 'Subscribe to label notifications [Label ID]'
96
+ option 'label_unsubscribe', 'Unsubscribe to label notifications [Label ID]'
97
+
98
+ # Releases
99
+ option 'release_create', 'Create project release [Hash]'
100
+ option 'release_delete', 'Delete project release [Tag Name]'
101
+ option 'release_show', 'Show specific release from project [Tag Name]'
102
+ option 'release_update', 'Update project release [Tag Name, Hash]'
103
+ option 'release_evidence', 'Create Evidence for existing Release [Tag Name, Hash]'
104
+ option 'releases', "List this project's releases"
105
+
106
+ # Release Links
107
+ option 'release_link_create', 'Create project release link [Tag Name, Hash]'
108
+ option 'release_link_delete', 'Delete project release link [Tag Name, Link ID]'
109
+ option 'release_link_show', 'Show specific release_link from project [Tag Name, Link ID]'
110
+ option 'release_link_update', 'Update project release link [Tag Name, Link ID, Hash]'
111
+ option 'release_link_evidence', 'Create Evidence for existing Release [Tag Name, Link ID, Hash]'
112
+ option 'release_links', "List this project's release links [Tag Name]"
113
+
114
+ # Services
115
+ option 'service_delete', 'Delete project service [Service Slug]'
116
+ option 'service_show', 'Show specific service from project [Service Slug]'
117
+ option 'service_update', 'Update/Create project service [Service Slug, Hash]'
118
+ option 'services', "List this project's services"
119
+
120
+ # Deploy Keys
121
+ option 'deploy_keys', 'List Project DeployKeys'
122
+ option 'deploy_key_add', 'Add Project DeployKeys [Hash]'
123
+ option 'deploy_key_show', 'Find specific Project Deploy Key [Key ID]'
124
+ option 'deploy_key_update', 'Update specific Project Deploy Key [Key ID, Hash]'
125
+ option 'deploy_key_delete', 'Remove specific Project Deploy Key [Key ID]'
126
+ option 'deploy_key_enable', 'Enable specific Project Deploy Key [Key ID]'
127
+
128
+ # Commits
129
+ option 'commits', 'List Commits [Hash]'
130
+ option 'commit_create', 'Create new commit [Hash]'
131
+ option 'commit_refs', 'Get all references (from branches or tags) a commit is pushed to. [Commit ID, Scope]'
132
+ option 'commit_cherry_pick', 'Cherry picks a commit to a target branch. [Commit ID, Branch]'
133
+ option 'commit_comments', 'Get the comments of a commit [Commit ID]'
134
+ option 'commit_comment_create', 'Post a new Comment on Commit [Commit ID, Hash]'
135
+ option 'commit_merge_requests', 'Get a list of Merge Requests related to the specified commit. [Commit ID]'
136
+
137
+ option 'commit_status', 'List the statuses of a commit. [Commit ID, Hash]'
138
+ option 'commit_status_update', 'Adds or updates a build status of a commit. [Commit ID, Hash]'
139
+
140
+ option 'wikis', 'Get all wiki pages. [Boolean, include content]'
141
+ option 'wiki', 'Get specific wiki page. [String/Slug]'
142
+ option 'wiki_create', 'Create a new wiki page. [Hash]'
143
+ option 'wiki_update', 'Update existing wiki page. [Slug, Hash]'
144
+ option 'wiki_delete', 'Delete wiki page. [Slug]'
145
+ option 'wiki_upload', 'Upload file to wiki. [File Path]'
146
+
147
+ # Runners
148
+ option 'runners', 'List project runners. [Hash]'
149
+ option 'runner_enable', 'Enable runner for project. [Runner ID]'
150
+ option 'runner_disable', 'Disable runner for project. [Runner ID]'
151
+
152
+ # Pipelines
153
+ option 'pipelines', 'List pipelines for Project. [Hash]'
154
+ option 'pipeline', 'Show pipeline for Project. [Pipeline ID]'
155
+ option 'pipeline_variables', 'Show pipeline_variables for Project. [Pipeline ID]'
156
+ option 'pipeline_create', 'Create new Pipeline. [Hash]'
157
+ option 'pipeline_retry', 'Retry Jobs in Pipeline [Pipeline ID]'
158
+ option 'pipeline_cancel', 'Cancel Jobs in Pipeline [Pipeline ID]'
159
+ option 'pipeline_delete', 'Delete Pipeline [Pipeline ID]'
160
+
161
+ # Jobs
162
+ option 'jobs', 'List project jobs [Scope]'
163
+ option 'job', 'Show specific job [Job ID]'
164
+ option 'job_artifacts', 'Download Job Artifacts [Job ID, File Path]'
165
+ option 'job_artifacts_latest', 'Download latest artifacts from given ref Artifacts [Branch Name, File Path]'
166
+ option 'job_artifacts_path', 'Download artifacts path [Job ID, File Path, Output Path]'
167
+ option 'job_trace', 'Get job output[Job ID]'
168
+ option 'job_cancel', 'Cancel single project job [Job ID]'
169
+ option 'job_retry', 'Retry single project job [Job ID]'
170
+ option 'job_erase', 'Erase single project job [Job ID]'
171
+ option 'job_keep', 'Prevents artifacts from being deleted when expiration is set [Job ID]'
172
+ option 'job_delete', 'Delete artifacts of a job [Job ID]'
173
+ option 'job_play', 'Triggers a manual action to start a job [Job ID]'
174
+
175
+ # Members
176
+ option 'members', 'List project members [Hash]'
177
+ option 'members_all', 'List project members, including inherited [Hash]'
178
+ option 'member', 'Show specific member [User ID]'
179
+ option 'member_all', 'Show specific member, including inherited [User ID]'
180
+ option 'member_add', 'Add user to project [User ID, Hash]'
181
+ option 'member_update', 'Update user on project [User ID, Hash]'
182
+ option 'member_delete', 'Remove user from Project [User ID]'
183
+
184
+ # Repository
185
+ option 'tree', 'Get a list of repository files and directories [Hash]'
186
+ option 'blob', 'Allows you to receive information about blob [Sha, Raw/Boolean]'
187
+ option 'download_archive', 'Get an archive of the repository [File Path, Format]'
188
+ option 'compare', 'Compare branches, tags or commits [Hash]'
189
+ option 'contributors', 'Get repository contributors list [Hash]'
190
+ option 'merge_base', 'Get the common ancestor for 2 or more refs [Array(Refs)]'
191
+
192
+ # Files
193
+ option 'file', 'Retrieve file information [File Path, Ref, Kind]'
194
+ option 'file_create', 'Create a single file [File Path, Hash]'
195
+ option 'file_update', 'Update a single file [File Path, Hash]'
196
+ option 'file_delete', 'Remove a single file [File Path, Hash]'
197
+
198
+ # Branches
199
+ option 'branches', 'List repository branches [String]'
200
+ option 'branch', 'Get a single repository branches [Branch Name]'
201
+ option 'branch_delete', 'Delete a single repository branches [Branch Name]'
202
+ option 'branch_delete_merged', 'Will delete all branches that are merged into the project’s default branch'
203
+
204
+ # Protected Branches
205
+ option 'protected_branches', 'List protected branches [String]'
206
+ option 'protected_branch', 'Show single protected branch [String]'
207
+ option 'protect_branch', 'Protect a single or wildcard branch [Hash]'
208
+ option 'unprotect_branch', 'Unprotect branch [Branch]'
209
+ option 'branch_code_owner_approval', 'Update the “code owner approval required” [Branch, Boolean]'
210
+
211
+ # Tags
212
+ option 'tags', 'List repository tags [Hash]'
213
+ option 'tag', 'Get a specific repository tag by name [String]'
214
+ option 'tag_create', 'Creates a new tag in the repository [Hash]'
215
+ option 'tag_delete', 'Deletes a tag of a repository with given name [String]'
216
+ option 'tag_release', 'Add release notes to the existing Git tag [String, String]'
217
+ option 'tag_update', 'Updates the release notes of a given release. [String, String]'
218
+
219
+ # Protected Tags
220
+ option 'protected_tags', 'List protected tags [String]'
221
+ option 'protected_tag', 'Show single protected tag [String]'
222
+ option 'protect_tag', 'Protect a single or wildcard tag [Hash]'
223
+ option 'unprotect_tag', 'Unprotect tag [Branch]'
224
+
225
+ # Approvals
226
+ option 'approvals', 'Show project’s approval configuration.'
227
+ option 'approvals_update', 'Show approval configuration. [Hash]'
228
+ option 'approvals_rules', 'List approval rules. [Hash]'
229
+ option 'approvals_rule_create', 'Create new approval rule. [Hash]'
230
+ option 'approvals_rule_update', 'Update approval rule. [ID, Hash]'
231
+ option 'approvals_rule_delete', 'Delete approval rule. [ID]'
232
+
233
+ # Submodule
234
+ option 'submodule', 'Update existing submodule. [Submodule, Hash]'
235
+
236
+ # Merge Requests
237
+ option 'merge_requests', 'List project merge requests, [Hash]'
238
+
239
+ # Access Requests
240
+ option 'access_requests', 'List access requests for project'
241
+ option 'request_access', 'Request access to project'
242
+
243
+ # Milestones
244
+ option 'milestones', 'List milestones for project [Hash]'
245
+
246
+ # Pipeline Schedules
247
+ option 'pipeline_schedules', 'List pipeline schedules for project'
248
+
249
+ # Clusters
250
+ option 'clusters', 'Returns a list of project clusters.'
251
+ end
252
+ end
253
+ # rubocop:enable Metrics/BlockLength, Metrics/ClassLength
254
+ end
@@ -0,0 +1,17 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Inspect Helper
4
+ class ProjectReleases < Common
5
+ include ClassHelpers
6
+ end
7
+ end
8
+
9
+ # Top namespace
10
+ module LabClient
11
+ # Specifics
12
+ class Projects < Common
13
+ def releases
14
+ ProjectReleases.new(client)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,40 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleaseLinks < Common
5
+ doc 'Create' do
6
+ desc 'Create an asset as a link from a Release. [Project ID, Tag Name Hash]'
7
+ example <<~DOC
8
+ client.projects.release_links.create(16, :release, name: 'Download', url: 'https://labclient/download/file.tgz')
9
+ DOC
10
+
11
+ result '=> #<ProjectReleaseLink tag_name: release_link, name: release_link>'
12
+ end
13
+
14
+ doc 'Create' do
15
+ markdown <<~DOC
16
+
17
+ | Attribute | Type | Required | Description |
18
+ | ------------- | -------------- | -------- | --------------------------------------- |
19
+ | name | string | yes | The name of the link. |
20
+ | url | string | yes | The URL of the link. |
21
+
22
+ DOC
23
+ end
24
+
25
+ doc 'Create' do
26
+ desc 'Via Project [Hash]'
27
+ example <<~DOC
28
+ project = client.projects.show(16)
29
+ release_link = project.release_link_create(:release, name: 'Another', url: 'https://labclient/download/thing.tgz')
30
+ DOC
31
+ end
32
+
33
+ def create(project_id, release_id, query)
34
+ project_id = format_id(project_id)
35
+ release_id = format_id(release_id)
36
+
37
+ client.request(:post, "projects/#{project_id}/releases/#{release_id}/assets/links", ProjectReleaseLink, query)
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,34 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleaseLinks < Common
5
+ doc 'Delete' do
6
+ desc 'Delete an asset as a link from a Release. [Project ID, Tag Name, Link ID]'
7
+ example 'client.projects.release_links.delete(16, :release, 2)'
8
+ end
9
+
10
+ doc 'Delete' do
11
+ desc 'Via Project [Tag Name, Link ID]'
12
+ example <<~DOC
13
+ project = client.projects.show(16)
14
+ project.release_link_delete(:release_link)
15
+ DOC
16
+ end
17
+
18
+ doc 'Delete' do
19
+ desc 'Via ProjectReleaseLink'
20
+ example <<~DOC
21
+ release_link = client.projects.release_links.show(16, :release, 2)
22
+ release_link.delete
23
+ DOC
24
+ end
25
+
26
+ def delete(project_id, release_id, link_id)
27
+ project_id = format_id(project_id)
28
+ release_id = format_id(release_id)
29
+ link_id = format_id(link_id)
30
+
31
+ client.request(:delete, "projects/#{project_id}/releases/#{release_id}/assets/links/#{link_id}", ProjectReleaseLink)
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,37 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleaseLinks < Common
5
+ doc 'List' do
6
+ desc 'Get assets as links from a Release. [Project ID, Tag Name]'
7
+ example 'client.projects.release_links.list(16, :release)'
8
+
9
+ result <<~DOC
10
+ => [#<ProjectReleaseLink id: 1, name: Download>, ...]
11
+ DOC
12
+ end
13
+
14
+ doc 'List' do
15
+ desc 'Via Project [Tag Name]'
16
+ example <<~DOC
17
+ project = client.projects.show(16)
18
+ project.release_links(:release)
19
+ DOC
20
+ end
21
+
22
+ doc 'List' do
23
+ desc 'Via Release'
24
+ example <<~DOC
25
+ release = client.projects.releases.show(16, :release)
26
+ release.links
27
+ DOC
28
+ end
29
+
30
+ def list(project_id, release_id)
31
+ project_id = format_id(project_id)
32
+ release_id = format_id(release_id)
33
+
34
+ client.request(:get, "projects/#{project_id}/releases/#{release_id}/assets/links", ProjectReleaseLink)
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,42 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Inspect Helper
4
+ class ProjectReleaseLink < Klass
5
+ include ClassHelpers
6
+ def inspect
7
+ "#<ProjectReleaseLink id: #{id}, name: #{name}>"
8
+ end
9
+
10
+ def project
11
+ project_id = collect_project_id
12
+ client.projects.show project_id
13
+ end
14
+
15
+ def update(query)
16
+ project_id = collect_project_id
17
+ release_id = collect_release_id
18
+
19
+ update_self client.projects.release_links.update(project_id, release_id, id, query)
20
+ end
21
+
22
+ def delete
23
+ project_id = collect_project_id
24
+ release_id = collect_release_id
25
+
26
+ client.projects.release_links.delete(project_id, release_id, id)
27
+ end
28
+
29
+ # User Fields
30
+ user_attrs %i[author]
31
+
32
+ date_time_attrs %i[created_at release_linkd_at]
33
+
34
+ help do
35
+ @group_name = 'Projects'
36
+ subtitle 'ProjectRelease'
37
+ option 'project', 'Show Project'
38
+ option 'update', 'Update this release link [Hash]'
39
+ option 'delete', 'Delete this release link'
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,28 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleaseLinks < Common
5
+ doc 'Show' do
6
+ desc 'Get an asset as a link from a Release. [Project ID, Tag Name, Link ID]'
7
+ example 'client.projects.release_links.show(16, :release, 1)'
8
+
9
+ result '=> #<ProjectReleaseLink id: 1, name: Download>'
10
+ end
11
+
12
+ doc 'Show' do
13
+ desc 'Via Project [Tag Name, Link ID]'
14
+ example <<~DOC
15
+ project = client.projects.show(16)
16
+ release_link = project.release_link_show(:release, 1)
17
+ DOC
18
+ end
19
+
20
+ def show(project_id, release_id, link_id)
21
+ project_id = format_id(project_id)
22
+ release_id = format_id(release_id)
23
+ link_id = format_id(link_id)
24
+
25
+ client.request(:get, "projects/#{project_id}/releases/#{release_id}/assets/links/#{link_id}", ProjectReleaseLink)
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,45 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleaseLinks < Common
5
+ doc 'Update' do
6
+ desc 'Update an asset as a link from a Release. [Project ID, Tag Name, Hash]'
7
+ example 'client.projects.release_links.update(16, :release_link, name: "planet bob")'
8
+
9
+ result '=> #<ProjectReleaseLink id: 1, name: switchy>'
10
+ end
11
+
12
+ doc 'Update' do
13
+ markdown <<~DOC
14
+ | Attribute | Type | Required | Description |
15
+ | ------------- | -------------- | -------- | --------------------------------------- |
16
+ | name | string | yes | The name of the link. |
17
+ | url | string | yes | The URL of the link. |
18
+ DOC
19
+ end
20
+
21
+ doc 'Update' do
22
+ desc 'Via Project [Tag Name, Hash]'
23
+ example <<~DOC
24
+ project = client.projects.show(16)
25
+ release_link = project.release_link_update(:release, 1, name: "another")
26
+ DOC
27
+ end
28
+
29
+ doc 'Update' do
30
+ desc 'Via ProjectReleaseLink [Params]'
31
+ example <<~DOC
32
+ release_link = client.projects.release_links.show(16, :release, 1)
33
+ release_link.update(name: "switchy")
34
+ DOC
35
+ end
36
+
37
+ def update(project_id, release_id, link_id, query)
38
+ project_id = format_id(project_id)
39
+ release_id = format_id(release_id)
40
+ link_id = format_id(link_id)
41
+
42
+ client.request(:put, "projects/#{project_id}/releases/#{release_id}/assets/links/#{link_id}", ProjectReleaseLink, query)
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,17 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Inspect Helper
4
+ class ProjectReleaseLinks < Common
5
+ include ClassHelpers
6
+ end
7
+ end
8
+
9
+ # Top namespace
10
+ module LabClient
11
+ # Specifics
12
+ class Projects < Common
13
+ def release_links
14
+ ProjectReleaseLinks.new(client)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,47 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleases < Common
5
+ doc 'Create' do
6
+ desc 'Create a Release. You need push access to the repository to create a Release. [Project ID, Hash]'
7
+ example <<~DOC
8
+ client.projects.releases.create(16, tag_name: :release)
9
+ DOC
10
+
11
+ result '=> #<ProjectRelease tag_name: release, name: release>'
12
+ end
13
+
14
+ doc 'Create' do
15
+ markdown <<~DOC
16
+ | Attribute | Type | Required | Description |
17
+ | -------------------| ------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
18
+ | tag_name | string | yes | The tag where the release will be created from. |
19
+ | ref | string | yes, if tag_name doesn't exist | If tag_name doesn't exist, the release will be created from ref. It can be a commit SHA, another tag name, or a branch name. |
20
+ | name | string | no | The release name. |
21
+ | description | string | no | The description of the release. |
22
+ | milestones | array of string | no | The title of each milestone the release is associated with. |
23
+ | assets:links | array of hash | no | An array of assets links. |
24
+ | assets:links:name| string | required by: assets:links | The name of the link. |
25
+ | assets:links:url | string | required by: assets:links | The URL of the link. |
26
+ | assets:links:filepath | string | no | Optional path for a Direct Asset link. |
27
+ | released_at | datetime | no | The date when the release will be/was ready. Defaults to the current time. Expected in ISO 8601 format (2019-03-15T08:00:00Z). |
28
+ DOC
29
+ end
30
+
31
+ doc 'Create' do
32
+ desc 'Via Project [Hash]'
33
+ example <<~DOC
34
+ project = client.projects.show(100)
35
+ release = project.release_create(tag_name: :release)
36
+ DOC
37
+ end
38
+
39
+ def create(project_id, query)
40
+ project_id = format_id(project_id)
41
+
42
+ query[:released_at] = query[:released_at].to_time.iso8601 if format_time?(query[:released_at])
43
+
44
+ client.request(:post, "projects/#{project_id}/releases", ProjectRelease, query)
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,33 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleases < Common
5
+ doc 'Delete' do
6
+ desc 'Delete a Release. Deleting a Release will not delete the associated tag. [Project ID, Tag Name]'
7
+ example 'client.projects.releases.delete(16, :release)'
8
+ end
9
+
10
+ doc 'Delete' do
11
+ desc 'Via Project [Tag Name]'
12
+ example <<~DOC
13
+ project = client.projects.show(16)
14
+ project.release_delete(:release)
15
+ DOC
16
+ end
17
+
18
+ doc 'Delete' do
19
+ desc 'Via ProjectRelease'
20
+ example <<~DOC
21
+ release = client.projects.releases.show(16, :release)
22
+ release.delete
23
+ DOC
24
+ end
25
+
26
+ def delete(project_id, release_id)
27
+ project_id = format_id(project_id)
28
+ release_id = format_id(release_id)
29
+
30
+ client.request(:delete, "projects/#{project_id}/releases/#{release_id}", ProjectRelease)
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,34 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleases < Common
5
+ doc 'Update' do
6
+ title 'Evidence'
7
+ desc 'Create Evidence for an existing Release. [Project ID, Tag Name]'
8
+ example 'client.projects.releases.evidence(16, :release)'
9
+ end
10
+
11
+ doc 'Update' do
12
+ desc 'Via Project [Tag Name, Hash]'
13
+ example <<~DOC
14
+ project = client.projects.show(16)
15
+ release = project.release_evidence(:release)
16
+ DOC
17
+ end
18
+
19
+ doc 'Update' do
20
+ desc 'Via ProjectRelease [Params]'
21
+ example <<~DOC
22
+ release = client.projects.releases.show(16, :release)
23
+ release.evidence
24
+ DOC
25
+ end
26
+
27
+ def evidence(project_id, release_id)
28
+ project_id = format_id(project_id)
29
+ release_id = format_id(release_id)
30
+
31
+ client.request(:post, "projects/#{project_id}/releases/#{release_id}/evidence", ProjectRelease)
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,28 @@
1
+ # Top namespace
2
+ module LabClient
3
+ # Specifics
4
+ class ProjectReleases < Common
5
+ doc 'List' do
6
+ desc 'List project releases. [Project ID]'
7
+ example 'client.projects.releases.list(16)'
8
+
9
+ result <<~DOC
10
+ => [#<ProjectRelease tag_name: release, name: release>, ...]
11
+ DOC
12
+ end
13
+
14
+ doc 'List' do
15
+ desc 'Via Project'
16
+ example <<~DOC
17
+ project = client.projects.show(16)
18
+ project.releases
19
+ DOC
20
+ end
21
+
22
+ def list(project_id)
23
+ project_id = format_id(project_id)
24
+
25
+ client.request(:get, "projects/#{project_id}/releases", ProjectRelease)
26
+ end
27
+ end
28
+ end