@intentius/terragucci 0.4.7 → 0.4.9

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.
@@ -57,10 +57,11 @@
57
57
  "gate": {
58
58
  "enum": [
59
59
  "always",
60
- "on-destroy",
61
- "never"
60
+ "on-destructive",
61
+ "never",
62
+ "on-destroy"
62
63
  ],
63
- "description": "When a wave waits for an approval."
64
+ "description": "When a wave waits for an approval. on-destroy is an older name for on-destructive."
64
65
  },
65
66
  "approval": {
66
67
  "enum": [
@@ -121,6 +122,10 @@
121
122
  "pattern": "^[^\\s,;=']+$"
122
123
  }
123
124
  }
125
+ },
126
+ "point": {
127
+ "type": "string",
128
+ "pattern": "^[a-z][a-z0-9-]*$"
124
129
  }
125
130
  },
126
131
  "additionalProperties": false,
@@ -726,7 +731,29 @@
726
731
  "minLength": 1
727
732
  },
728
733
  "audience": {
729
- "type": "string"
734
+ "anyOf": [
735
+ {
736
+ "type": "string"
737
+ },
738
+ {
739
+ "type": "object",
740
+ "properties": {
741
+ "plan": {
742
+ "type": "string",
743
+ "minLength": 1
744
+ },
745
+ "apply": {
746
+ "type": "string",
747
+ "minLength": 1
748
+ },
749
+ "drift": {
750
+ "type": "string",
751
+ "minLength": 1
752
+ }
753
+ },
754
+ "additionalProperties": false
755
+ }
756
+ ]
730
757
  },
731
758
  "roles": {
732
759
  "type": "object",
@@ -986,6 +1013,30 @@
986
1013
  "additionalProperties": false,
987
1014
  "description": "Policy checks over each plan."
988
1015
  },
1016
+ "sources": {
1017
+ "type": "object",
1018
+ "properties": {
1019
+ "modules": {
1020
+ "type": "array",
1021
+ "minItems": 1,
1022
+ "items": {
1023
+ "type": "string",
1024
+ "pattern": "^[^\\s,;'\"]+$"
1025
+ }
1026
+ },
1027
+ "providers": {
1028
+ "type": "array",
1029
+ "minItems": 1,
1030
+ "items": {
1031
+ "type": "string",
1032
+ "pattern": "^[^\\s,;'\"]+$"
1033
+ }
1034
+ }
1035
+ },
1036
+ "additionalProperties": false,
1037
+ "minProperties": 1,
1038
+ "description": "Globs of the module sources and provider addresses a root may use, checked before init."
1039
+ },
989
1040
  "atlantis_comments": {
990
1041
  "type": "boolean",
991
1042
  "description": "Read atlantis plan and atlantis apply comments as terragucci's."
@@ -1357,6 +1408,216 @@
1357
1408
  ],
1358
1409
  "description": "Roots each pull request gets a copy of."
1359
1410
  },
