@simplysf/simply-gitlab 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -148,6 +148,7 @@ exitCode, status?, body?}}` — and nothing to stdout. Exit codes are identical
148
148
  - [`simply gitlab file view`](#simply-gitlab-file-view)
149
149
  - [`simply gitlab mr create`](#simply-gitlab-mr-create)
150
150
  - [`simply gitlab mr list`](#simply-gitlab-mr-list)
151
+ - [`simply gitlab mr merge`](#simply-gitlab-mr-merge)
151
152
  - [`simply gitlab mr update`](#simply-gitlab-mr-update)
152
153
  - [`simply gitlab mr view`](#simply-gitlab-mr-view)
153
154
  - [`simply gitlab project create`](#simply-gitlab-project-create)
@@ -198,7 +199,7 @@ FLAG DESCRIPTIONS
198
199
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
199
200
  ```
200
201
 
201
- _See code: [lib/commands/gitlab/branch/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/branch/create.js)_
202
+ _See code: [lib/commands/gitlab/branch/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/branch/create.js)_
202
203
 
203
204
  ## `simply gitlab branch list`
204
205
 
@@ -241,7 +242,7 @@ FLAG DESCRIPTIONS
241
242
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
242
243
  ```
243
244
 
244
- _See code: [lib/commands/gitlab/branch/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/branch/list.js)_
245
+ _See code: [lib/commands/gitlab/branch/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/branch/list.js)_
245
246
 
246
247
  ## `simply gitlab ci environment list`
247
248
 
@@ -287,7 +288,7 @@ FLAG DESCRIPTIONS
287
288
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
288
289
  ```
289
290
 
290
- _See code: [lib/commands/gitlab/ci/environment/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/ci/environment/list.js)_
291
+ _See code: [lib/commands/gitlab/ci/environment/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/ci/environment/list.js)_
291
292
 
292
293
  ## `simply gitlab ci job list`
293
294
 
@@ -331,7 +332,7 @@ FLAG DESCRIPTIONS
331
332
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
332
333
  ```
333
334
 
334
- _See code: [lib/commands/gitlab/ci/job/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/ci/job/list.js)_
335
+ _See code: [lib/commands/gitlab/ci/job/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/ci/job/list.js)_
335
336
 
336
337
  ## `simply gitlab ci job log`
337
338
 
@@ -376,7 +377,7 @@ FLAG DESCRIPTIONS
376
377
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
377
378
  ```
378
379
 
379
- _See code: [lib/commands/gitlab/ci/job/log.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/ci/job/log.js)_
380
+ _See code: [lib/commands/gitlab/ci/job/log.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/ci/job/log.js)_
380
381
 
381
382
  ## `simply gitlab ci variable list`
382
383
 
@@ -427,7 +428,7 @@ FLAG DESCRIPTIONS
427
428
  where this output is going.
428
429
  ```
429
430
 
430
- _See code: [lib/commands/gitlab/ci/variable/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/ci/variable/list.js)_
431
+ _See code: [lib/commands/gitlab/ci/variable/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/ci/variable/list.js)_
431
432
 
432
433
  ## `simply gitlab commit create`
433
434
 
@@ -487,7 +488,7 @@ FLAG DESCRIPTIONS
487
488
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
488
489
  ```
489
490
 
490
- _See code: [lib/commands/gitlab/commit/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/commit/create.js)_
491
+ _See code: [lib/commands/gitlab/commit/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/commit/create.js)_
491
492
 
492
493
  ## `simply gitlab commit diff`
493
494
 
@@ -529,7 +530,7 @@ FLAG DESCRIPTIONS
529
530
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
530
531
  ```
531
532
 
532
- _See code: [lib/commands/gitlab/commit/diff.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/commit/diff.js)_
533
+ _See code: [lib/commands/gitlab/commit/diff.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/commit/diff.js)_
533
534
 
534
535
  ## `simply gitlab commit list`
535
536
 
@@ -580,7 +581,7 @@ FLAG DESCRIPTIONS
580
581
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
581
582
  ```
582
583
 
583
- _See code: [lib/commands/gitlab/commit/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/commit/list.js)_
584
+ _See code: [lib/commands/gitlab/commit/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/commit/list.js)_
584
585
 
585
586
  ## `simply gitlab commit view`
586
587
 
@@ -621,7 +622,7 @@ FLAG DESCRIPTIONS
621
622
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
622
623
  ```
623
624
 
624
- _See code: [lib/commands/gitlab/commit/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/commit/view.js)_
625
+ _See code: [lib/commands/gitlab/commit/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/commit/view.js)_
625
626
 
626
627
  ## `simply gitlab config apply`
627
628
 
@@ -688,7 +689,7 @@ FLAG DESCRIPTIONS
688
689
  the config does not target is an error rather than a silent no-op.
689
690
  ```
690
691
 
691
- _See code: [lib/commands/gitlab/config/apply.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/config/apply.js)_
692
+ _See code: [lib/commands/gitlab/config/apply.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/config/apply.js)_
692
693
 
693
694
  ## `simply gitlab config export`
694
695
 
@@ -739,7 +740,7 @@ FLAG DESCRIPTIONS
739
740
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
740
741
  ```
741
742
 
742
- _See code: [lib/commands/gitlab/config/export.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/config/export.js)_
743
+ _See code: [lib/commands/gitlab/config/export.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/config/export.js)_
743
744
 
744
745
  ## `simply gitlab config plan`
745
746
 
@@ -807,7 +808,7 @@ FLAG DESCRIPTIONS
807
808
  the config does not target is an error rather than a silent no-op.
808
809
  ```
809
810
 
810
- _See code: [lib/commands/gitlab/config/plan.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/config/plan.js)_
811
+ _See code: [lib/commands/gitlab/config/plan.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/config/plan.js)_
811
812
 
812
813
  ## `simply gitlab file create`
813
814
 
@@ -859,7 +860,7 @@ FLAG DESCRIPTIONS
859
860
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
860
861
  ```
861
862
 
862
- _See code: [lib/commands/gitlab/file/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/file/create.js)_
863
+ _See code: [lib/commands/gitlab/file/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/file/create.js)_
863
864
 
864
865
  ## `simply gitlab file update`
865
866
 
@@ -912,7 +913,7 @@ FLAG DESCRIPTIONS
912
913
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
913
914
  ```
914
915
 
915
- _See code: [lib/commands/gitlab/file/update.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/file/update.js)_
916
+ _See code: [lib/commands/gitlab/file/update.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/file/update.js)_
916
917
 
917
918
  ## `simply gitlab file view`
918
919
 
@@ -958,7 +959,7 @@ FLAG DESCRIPTIONS
958
959
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
959
960
  ```
960
961
 
961
- _See code: [lib/commands/gitlab/file/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/file/view.js)_
962
+ _See code: [lib/commands/gitlab/file/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/file/view.js)_
962
963
 
963
964
  ## `simply gitlab mr create`
964
965
 
@@ -1019,7 +1020,7 @@ FLAG DESCRIPTIONS
1019
1020
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1020
1021
  ```
1021
1022
 
1022
- _See code: [lib/commands/gitlab/mr/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/mr/create.js)_
1023
+ _See code: [lib/commands/gitlab/mr/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/mr/create.js)_
1023
1024
 
1024
1025
  ## `simply gitlab mr list`
1025
1026
 