1411
+ "environments": {
1412
+ "type": "object",
1413
+ "minProperties": 1,
1414
+ "propertyNames": {
1415
+ "type": "string",
1416
+ "pattern": "^[a-z0-9_-]+$",
1417
+ "not": {
1418
+ "anyOf": [
1419
+ {
1420
+ "enum": [
1421
+ "default",
1422
+ "decide"
1423
+ ]
1424
+ },
1425
+ {
1426
+ "pattern": "^share-[0-9]+$"
1427
+ }
1428
+ ]
1429
+ }
1430
+ },
1431
+ "additionalProperties": {
1432
+ "type": "object",
1433
+ "properties": {
1434
+ "roots": {
1435
+ "type": "array",
1436
+ "minItems": 1,
1437
+ "items": {
1438
+ "type": "string",
1439
+ "pattern": "^[^\\s,;=']+$"
1440
+ }
1441
+ },
1442
+ "gate": {
1443
+ "enum": [
1444
+ "always",
1445
+ "on-destructive",
1446
+ "never",
1447
+ "on-destroy"
1448
+ ]
1449
+ },
1450
+ "oidc": {
1451
+ "type": "object",
1452
+ "properties": {
1453
+ "plan_role": {
1454
+ "type": "string",
1455
+ "minLength": 1
1456
+ },
1457
+ "apply_role": {
1458
+ "type": "string",
1459
+ "minLength": 1
1460
+ },
1461
+ "audience": {
1462
+ "type": "string",
1463
+ "minLength": 1,
1464
+ "pattern": "\\S"
1465
+ },
1466
+ "gcp": {
1467
+ "type": "object",
1468
+ "properties": {
1469
+ "plan_service_account": {
1470
+ "type": "string",
1471
+ "pattern": "^[^@\\s]+@[^@\\s]+$"
1472
+ },
1473
+ "apply_service_account": {
1474
+ "type": "string",
1475
+ "pattern": "^[^@\\s]+@[^@\\s]+$"
1476
+ }
1477
+ },
1478
+ "additionalProperties": false,
1479
+ "required": [
1480
+ "plan_service_account",
1481
+ "apply_service_account"
1482
+ ]
1483
+ },
1484
+ "azure": {
1485
+ "type": "object",
1486
+ "properties": {
1487
+ "plan_client_id": {
1488
+ "type": "string",
1489
+ "minLength": 1
1490
+ },
1491
+ "apply_client_id": {
1492
+ "type": "string",
1493
+ "minLength": 1
1494
+ }
1495
+ },
1496
+ "additionalProperties": false,
1497
+ "required": [
1498
+ "plan_client_id",
1499
+ "apply_client_id"
1500
+ ]
1501
+ }
1502
+ },
1503
+ "additionalProperties": false,
1504
+ "minProperties": 1,
1505
+ "dependentRequired": {
1506
+ "plan_role": [
1507
+ "apply_role"
1508
+ ],
1509
+ "apply_role": [
1510
+ "plan_role"
1511
+ ]
1512
+ }
1513
+ },
1514
+ "runner": {
1515
+ "anyOf": [
1516
+ {
1517
+ "anyOf": [
1518
+ {
1519
+ "type": "string",
1520
+ "pattern": "^[^\\s,]+$"
1521
+ },
1522
+ {
1523
+ "type": "array",
1524
+ "minItems": 1,
1525
+ "uniqueItems": true,
1526
+ "items": {
1527
+ "type": "string",
1528
+ "pattern": "^[^\\s,]+$"
1529
+ }
1530
+ },
1531
+ {
1532
+ "type": "object",
1533
+ "properties": {
1534
+ "group": {
1535
+ "type": "string",
1536
+ "pattern": "\\S"
1537
+ },
1538
+ "labels": {
1539
+ "type": "array",
1540
+ "minItems": 1,
1541
+ "uniqueItems": true,
1542
+ "items": {
1543
+ "type": "string",
1544
+ "pattern": "^[^\\s,]+$"
1545
+ }
1546
+ }
1547
+ },
1548
+ "additionalProperties": false,
1549
+ "required": [
1550
+ "group"
1551
+ ]
1552
+ }
1553
+ ]
1554
+ },
1555
+ {
1556
+ "type": "object",
1557
+ "properties": {
1558
+ "apply": {
1559
+ "anyOf": [
1560
+ {
1561
+ "type": "string",
1562
+ "pattern": "^[^\\s,]+$"
1563
+ },
1564
+ {
1565
+ "type": "array",
1566
+ "minItems": 1,
1567
+ "uniqueItems": true,
1568
+ "items": {
1569
+ "type": "string",
1570
+ "pattern": "^[^\\s,]+$"
1571
+ }
1572
+ },
1573
+ {
1574
+ "type": "object",
1575
+ "properties": {
1576
+ "group": {
1577
+ "type": "string",
1578
+ "pattern": "\\S"
1579
+ },
1580
+ "labels": {
1581
+ "type": "array",
1582
+ "minItems": 1,
1583
+ "uniqueItems": true,
1584
+ "items": {
1585
+ "type": "string",
1586
+ "pattern": "^[^\\s,]+$"
1587
+ }
1588
+ }
1589
+ },
1590
+ "additionalProperties": false,
1591
+ "required": [
1592
+ "group"
1593
+ ]
1594
+ }
1595
+ ]
1596
+ }
1597
+ },
1598
+ "additionalProperties": false,
1599
+ "required": [
1600
+ "apply"
1601
+ ]
1602
+ }
1603
+ ]
1604
+ },
1605
+ "parallelism": {
1606
+ "type": "integer",
1607
+ "minimum": 1
1608
+ },
1609
+ "forge_environment": {
1610
+ "type": "string",
1611
+ "pattern": "^[A-Za-z0-9_][A-Za-z0-9_./-]*$"
1612
+ }
1613
+ },
1614
+ "additionalProperties": false,
1615
+ "required": [
1616
+ "roots"
1617
+ ]
1618
+ },
1619
+ "description": "Named environments: each one's root globs, and its gate, identities, apply runner, parallelism and forge environment."
1620
+ },
1360
1621
  "defaults": {
1361
1622
  "$ref": "#/$defs/project",
1362
1623
  "not": {
@@ -1445,10 +1706,11 @@
1445
1706
  "gate": {
1446
1707
  "enum": [
1447
1708
  "always",
1448
- "on-destroy",
1449
- "never"
1709
+ "on-destructive",
1710
+ "never",
1711
+ "on-destroy"
1450
1712
  ],
1451
- "description": "When a wave waits for an approval."
1713
+ "description": "When a wave waits for an approval. on-destroy is an older name for on-destructive."
1452
1714
  },
1453
1715
  "approval": {
1454
1716
  "enum": [
@@ -1509,6 +1771,10 @@
1509
1771
  "pattern": "^[^\\s,;=']+$"
1510
1772
  }
1511
1773
  }
1774
+ },
1775
+ "point": {
1776
+ "type": "string",
1777
+ "pattern": "^[a-z][a-z0-9-]*$"
1512
1778
  }
1513
1779
  },
1514
1780
  "additionalProperties": false,
@@ -2106,7 +2372,29 @@
2106
2372
  "minLength": 1
2107
2373
  },
2108
2374
  "audience": {
2109
- "type": "string"
2375
+ "anyOf": [
2376
+ {
2377
+ "type": "string"
2378
+ },
2379
+ {
2380
+ "type": "object",
2381
+ "properties": {
2382
+ "plan": {
2383
+ "type": "string",
2384
+ "minLength": 1
2385
+ },
2386
+ "apply": {
2387
+ "type": "string",
2388
+ "minLength": 1
2389
+ },
2390
+ "drift": {
2391
+ "type": "string",
2392
+ "minLength": 1
2393
+ }
2394
+ },
2395
+ "additionalProperties": false
2396
+ }
2397
+ ]
2110
2398
  },
2111
2399
  "roles": {
2112
2400
  "type": "object",
@@ -2366,6 +2654,30 @@
2366
2654
  "additionalProperties": false,
2367
2655
  "description": "Policy checks over each plan."
2368
2656
  },
2657
+ "sources": {
2658
+ "type": "object",
2659
+ "properties": {
2660
+ "modules": {
2661
+ "type": "array",
2662
+ "minItems": 1,
2663
+ "items": {
2664
+ "type": "string",
2665
+ "pattern": "^[^\\s,;'\"]+$"
2666
+ }
2667
+ },
2668
+ "providers": {
2669
+ "type": "array",
2670
+ "minItems": 1,
2671
+ "items": {
2672
+ "type": "string",
2673
+ "pattern": "^[^\\s,;'\"]+$"
2674
+ }
2675
+ }
2676
+ },
2677
+ "additionalProperties": false,
2678
+ "minProperties": 1,
2679
+ "description": "Globs of the module sources and provider addresses a root may use, checked before init."
2680
+ },
2369
2681
  "atlantis_comments": {
2370
2682
  "type": "boolean",
2371
2683
  "description": "Read atlantis plan and atlantis apply comments as terragucci's."
@@ -2736,6 +3048,213 @@
2736
3048
  "roots"
2737
3049
  ],
2738
3050
  "description": "Roots each pull request gets a copy of."