@@ -1073,7 +1074,71 @@ FLAG DESCRIPTIONS
1073
1074
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1074
1075
  ```
1075
1076
 
1076
- _See code: [lib/commands/gitlab/mr/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/mr/list.js)_
1077
+ _See code: [lib/commands/gitlab/mr/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/mr/list.js)_
1078
+
1079
+ ## `simply gitlab mr merge`
1080
+
1081
+ Merge a merge request, or add it to the merge train.
1082
+
1083
+ ```
1084
+ USAGE
1085
+ $ simply gitlab mr merge -p <value> --mr <value> [--json] [-e <value>] [--gitlab-url <value>] [--gitlab-token
1086
+ <value>] [--dry-run] [--sha <value>] [--auto-merge | --skip-merge-train] [--squash] [--remove-source-branch]
1087
+ [--merge-commit-message <value>] [--squash-commit-message <value>] [--confirm]
1088
+
1089
+ FLAGS
1090
+ -p, --project=<value> (required) [env: GITLAB_PROJECT] Project id, or its full path such as
1091
+ group/subgroup/project.
1092
+ --auto-merge Merge when checks pass. On a project with merge trains, this joins the train.
1093
+ --confirm Send the merge. Without it, nothing is sent.
1094
+ --dry-run Print the request that would be sent and exit without sending it.
1095
+ --merge-commit-message=<value> Custom merge commit message.
1096
+ --mr=<value> (required) Merge request iid.
1097
+ --[no-]remove-source-branch Delete the source branch after merging.
1098
+ --sha=<value> Full sha of the source branch head you reviewed. Recommended; required with
1099
+ --skip-merge-train.
1100
+ --skip-merge-train Merge now without restarting the merge train. Experimental in GitLab.
1101
+ --[no-]squash Squash the commits into one.
1102
+ --squash-commit-message=<value> Custom squash commit message.
1103
+
1104
+ CONNECTION FLAGS
1105
+ -e, --env-file=<value> Path to a .env file holding connection settings.
1106
+ --gitlab-token=<value> [env: GITLAB_TOKEN] Personal, project, or group access token.
1107
+ --gitlab-url=<value> [env: GITLAB_URL] Base URL of the GitLab instance. Defaults to https://gitlab.com.
1108
+
1109
+ GLOBAL FLAGS
1110
+ --json Format output as json.
1111
+
1112
+ DESCRIPTION
1113
+ Merge a merge request, or add it to the merge train.
1114
+
1115
+ Merging cannot be undone by any other command, so this one refuses to send anything without --confirm. Without it, it
1116
+ prints the request it would send and exits 1.
1117
+
1118
+ Pass --sha with the head you reviewed (the "Head" line of mr view): GitLab then refuses if anything was pushed since.
1119
+ --auto-merge merges once checks pass, and on a project with merge trains it joins the train. --skip-merge-train uses
1120
+ GitLab's experimental "merge immediately without restarting the merge train", which merges changes the train has not
1121
+ tested against the merge requests queued ahead of it; it requires --sha.
1122
+
1123
+ When GitLab refuses with a bare 405, the merge request is read back and the reason is named.
1124
+
1125
+ EXAMPLES
1126
+ $ simply gitlab mr merge --project group/project --mr 42 --sha <head-sha> --confirm
1127
+
1128
+ $ simply gitlab mr merge --project group/project --mr 42 --auto-merge --confirm
1129
+
1130
+ $ simply gitlab mr merge --project group/project --mr 42 --skip-merge-train --sha <head-sha> --confirm
1131
+
1132
+ $ simply gitlab mr merge --project group/project --mr 42 --squash --dry-run
1133
+
1134
+ FLAG DESCRIPTIONS
1135
+ -e, --env-file=<value> Path to a .env file holding connection settings.
1136
+
1137
+ Loaded before anything else. Variables already present in the environment win, so the file never overrides an
1138
+ explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1139
+ ```
1140
+
1141
+ _See code: [lib/commands/gitlab/mr/merge.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/mr/merge.js)_
1077
1142
 
1078
1143
  ## `simply gitlab mr update`
1079
1144
 
@@ -1137,7 +1202,7 @@ FLAG DESCRIPTIONS
1137
1202
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1138
1203
  ```
1139
1204
 
1140
- _See code: [lib/commands/gitlab/mr/update.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/mr/update.js)_
1205
+ _See code: [lib/commands/gitlab/mr/update.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/mr/update.js)_
1141
1206
 
1142
1207
  ## `simply gitlab mr view`
1143
1208
 
@@ -1178,7 +1243,7 @@ FLAG DESCRIPTIONS
1178
1243
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1179
1244
  ```
1180
1245
 
1181
- _See code: [lib/commands/gitlab/mr/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/mr/view.js)_
1246
+ _See code: [lib/commands/gitlab/mr/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/mr/view.js)_
1182
1247
 
1183
1248
  ## `simply gitlab project create`
1184
1249
 
@@ -1260,7 +1325,7 @@ FLAG DESCRIPTIONS
1260
1325
  Defaults to the namespace of the token owner.
1261
1326
  ```