3051
+ },
3052
+ "environments": {
3053
+ "type": "object",
3054
+ "minProperties": 1,
3055
+ "propertyNames": {
3056
+ "type": "string",
3057
+ "pattern": "^[a-z0-9_-]+$",
3058
+ "not": {
3059
+ "anyOf": [
3060
+ {
3061
+ "enum": [
3062
+ "default",
3063
+ "decide"
3064
+ ]
3065
+ },
3066
+ {
3067
+ "pattern": "^share-[0-9]+$"
3068
+ }
3069
+ ]
3070
+ }
3071
+ },
3072
+ "additionalProperties": {
3073
+ "type": "object",
3074
+ "properties": {
3075
+ "roots": {
3076
+ "type": "array",
3077
+ "minItems": 1,
3078
+ "items": {
3079
+ "type": "string",
3080
+ "pattern": "^[^\\s,;=']+$"
3081
+ }
3082
+ },
3083
+ "gate": {
3084
+ "enum": [
3085
+ "always",
3086
+ "on-destructive",
3087
+ "never",
3088
+ "on-destroy"
3089
+ ]
3090
+ },
3091
+ "oidc": {
3092
+ "type": "object",
3093
+ "properties": {
3094
+ "plan_role": {
3095
+ "type": "string",
3096
+ "minLength": 1
3097
+ },
3098
+ "apply_role": {
3099
+ "type": "string",
3100
+ "minLength": 1
3101
+ },
3102
+ "audience": {
3103
+ "type": "string",
3104
+ "minLength": 1,
3105
+ "pattern": "\\S"
3106
+ },
3107
+ "gcp": {
3108
+ "type": "object",
3109
+ "properties": {
3110
+ "plan_service_account": {
3111
+ "type": "string",
3112
+ "pattern": "^[^@\\s]+@[^@\\s]+$"
3113
+ },
3114
+ "apply_service_account": {
3115
+ "type": "string",
3116
+ "pattern": "^[^@\\s]+@[^@\\s]+$"
3117
+ }
3118
+ },
3119
+ "additionalProperties": false,
3120
+ "required": [
3121
+ "plan_service_account",
3122
+ "apply_service_account"
3123
+ ]
3124
+ },
3125
+ "azure": {
3126
+ "type": "object",
3127
+ "properties": {
3128
+ "plan_client_id": {
3129
+ "type": "string",
3130
+ "minLength": 1
3131
+ },
3132
+ "apply_client_id": {
3133
+ "type": "string",
3134
+ "minLength": 1
3135
+ }
3136
+ },
3137
+ "additionalProperties": false,
3138
+ "required": [
3139
+ "plan_client_id",
3140
+ "apply_client_id"
3141
+ ]
3142
+ }
3143
+ },
3144
+ "additionalProperties": false,
3145
+ "minProperties": 1,
3146
+ "dependentRequired": {
3147
+ "plan_role": [
3148
+ "apply_role"
3149
+ ],
3150
+ "apply_role": [
3151
+ "plan_role"
3152
+ ]
3153
+ }
3154
+ },
3155
+ "runner": {
3156
+ "anyOf": [
3157
+ {
3158
+ "anyOf": [
3159
+ {
3160
+ "type": "string",
3161
+ "pattern": "^[^\\s,]+$"
3162
+ },
3163
+ {
3164
+ "type": "array",
3165
+ "minItems": 1,
3166
+ "uniqueItems": true,
3167
+ "items": {
3168
+ "type": "string",
3169
+ "pattern": "^[^\\s,]+$"
3170
+ }
3171
+ },
3172
+ {
3173
+ "type": "object",
3174
+ "properties": {
3175
+ "group": {
3176
+ "type": "string",
3177
+ "pattern": "\\S"
3178
+ },
3179
+ "labels": {
3180
+ "type": "array",
3181
+ "minItems": 1,
3182
+ "uniqueItems": true,
3183
+ "items": {
3184
+ "type": "string",
3185
+ "pattern": "^[^\\s,]+$"
3186
+ }
3187
+ }
3188
+ },
3189
+ "additionalProperties": false,
3190
+ "required": [
3191
+ "group"
3192
+ ]
3193
+ }
3194
+ ]
3195
+ },
3196
+ {
3197
+ "type": "object",
3198
+ "properties": {
3199
+ "apply": {
3200
+ "anyOf": [
3201
+ {
3202
+ "type": "string",
3203
+ "pattern": "^[^\\s,]+$"
3204
+ },
3205
+ {
3206
+ "type": "array",
3207
+ "minItems": 1,
3208
+ "uniqueItems": true,
3209
+ "items": {
3210
+ "type": "string",
3211
+ "pattern": "^[^\\s,]+$"
3212
+ }
3213
+ },
3214
+ {
3215
+ "type": "object",
3216
+ "properties": {
3217
+ "group": {
3218
+ "type": "string",
3219
+ "pattern": "\\S"
3220
+ },
3221
+ "labels": {
3222
+ "type": "array",
3223
+ "minItems": 1,
3224
+ "uniqueItems": true,
3225
+ "items": {
3226
+ "type": "string",
3227
+ "pattern": "^[^\\s,]+$"
3228
+ }
3229
+ }
3230
+ },
3231
+ "additionalProperties": false,
3232
+ "required": [
3233
+ "group"
3234
+ ]
3235
+ }
3236
+ ]
3237
+ }
3238
+ },
3239
+ "additionalProperties": false,
3240
+ "required": [
3241
+ "apply"
3242
+ ]
3243
+ }
3244
+ ]
3245
+ },
3246
+ "parallelism": {
3247
+ "type": "integer",
3248
+ "minimum": 1
3249
+ },
3250
+ "forge_environment": {
3251
+ "type": "string",
3252
+ "pattern": "^[A-Za-z0-9_][A-Za-z0-9_./-]*$"
3253
+ }
3254
+ },
3255
+ "additionalProperties": false
3256
+ },
3257
+ "description": "Named environments: each one's root globs, and its gate, identities, apply runner, parallelism and forge environment."
2739
3258
  }
2740
3259
  },
2741
3260
  "additionalProperties": false