1262
1327
 
1263
- _See code: [lib/commands/gitlab/project/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/project/create.js)_
1328
+ _See code: [lib/commands/gitlab/project/create.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/project/create.js)_
1264
1329
 
1265
1330
  ## `simply gitlab project list`
1266
1331
 
@@ -1307,7 +1372,7 @@ FLAG DESCRIPTIONS
1307
1372
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1308
1373
  ```
1309
1374
 
1310
- _See code: [lib/commands/gitlab/project/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/project/list.js)_
1375
+ _See code: [lib/commands/gitlab/project/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/project/list.js)_
1311
1376
 
1312
1377
  ## `simply gitlab project view`
1313
1378
 
@@ -1346,7 +1411,7 @@ FLAG DESCRIPTIONS
1346
1411
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1347
1412
  ```
1348
1413
 
1349
- _See code: [lib/commands/gitlab/project/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/project/view.js)_
1414
+ _See code: [lib/commands/gitlab/project/view.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/project/view.js)_
1350
1415
 
1351
1416
  ## `simply gitlab release list`
1352
1417
 
@@ -1387,7 +1452,7 @@ FLAG DESCRIPTIONS
1387
1452
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1388
1453
  ```
1389
1454
 
1390
- _See code: [lib/commands/gitlab/release/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/release/list.js)_
1455
+ _See code: [lib/commands/gitlab/release/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/release/list.js)_
1391
1456
 
1392
1457
  ## `simply gitlab search`
1393
1458
 
@@ -1442,7 +1507,7 @@ FLAG DESCRIPTIONS
1442
1507
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1443
1508
  ```
1444
1509
 
1445
- _See code: [lib/commands/gitlab/search.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/search.js)_
1510
+ _See code: [lib/commands/gitlab/search.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/search.js)_
1446
1511
 
1447
1512
  ## `simply gitlab tag list`
1448
1513
 
@@ -1489,7 +1554,7 @@ FLAG DESCRIPTIONS
1489
1554
  explicit export, and only GitLab connection variables are read from it. A path that cannot be read is an error.
1490
1555
  ```
1491
1556
 
1492
- _See code: [lib/commands/gitlab/tag/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.5.0/packages/simply-gitlab/lib/commands/gitlab/tag/list.js)_
1557
+ _See code: [lib/commands/gitlab/tag/list.js](https://github.com/SimplySF/simply-gitlab/blob/@simplysf/simply-gitlab@0.7.0/packages/simply-gitlab/lib/commands/gitlab/tag/list.js)_
1493
1558
  <!-- commandsstop -->
1494
1559
 
1495
1560
  ## License
@@ -105,8 +105,9 @@ does not need its own retry loop around these commands.
105
105
 
106
106
  ## Never interactive
107
107
 
108
- No command prompts or blocks on stdin, and there is no `--confirm` flag to hang on. Every write
109
- takes `--dry-run` instead. See [Write safety](/guides/write-safety/) for the full set of layers and
108
+ No command prompts or blocks on stdin. Every write takes `--dry-run`, and the one that cannot be
109
+ undone, `mr merge`, also needs `--confirm` as a flag rather than an answer to a prompt: without it,
110
+ the command prints the request and exits 1. See [Write safety](/guides/write-safety/) for the full set of layers and
110
111
  the two-credential-file arrangement that keeps an agent's normal loop read-only.
111
112
 
112
113
  ## Help is discovery
@@ -3,23 +3,25 @@ title: Write safety
3
3
  description: The layers between a Simply GitLab command and a change to your repository, which of them is a real boundary, and why CI variable values are hidden by default.
4
4
  ---
5
5
 
6
- Seven commands change data — `project create`, `branch create`, `file create`, `file update`,
7
- `commit create`, `mr create`, and `mr update`. Nothing in this CLI deletes anything. Those seven sit
8
- behind several layers, and only the last is a real boundary.
6
+ Eight commands change data — `project create`, `branch create`, `file create`, `file update`,
7
+ `commit create`, `mr create`, `mr update`, and `mr merge`. Nothing in this CLI deletes anything.
8
+ Those eight sit behind several layers, and only the last is a real boundary.
9
9
 
10
- ## No `--confirm`, deliberately
10
+ ## `--confirm` only where it cannot be undone
11
11
 
12
- Every write here either creates something or edits a merge request, and both are recoverable: a
12
+ Seven of those writes either create something or edit a merge request, and both are recoverable: a
13
13
  branch can be deleted, a file can be committed over, a closed merge request can be reopened.
14
14
  Requiring a confirmation for actions like those would train you to pass it always, at which point
15
15
  it protects nothing while still implying that it does.
16
16
 
17
- So there is no `--confirm` flag anywhere in this CLI. The first command that irreversibly destroys
18
- something is the one that brings it back.
17
+ `mr merge` is the exception, because no command undoes a merge. Without `--confirm` it prints the
18
+ request it would send and exits 1. Pass `--sha` with the head you reviewed (the `Head` line of
19
+ `mr view`) as well, so that GitLab refuses if anything was pushed since. `--skip-merge-train`,
20
+ which merges without the merge train testing the change, requires it.
19
21
 
20
22
  ## `--dry-run`
21
23
 
22
- Accepted by all seven. It prints the exact request body that would be sent and sends nothing, which
24
+ Accepted by all eight. It prints the exact request body that would be sent and sends nothing, which
23
25
  is the cheapest way to see what is about to happen. The one nuance is `project create`: a namespace
24
26
  or template given as a path is still looked up, so the printed ids are the ones that would be sent.
25
27
 
@@ -0,0 +1,21 @@
1
+ import { GitLabCommand } from '../../../shared/base-command.js';
2
+ export default class GitlabMrMerge extends GitLabCommand<typeof GitlabMrMerge> {
3
+ static isWrite: boolean;
4
+ static readonly summary = "Merge a merge request, or add it to the merge train.";
5
+ static readonly description: string;
6
+ static readonly examples: string[];
7
+ static readonly flags: {
8
+ mr: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
9
+ sha: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ 'auto-merge': import("@oclif/core/interfaces").BooleanFlag<boolean>;
11
+ 'skip-merge-train': import("@oclif/core/interfaces").BooleanFlag<boolean>;
12
+ squash: import("@oclif/core/interfaces").BooleanFlag<boolean>;
13
+ 'remove-source-branch': import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ 'merge-commit-message': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
+ 'squash-commit-message': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
+ confirm: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
+ 'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ project: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
19
+ };
20
+ run(): Promise<unknown>;
21
+ }
@@ -0,0 +1,81 @@
1
+ /*
2
+ * Copyright (c) 2026, SimplySF.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Flags } from '@oclif/core';
17
+ import { assertIid, CliError, describeMergeOutcome, executeMerge, prepareMerge } from '@simplysf/simply-gitlab-core';
18
+ import { GitLabCommand, projectFlag, writeFlags } from '../../../shared/base-command.js';
19
+ export default class GitlabMrMerge extends GitLabCommand {
20
+ static isWrite = true;
21
+ static summary = 'Merge a merge request, or add it to the merge train.';
22
+ static description = 'Merging cannot be undone by any other command, so this one refuses to send anything without ' +
23
+ '--confirm. Without it, it prints the request it would send and exits 1.\n\n' +
24
+ 'Pass --sha with the head you reviewed (the "Head" line of mr view): GitLab then refuses if ' +
25
+ 'anything was pushed since. --auto-merge merges once checks pass, and on a project with merge ' +
26
+ 'trains it joins the train. --skip-merge-train uses GitLab\'s experimental "merge immediately ' +
27
+ 'without restarting the merge train", which merges changes the train has not tested against ' +
28
+ 'the merge requests queued ahead of it; it requires --sha.\n\n' +
29
+ 'When GitLab refuses with a bare 405, the merge request is read back and the reason is named.';
30
+ static examples = [
31
+ '<%= config.bin %> <%= command.id %> --project group/project --mr 42 --sha <head-sha> --confirm',
32
+ '<%= config.bin %> <%= command.id %> --project group/project --mr 42 --auto-merge --confirm',
33
+ '<%= config.bin %> <%= command.id %> --project group/project --mr 42 --skip-merge-train --sha <head-sha> --confirm',
34
+ '<%= config.bin %> <%= command.id %> --project group/project --mr 42 --squash --dry-run',
35
+ ];
36
+ static flags = {
37
+ ...projectFlag,
38
+ ...writeFlags,
39
+ mr: Flags.integer({ summary: 'Merge request iid.', required: true }),
40
+ sha: Flags.string({
41
+ summary: 'Full sha of the source branch head you reviewed. Recommended; required with --skip-merge-train.',
42
+ }),
43
+ 'auto-merge': Flags.boolean({
44
+ summary: 'Merge when checks pass. On a project with merge trains, this joins the train.',
45
+ exclusive: ['skip-merge-train'],
46
+ }),
47
+ 'skip-merge-train': Flags.boolean({
48
+ summary: 'Merge now without restarting the merge train. Experimental in GitLab.',
49
+ exclusive: ['auto-merge'],
50
+ }),
51
+ squash: Flags.boolean({ summary: 'Squash the commits into one.', allowNo: true }),
52
+ 'remove-source-branch': Flags.boolean({ summary: 'Delete the source branch after merging.', allowNo: true }),
53
+ 'merge-commit-message': Flags.string({ summary: 'Custom merge commit message.' }),
54
+ 'squash-commit-message': Flags.string({ summary: 'Custom squash commit message.' }),
55
+ confirm: Flags.boolean({ summary: 'Send the merge. Without it, nothing is sent.', default: false }),
56
+ };
57
+ async run() {
58
+ const iid = assertIid(this.flags.mr);
59
+ const client = this.gitlab();
60
+ const prepared = await prepareMerge(client, this.flags.project, iid, {
61
+ sha: this.flags.sha,
62
+ autoMerge: this.flags['auto-merge'],
63
+ skipMergeTrain: this.flags['skip-merge-train'],
64
+ squash: this.flags.squash,
65
+ removeSourceBranch: this.flags['remove-source-branch'],
66
+ mergeCommitMessage: this.flags['merge-commit-message'],
67
+ squashCommitMessage: this.flags['squash-commit-message'],
68
+ });
69
+ if (this.flags['dry-run'] || !this.flags.confirm) {
70
+ this.log(`${this.flags['dry-run'] ? 'Dry run' : 'Not confirmed'} — not sent. Merge !${iid} with request body:`);
71
+ this.logSafe(JSON.stringify(prepared.body, null, 2));
72
+ if (this.flags['dry-run'])
73
+ return prepared.body;
74
+ throw new CliError('Merging cannot be undone. Pass --confirm to send it, or --dry-run to only preview.');
75
+ }
76
+ const outcome = await executeMerge(client, this.flags.project, prepared);
77
+ this.logSafe(describeMergeOutcome(outcome));
78
+ return outcome.mergeRequest;
79
+ }
80
+ }
81
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../../src/commands/gitlab/mr/merge.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,8 @@ export default class GitlabMrView extends GitLabCommand {
37
37
  ['Title', mr.title],
38
38
  ['State', mr.draft === true ? `${mr.state ?? 'opened'} (draft)` : mr.state],
39
39
  ['Branches', `${mr.source_branch ?? '?'} -> ${mr.target_branch ?? '?'}`],
40
+ // In full, because it is what mr merge --sha takes.
41
+ ['Head', mr.sha],
40
42
  ['Author', mr.author?.username],
41
43
  ['Merge status', mr.detailed_merge_status ?? mr.merge_status],
42
44
  ['Conflicts', mr.has_conflicts === true ? 'yes' : undefined],
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../../src/commands/gitlab/mr/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAmB7E,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAkC;IACnE,MAAM,CAAmB,OAAO,GAAG,yBAAyB,CAAC;IAC7D,MAAM,CAAmB,WAAW,GACzC,6FAA6F;QAC7F,8FAA8F;QAC9F,oCAAoC,CAAC;IAEhC,MAAM,CAAmB,QAAQ,GAAG;QACzC,qEAAqE;QACrE,4EAA4E;KAC7E,CAAC;IAEK,MAAM,CAAmB,KAAK,GAAG;QACtC,GAAG,WAAW;QACd,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KACrE,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAiB,CAAC;QAE1F,IAAI,CAAC,OAAO,CACV,cAAc,CAAC;YACb,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;YACtC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC;YACnB,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;YAC3E,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,aAAa,IAAI,GAAG,OAAO,EAAE,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;YACxE,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC/B,CAAC,cAAc,EAAE,EAAE,CAAC,qBAAqB,IAAI,EAAE,CAAC,YAAY,CAAC;YAC7D,CAAC,WAAW,EAAE,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC;YAC1B,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CACH,CAAC;QACF,IAAI,OAAO,EAAE,CAAC,WAAW,KAAK,QAAQ,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../../src/commands/gitlab/mr/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAoB7E,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAkC;IACnE,MAAM,CAAmB,OAAO,GAAG,yBAAyB,CAAC;IAC7D,MAAM,CAAmB,WAAW,GACzC,6FAA6F;QAC7F,8FAA8F;QAC9F,oCAAoC,CAAC;IAEhC,MAAM,CAAmB,QAAQ,GAAG;QACzC,qEAAqE;QACrE,4EAA4E;KAC7E,CAAC;IAEK,MAAM,CAAmB,KAAK,GAAG;QACtC,GAAG,WAAW;QACd,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KACrE,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAiB,CAAC;QAE1F,IAAI,CAAC,OAAO,CACV,cAAc,CAAC;YACb,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;YACtC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC;YACnB,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;YAC3E,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,aAAa,IAAI,GAAG,OAAO,EAAE,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;YACxE,oDAAoD;YACpD,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC;YAChB,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC/B,CAAC,cAAc,EAAE,EAAE,CAAC,qBAAqB,IAAI,EAAE,CAAC,YAAY,CAAC;YAC7D,CAAC,WAAW,EAAE,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC;YAC1B,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CACH,CAAC;QACF,IAAI,OAAO,EAAE,CAAC,WAAW,KAAK,QAAQ,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC"}
@@ -8,11 +8,11 @@ export declare function parseList(value: string | undefined): string[] | undefin
8
8
  /**
9
9
  * Flags every write command shares, defined once so the wording cannot drift between them.
10
10
  *
11
- * There is no `--confirm` here, because no command in this CLI destroys anything yet — every
12
- * write either creates something or edits a merge request, and both are recoverable. Requiring
13
- * a confirmation for those would train a caller to pass it always, at which point it protects
14
- * nothing while still implying that it does. The first command that deletes a branch, a tag, or
15
- * a file is the one that brings the flag back.
11
+ * There is no `--confirm` here, because nearly every write either creates something or edits a
12
+ * merge request, and both are recoverable. Requiring a confirmation for those would train a
13
+ * caller to pass it always, at which point it protects nothing while still implying that it does.
14
+ * The one write that cannot be undone, `mr merge`, declares `--confirm` itself, and so will the
15
+ * first command that deletes a branch, a tag, or a file.
16
16
  */
17
17
  export declare const writeFlags: {
18
18
  'dry-run': Interfaces.BooleanFlag<boolean>;
@@ -60,11 +60,11 @@ function errorName(error, oclifExit) {
60
60
  /**
61
61
  * Flags every write command shares, defined once so the wording cannot drift between them.
62
62
  *
63
- * There is no `--confirm` here, because no command in this CLI destroys anything yet — every
64
- * write either creates something or edits a merge request, and both are recoverable. Requiring
65
- * a confirmation for those would train a caller to pass it always, at which point it protects
66
- * nothing while still implying that it does. The first command that deletes a branch, a tag, or
67
- * a file is the one that brings the flag back.
63
+ * There is no `--confirm` here, because nearly every write either creates something or edits a
64
+ * merge request, and both are recoverable. Requiring a confirmation for those would train a
65
+ * caller to pass it always, at which point it protects nothing while still implying that it does.
66
+ * The one write that cannot be undone, `mr merge`, declares `--confirm` itself, and so will the
67
+ * first command that deletes a branch, a tag, or a file.
68
68
  */
69
69
  export const writeFlags = {
70
70
  'dry-run': Flags.boolean({