cloud-mu 1.9.0.pre.beta → 2.0.0.pre.alpha

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 (114) hide show
  1. checksums.yaml +4 -4
  2. data/Berksfile +16 -54
  3. data/Berksfile.lock +14 -62
  4. data/bin/mu-aws-setup +131 -108
  5. data/bin/mu-configure +311 -74
  6. data/bin/mu-gcp-setup +84 -62
  7. data/bin/mu-load-config.rb +46 -2
  8. data/bin/mu-self-update +11 -9
  9. data/bin/mu-upload-chef-artifacts +4 -4
  10. data/{mu.gemspec → cloud-mu.gemspec} +2 -2
  11. data/cookbooks/awscli/Berksfile +8 -0
  12. data/cookbooks/mu-activedirectory/Berksfile +11 -0
  13. data/cookbooks/mu-firewall/Berksfile +9 -0
  14. data/cookbooks/mu-firewall/metadata.rb +1 -1
  15. data/cookbooks/mu-glusterfs/Berksfile +10 -0
  16. data/cookbooks/mu-jenkins/Berksfile +14 -0
  17. data/cookbooks/mu-master/Berksfile +23 -0
  18. data/cookbooks/mu-master/attributes/default.rb +1 -1
  19. data/cookbooks/mu-master/metadata.rb +2 -2
  20. data/cookbooks/mu-master/recipes/default.rb +1 -1
  21. data/cookbooks/mu-master/recipes/init.rb +7 -3
  22. data/cookbooks/mu-master/recipes/ssl-certs.rb +1 -0
  23. data/cookbooks/mu-mongo/Berksfile +10 -0
  24. data/cookbooks/mu-openvpn/Berksfile +11 -0
  25. data/cookbooks/mu-php54/Berksfile +13 -0
  26. data/cookbooks/mu-splunk/Berksfile +10 -0
  27. data/cookbooks/mu-tools/Berksfile +21 -0
  28. data/cookbooks/mu-tools/files/default/Mu_CA.pem +15 -15
  29. data/cookbooks/mu-utility/Berksfile +9 -0
  30. data/cookbooks/mu-utility/metadata.rb +2 -1
  31. data/cookbooks/nagios/Berksfile +7 -4
  32. data/cookbooks/s3fs/Berksfile +9 -0
  33. data/environments/dev.json +6 -6
  34. data/environments/prod.json +6 -6
  35. data/modules/mu.rb +20 -42
  36. data/modules/mu/cleanup.rb +102 -100
  37. data/modules/mu/cloud.rb +90 -28
  38. data/modules/mu/clouds/aws.rb +449 -218
  39. data/modules/mu/clouds/aws/alarm.rb +29 -17
  40. data/modules/mu/clouds/aws/cache_cluster.rb +78 -64
  41. data/modules/mu/clouds/aws/collection.rb +25 -18
  42. data/modules/mu/clouds/aws/container_cluster.rb +73 -66
  43. data/modules/mu/clouds/aws/database.rb +124 -116
  44. data/modules/mu/clouds/aws/dnszone.rb +27 -20
  45. data/modules/mu/clouds/aws/firewall_rule.rb +30 -22
  46. data/modules/mu/clouds/aws/folder.rb +18 -3
  47. data/modules/mu/clouds/aws/function.rb +77 -23
  48. data/modules/mu/clouds/aws/group.rb +19 -12
  49. data/modules/mu/clouds/aws/habitat.rb +153 -0
  50. data/modules/mu/clouds/aws/loadbalancer.rb +59 -52
  51. data/modules/mu/clouds/aws/log.rb +30 -23
  52. data/modules/mu/clouds/aws/msg_queue.rb +29 -20
  53. data/modules/mu/clouds/aws/notifier.rb +222 -0
  54. data/modules/mu/clouds/aws/role.rb +178 -90
  55. data/modules/mu/clouds/aws/search_domain.rb +40 -24
  56. data/modules/mu/clouds/aws/server.rb +169 -137
  57. data/modules/mu/clouds/aws/server_pool.rb +60 -83
  58. data/modules/mu/clouds/aws/storage_pool.rb +59 -31
  59. data/modules/mu/clouds/aws/user.rb +36 -27
  60. data/modules/mu/clouds/aws/userdata/linux.erb +101 -93
  61. data/modules/mu/clouds/aws/vpc.rb +250 -189
  62. data/modules/mu/clouds/azure.rb +132 -0
  63. data/modules/mu/clouds/cloudformation.rb +65 -1
  64. data/modules/mu/clouds/cloudformation/alarm.rb +8 -0
  65. data/modules/mu/clouds/cloudformation/cache_cluster.rb +7 -0
  66. data/modules/mu/clouds/cloudformation/collection.rb +7 -0
  67. data/modules/mu/clouds/cloudformation/database.rb +7 -0
  68. data/modules/mu/clouds/cloudformation/dnszone.rb +7 -0
  69. data/modules/mu/clouds/cloudformation/firewall_rule.rb +9 -2
  70. data/modules/mu/clouds/cloudformation/loadbalancer.rb +7 -0
  71. data/modules/mu/clouds/cloudformation/log.rb +7 -0
  72. data/modules/mu/clouds/cloudformation/server.rb +7 -0
  73. data/modules/mu/clouds/cloudformation/server_pool.rb +7 -0
  74. data/modules/mu/clouds/cloudformation/vpc.rb +7 -0
  75. data/modules/mu/clouds/google.rb +214 -110
  76. data/modules/mu/clouds/google/container_cluster.rb +42 -24
  77. data/modules/mu/clouds/google/database.rb +15 -6
  78. data/modules/mu/clouds/google/firewall_rule.rb +17 -25
  79. data/modules/mu/clouds/google/group.rb +13 -5
  80. data/modules/mu/clouds/google/habitat.rb +105 -0
  81. data/modules/mu/clouds/google/loadbalancer.rb +28 -20
  82. data/modules/mu/clouds/google/server.rb +93 -354
  83. data/modules/mu/clouds/google/server_pool.rb +18 -10
  84. data/modules/mu/clouds/google/user.rb +22 -14
  85. data/modules/mu/clouds/google/vpc.rb +97 -69
  86. data/modules/mu/config.rb +133 -38
  87. data/modules/mu/config/alarm.rb +25 -0
  88. data/modules/mu/config/cache_cluster.rb +5 -3
  89. data/modules/mu/config/cache_cluster.yml +23 -0
  90. data/modules/mu/config/database.rb +25 -16
  91. data/modules/mu/config/database.yml +3 -3
  92. data/modules/mu/config/function.rb +1 -2
  93. data/modules/mu/config/{project.rb → habitat.rb} +10 -10
  94. data/modules/mu/config/notifier.rb +85 -0
  95. data/modules/mu/config/notifier.yml +9 -0
  96. data/modules/mu/config/role.rb +1 -1
  97. data/modules/mu/config/search_domain.yml +2 -2
  98. data/modules/mu/config/server.rb +13 -1
  99. data/modules/mu/config/server.yml +3 -3
  100. data/modules/mu/config/server_pool.rb +3 -1
  101. data/modules/mu/config/storage_pool.rb +3 -1
  102. data/modules/mu/config/storage_pool.yml +19 -0
  103. data/modules/mu/config/vpc.rb +70 -8
  104. data/modules/mu/groomers/chef.rb +2 -3
  105. data/modules/mu/kittens.rb +500 -122
  106. data/modules/mu/master.rb +5 -5
  107. data/modules/mu/mommacat.rb +151 -91
  108. data/modules/tests/super_complex_bok.yml +12 -0
  109. data/modules/tests/super_simple_bok.yml +12 -0
  110. data/spec/mu/clouds/azure_spec.rb +82 -0
  111. data/spec/spec_helper.rb +105 -0
  112. metadata +26 -5
  113. data/modules/mu/clouds/aws/notification.rb +0 -139
  114. data/modules/mu/config/notification.rb +0 -44
@@ -137,7 +137,7 @@ class Config
137
137
  attr_accessor :name
138
138
 
139
139
  # **REQUIRED**,
140
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
140
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
141
141
  #
142
142
  # @return [String]
143
143
  attr_accessor :type
@@ -238,6 +238,11 @@ class Config
238
238
  # @return [String]
239
239
  attr_accessor :creation_style
240
240
 
241
+ # Internal use.
242
+ #
243
+ # @return [String]
244
+ attr_accessor :virtual_name
245
+
241
246
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
242
247
  #
243
248
  # @return [Array<BasketofKittens::collections::dependencies>]
@@ -245,10 +250,15 @@ class Config
245
250
  attr_accessor :dependencies
246
251
 
247
252
  # **Default: `AWS`**,
248
- # **Must be one of: `AWS, CloudFormation, Google`**
253
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
249
254
  #
250
255
  # @return [String]
251
256
  attr_accessor :cloud
257
+
258
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
259
+ #
260
+ # @return [String]
261
+ attr_accessor :credentials
252
262
  # @!endgroup
253
263
  end
254
264
  end
@@ -448,13 +458,13 @@ class Config
448
458
  # @return [String]
449
459
  attr_accessor :db_name
450
460
 
451
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
461
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
452
462
  #
453
463
  # @return [String]
454
464
  attr_accessor :region
455
465
 
456
466
  # **Default: `AWS`**,
457
- # **Must be one of: `AWS, CloudFormation, Google`**
467
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
458
468
  #
459
469
  # @return [String]
460
470
  attr_accessor :cloud
@@ -743,7 +753,7 @@ class Config
743
753
  # @return [Integer]
744
754
  attr_accessor :weight
745
755
 
746
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
756
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
747
757
  #
748
758
  # @return [String]
749
759
  attr_accessor :region
@@ -823,18 +833,23 @@ class Config
823
833
  # @return [String]
824
834
  attr_accessor :vpc_id
825
835
 
836
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
837
+ #
838
+ # @return [String]
839
+ attr_accessor :credentials
840
+
826
841
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
827
842
  #
828
843
  # @return [String]
829
844
  attr_accessor :vpc_name
830
845
 
831
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
846
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
832
847
  #
833
848
  # @return [String]
834
849
  attr_accessor :region
835
850
 
836
851
  # **Default: `AWS`**,
837
- # **Must be one of: `AWS, CloudFormation, Google`**
852
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
838
853
  #
839
854
  # @return [String]
840
855
  attr_accessor :cloud
@@ -938,7 +953,7 @@ class Config
938
953
  attr_accessor :name
939
954
 
940
955
  # **REQUIRED**,
941
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
956
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
942
957
  #
943
958
  # @return [String]
944
959
  attr_accessor :type
@@ -1050,7 +1065,7 @@ class Config
1050
1065
  attr_accessor :storage
1051
1066
 
1052
1067
  # **Default: `AWS`**,
1053
- # **Must be one of: `AWS, CloudFormation, Google`**
1068
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
1054
1069
  #
1055
1070
  # @return [String]
1056
1071
  attr_accessor :cloud
@@ -1069,7 +1084,7 @@ class Config
1069
1084
  # @return [Boolean]
1070
1085
  attr_accessor :scrub_mu_isms
1071
1086
 
1072
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1087
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1073
1088
  #
1074
1089
  # @return [String]
1075
1090
  attr_accessor :region
@@ -1259,7 +1274,7 @@ class Config
1259
1274
  # @return [Integer]
1260
1275
  attr_accessor :cluster_node_count
1261
1276
 
1262
- # Rather to create a database cluster. This only applies to aurora
1277
+ # Create a database cluster instead of a standalone database.
1263
1278
  #
1264
1279
  # @return [Boolean]
1265
1280
  attr_accessor :create_cluster
@@ -1276,12 +1291,22 @@ class Config
1276
1291
  # @see BasketofKittens::databases::auth_vault
1277
1292
  attr_accessor :auth_vault
1278
1293
 
1294
+ # Internal use.
1295
+ #
1296
+ # @return [String]
1297
+ attr_accessor :virtual_name
1298
+
1279
1299
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
1280
1300
  #
1281
1301
  # @return [Array<BasketofKittens::databases::dependencies>]
1282
1302
  # @see BasketofKittens::databases::dependencies
1283
1303
  attr_accessor :dependencies
1284
1304
 
1305
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
1306
+ #
1307
+ # @return [String]
1308
+ attr_accessor :credentials
1309
+
1285
1310
  # **AWS & CLOUDFORMATION ONLY**
1286
1311
  # The database parameter group parameter to change and when to apply the change.
1287
1312
  #
@@ -1498,7 +1523,7 @@ class Config
1498
1523
  # @return [Integer]
1499
1524
  attr_accessor :weight
1500
1525
 
1501
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1526
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1502
1527
  #
1503
1528
  # @return [String]
1504
1529
  attr_accessor :region
@@ -1553,18 +1578,23 @@ class Config
1553
1578
  # @return [String]
1554
1579
  attr_accessor :vpc_id
1555
1580
 
1581
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
1582
+ #
1583
+ # @return [String]
1584
+ attr_accessor :credentials
1585
+
1556
1586
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
1557
1587
  #
1558
1588
  # @return [String]
1559
1589
  attr_accessor :vpc_name
1560
1590
 
1561
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1591
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1562
1592
  #
1563
1593
  # @return [String]
1564
1594
  attr_accessor :region
1565
1595
 
1566
1596
  # **Default: `AWS`**,
1567
- # **Must be one of: `AWS, CloudFormation, Google`**
1597
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
1568
1598
  #
1569
1599
  # @return [String]
1570
1600
  attr_accessor :cloud
@@ -1595,7 +1625,7 @@ class Config
1595
1625
  attr_accessor :name
1596
1626
 
1597
1627
  # **REQUIRED**,
1598
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
1628
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
1599
1629
  #
1600
1630
  # @return [String]
1601
1631
  attr_accessor :type
@@ -1630,7 +1660,7 @@ class Config
1630
1660
  attr_accessor :name
1631
1661
 
1632
1662
  # **Default: `AWS`**,
1633
- # **Must be one of: `AWS, CloudFormation, Google`**
1663
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
1634
1664
  #
1635
1665
  # @return [String]
1636
1666
  attr_accessor :cloud
@@ -1667,11 +1697,21 @@ class Config
1667
1697
  # @see BasketofKittens::dnszones::vpcs
1668
1698
  attr_accessor :vpcs
1669
1699
 
1700
+ # Internal use.
1701
+ #
1702
+ # @return [String]
1703
+ attr_accessor :virtual_name
1704
+
1670
1705
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
1671
1706
  #
1672
1707
  # @return [Array<BasketofKittens::dnszones::dependencies>]
1673
1708
  # @see BasketofKittens::dnszones::dependencies
1674
1709
  attr_accessor :dependencies
1710
+
1711
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
1712
+ #
1713
+ # @return [String]
1714
+ attr_accessor :credentials
1675
1715
  # @!endgroup
1676
1716
  end
1677
1717
  end
@@ -1686,18 +1726,23 @@ class Config
1686
1726
  # @return [String]
1687
1727
  attr_accessor :vpc_id
1688
1728
 
1729
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
1730
+ #
1731
+ # @return [String]
1732
+ attr_accessor :credentials
1733
+
1689
1734
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
1690
1735
  #
1691
1736
  # @return [String]
1692
1737
  attr_accessor :vpc_name
1693
1738
 
1694
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1739
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
1695
1740
  #
1696
1741
  # @return [String]
1697
1742
  attr_accessor :region
1698
1743
 
1699
1744
  # **Default: `AWS`**,
1700
- # **Must be one of: `AWS, CloudFormation, Google`**
1745
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
1701
1746
  #
1702
1747
  # @return [String]
1703
1748
  attr_accessor :cloud
@@ -1812,7 +1857,7 @@ class Config
1812
1857
  attr_accessor :name
1813
1858
 
1814
1859
  # **REQUIRED**,
1815
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
1860
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
1816
1861
  #
1817
1862
  # @return [String]
1818
1863
  attr_accessor :type
@@ -1891,6 +1936,11 @@ class Config
1891
1936
  # @see BasketofKittens::firewall_rules::rules
1892
1937
  attr_accessor :rules
1893
1938
 
1939
+ # Internal use.
1940
+ #
1941
+ # @return [String]
1942
+ attr_accessor :virtual_name
1943
+
1894
1944
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
1895
1945
  #
1896
1946
  # @return [Array<BasketofKittens::firewall_rules::dependencies>]
@@ -1898,11 +1948,16 @@ class Config
1898
1948
  attr_accessor :dependencies
1899
1949
 
1900
1950
  # **Default: `AWS`**,
1901
- # **Must be one of: `AWS, CloudFormation, Google`**
1951
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
1902
1952
  #
1903
1953
  # @return [String]
1904
1954
  attr_accessor :cloud
1905
1955
 
1956
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
1957
+ #
1958
+ # @return [String]
1959
+ attr_accessor :credentials
1960
+
1906
1961
  # **GOOGLE ONLY** -
1907
1962
  # +GOOGLE+: The project into which to deploy resources
1908
1963
  #
@@ -2371,7 +2426,7 @@ class Config
2371
2426
  # @return [Integer]
2372
2427
  attr_accessor :weight
2373
2428
 
2374
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
2429
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
2375
2430
  #
2376
2431
  # @return [String]
2377
2432
  attr_accessor :region
@@ -2712,18 +2767,23 @@ class Config
2712
2767
  # @return [String]
2713
2768
  attr_accessor :vpc_id
2714
2769
 
2770
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
2771
+ #
2772
+ # @return [String]
2773
+ attr_accessor :credentials
2774
+
2715
2775
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
2716
2776
  #
2717
2777
  # @return [String]
2718
2778
  attr_accessor :vpc_name
2719
2779
 
2720
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
2780
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
2721
2781
  #
2722
2782
  # @return [String]
2723
2783
  attr_accessor :region
2724
2784
 
2725
2785
  # **Default: `AWS`**,
2726
- # **Must be one of: `AWS, CloudFormation, Google`**
2786
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
2727
2787
  #
2728
2788
  # @return [String]
2729
2789
  attr_accessor :cloud
@@ -2948,7 +3008,7 @@ class Config
2948
3008
  attr_accessor :name
2949
3009
 
2950
3010
  # **REQUIRED**,
2951
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
3011
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
2952
3012
  #
2953
3013
  # @return [String]
2954
3014
  attr_accessor :type
@@ -3010,7 +3070,7 @@ class Config
3010
3070
  attr_accessor :listeners
3011
3071
 
3012
3072
  # **Default: `AWS`**,
3013
- # **Must be one of: `AWS, CloudFormation, Google`**
3073
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
3014
3074
  #
3015
3075
  # @return [String]
3016
3076
  attr_accessor :cloud
@@ -3076,7 +3136,7 @@ class Config
3076
3136
  # @see BasketofKittens::loadbalancers::ingress_rules
3077
3137
  attr_accessor :ingress_rules
3078
3138
 
3079
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
3139
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
3080
3140
  #
3081
3141
  # @return [String]
3082
3142
  attr_accessor :region
@@ -3157,12 +3217,22 @@ class Config
3157
3217
  # @see BasketofKittens::loadbalancers::targetgroups
3158
3218
  attr_accessor :targetgroups
3159
3219
 
3220
+ # Internal use.
3221
+ #
3222
+ # @return [String]
3223
+ attr_accessor :virtual_name
3224
+
3160
3225
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
3161
3226
  #
3162
3227
  # @return [Array<BasketofKittens::loadbalancers::dependencies>]
3163
3228
  # @see BasketofKittens::loadbalancers::dependencies
3164
3229
  attr_accessor :dependencies
3165
3230
 
3231
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
3232
+ #
3233
+ # @return [String]
3234
+ attr_accessor :credentials
3235
+
3166
3236
  # **GOOGLE ONLY**
3167
3237
  # A named network port for a Google instance group, used for health checks and forwarding targets.
3168
3238
  #
@@ -3386,7 +3456,7 @@ class Config
3386
3456
  # @return [Integer]
3387
3457
  attr_accessor :weight
3388
3458
 
3389
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
3459
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
3390
3460
  #
3391
3461
  # @return [String]
3392
3462
  attr_accessor :region
@@ -3500,18 +3570,23 @@ class Config
3500
3570
  # @return [String]
3501
3571
  attr_accessor :vpc_id
3502
3572
 
3573
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
3574
+ #
3575
+ # @return [String]
3576
+ attr_accessor :credentials
3577
+
3503
3578
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
3504
3579
  #
3505
3580
  # @return [String]
3506
3581
  attr_accessor :vpc_name
3507
3582
 
3508
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
3583
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
3509
3584
  #
3510
3585
  # @return [String]
3511
3586
  attr_accessor :region
3512
3587
 
3513
3588
  # **Default: `AWS`**,
3514
- # **Must be one of: `AWS, CloudFormation, Google`**
3589
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
3515
3590
  #
3516
3591
  # @return [String]
3517
3592
  attr_accessor :cloud
@@ -4196,7 +4271,7 @@ class Config
4196
4271
  attr_accessor :name
4197
4272
 
4198
4273
  # **REQUIRED**,
4199
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
4274
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
4200
4275
  #
4201
4276
  # @return [String]
4202
4277
  attr_accessor :type
@@ -4289,7 +4364,7 @@ class Config
4289
4364
  attr_accessor :name
4290
4365
 
4291
4366
  # **Default: `AWS`**,
4292
- # **Must be one of: `AWS, CloudFormation, Google`**
4367
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
4293
4368
  #
4294
4369
  # @return [String]
4295
4370
  attr_accessor :cloud
@@ -4338,7 +4413,7 @@ class Config
4338
4413
  # @return [Boolean]
4339
4414
  attr_accessor :scrub_mu_isms
4340
4415
 
4341
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
4416
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
4342
4417
  #
4343
4418
  # @return [String]
4344
4419
  attr_accessor :region
@@ -4355,6 +4430,18 @@ class Config
4355
4430
  # @return [String]
4356
4431
  attr_accessor :groomer
4357
4432
 
4433
+ # **Default: `true`** -
4434
+ # Whether to run a host configuration agent, e.g. Chef, when bootstrapping
4435
+ #
4436
+ # @return [Boolean]
4437
+ attr_accessor :groom
4438
+
4439
+ # **Default: `1800`** -
4440
+ # Maximum execution time for a groomer run
4441
+ #
4442
+ # @return [Integer]
4443
+ attr_accessor :groomer_timeout
4444
+
4358
4445
  # **Default: `false`** -
4359
4446
  # Remove pre-existing groomer agents from node before bootstrapping. Especially useful for image builds.
4360
4447
  #
@@ -4508,12 +4595,22 @@ class Config
4508
4595
  # @see BasketofKittens::servers::existing_deploys
4509
4596
  attr_accessor :existing_deploys
4510
4597
 
4598
+ # Internal use.
4599
+ #
4600
+ # @return [String]
4601
+ attr_accessor :virtual_name
4602
+
4511
4603
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
4512
4604
  #
4513
4605
  # @return [Array<BasketofKittens::servers::dependencies>]
4514
4606
  # @see BasketofKittens::servers::dependencies
4515
4607
  attr_accessor :dependencies
4516
4608
 
4609
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
4610
+ #
4611
+ # @return [String]
4612
+ attr_accessor :credentials
4613
+
4517
4614
  # **AWS & CLOUDFORMATION ONLY** -
4518
4615
  # +AWS+: The Amazon EC2 AMI on which to base this instance. Will use the default appropriate for the platform, if not specified.
4519
4616
  #+CLOUDFORMATION+: The Amazon EC2 AMI on which to base this instance. Will use the default appropriate for the platform, if not specified.
@@ -4969,7 +5066,7 @@ class Config
4969
5066
  # @return [Integer]
4970
5067
  attr_accessor :weight
4971
5068
 
4972
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
5069
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
4973
5070
  #
4974
5071
  # @return [String]
4975
5072
  attr_accessor :region
@@ -5049,18 +5146,23 @@ class Config
5049
5146
  # @return [String]
5050
5147
  attr_accessor :vpc_id
5051
5148
 
5149
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
5150
+ #
5151
+ # @return [String]
5152
+ attr_accessor :credentials
5153
+
5052
5154
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
5053
5155
  #
5054
5156
  # @return [String]
5055
5157
  attr_accessor :vpc_name
5056
5158
 
5057
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
5159
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
5058
5160
  #
5059
5161
  # @return [String]
5060
5162
  attr_accessor :region
5061
5163
 
5062
5164
  # **Default: `AWS`**,
5063
- # **Must be one of: `AWS, CloudFormation, Google`**
5165
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
5064
5166
  #
5065
5167
  # @return [String]
5066
5168
  attr_accessor :cloud
@@ -5681,7 +5783,7 @@ class Config
5681
5783
  attr_accessor :name
5682
5784
 
5683
5785
  # **REQUIRED**,
5684
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
5786
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
5685
5787
  #
5686
5788
  # @return [String]
5687
5789
  attr_accessor :type
@@ -6219,7 +6321,7 @@ class Config
6219
6321
  attr_accessor :name
6220
6322
 
6221
6323
  # **Default: `AWS`**,
6222
- # **Must be one of: `AWS, CloudFormation, Google`**
6324
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
6223
6325
  #
6224
6326
  # @return [String]
6225
6327
  attr_accessor :cloud
@@ -6294,7 +6396,7 @@ class Config
6294
6396
  # @return [Array<String>]
6295
6397
  attr_accessor :zones
6296
6398
 
6297
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
6399
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
6298
6400
  #
6299
6401
  # @return [String]
6300
6402
  attr_accessor :region
@@ -6311,6 +6413,18 @@ class Config
6311
6413
  # @return [String]
6312
6414
  attr_accessor :groomer
6313
6415
 
6416
+ # **Default: `true`** -
6417
+ # Whether to run a host configuration agent, e.g. Chef, when bootstrapping
6418
+ #
6419
+ # @return [Boolean]
6420
+ attr_accessor :groom
6421
+
6422
+ # **Default: `1800`** -
6423
+ # Maximum execution time for a groomer run
6424
+ #
6425
+ # @return [Integer]
6426
+ attr_accessor :groomer_timeout
6427
+
6314
6428
  # **Default: `false`** -
6315
6429
  # Remove pre-existing groomer agents from node before bootstrapping. Especially useful for image builds.
6316
6430
  #
@@ -6452,12 +6566,22 @@ class Config
6452
6566
  # @see BasketofKittens::server_pools::existing_deploys
6453
6567
  attr_accessor :existing_deploys
6454
6568
 
6569
+ # Internal use.
6570
+ #
6571
+ # @return [String]
6572
+ attr_accessor :virtual_name
6573
+
6455
6574
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
6456
6575
  #
6457
6576
  # @return [Array<BasketofKittens::server_pools::dependencies>]
6458
6577
  # @see BasketofKittens::server_pools::dependencies
6459
6578
  attr_accessor :dependencies
6460
6579
 
6580
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
6581
+ #
6582
+ # @return [String]
6583
+ attr_accessor :credentials
6584
+
6461
6585
  # **AWS & CLOUDFORMATION ONLY**,
6462
6586
  # **Default: `true`** -
6463
6587
  # +AWS+: Generate a unique IAM profile for this Server or ServerPool.
@@ -6604,7 +6728,7 @@ class Config
6604
6728
  attr_accessor :name
6605
6729
 
6606
6730
  # **REQUIRED**,
6607
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
6731
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
6608
6732
  #
6609
6733
  # @return [String]
6610
6734
  attr_accessor :type
@@ -6665,18 +6789,23 @@ class Config
6665
6789
  # @return [String]
6666
6790
  attr_accessor :vpc_id
6667
6791
 
6792
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
6793
+ #
6794
+ # @return [String]
6795
+ attr_accessor :credentials
6796
+
6668
6797
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
6669
6798
  #
6670
6799
  # @return [String]
6671
6800
  attr_accessor :vpc_name
6672
6801
 
6673
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
6802
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
6674
6803
  #
6675
6804
  # @return [String]
6676
6805
  attr_accessor :region
6677
6806
 
6678
6807
  # **Default: `AWS`**,
6679
- # **Must be one of: `AWS, CloudFormation, Google`**
6808
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
6680
6809
  #
6681
6810
  # @return [String]
6682
6811
  attr_accessor :cloud
@@ -6907,7 +7036,7 @@ class Config
6907
7036
  # @!group Optional parameters
6908
7037
 
6909
7038
  # **Default: `AWS`**,
6910
- # **Must be one of: `AWS, CloudFormation, Google`**
7039
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
6911
7040
  #
6912
7041
  # @return [String]
6913
7042
  attr_accessor :cloud
@@ -7017,6 +7146,16 @@ class Config
7017
7146
  # @see BasketofKittens::vpcs::dhcp
7018
7147
  attr_accessor :dhcp
7019
7148
 
7149
+ # Internal use.
7150
+ #
7151
+ # @return [String]
7152
+ attr_accessor :virtual_name
7153
+
7154
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
7155
+ #
7156
+ # @return [String]
7157
+ attr_accessor :credentials
7158
+
7020
7159
  # **AWS & CLOUDFORMATION ONLY**,
7021
7160
  # **Default: `all`**,
7022
7161
  # **Must be one of: `accept, reject, all`** -
@@ -7042,7 +7181,7 @@ class Config
7042
7181
  attr_accessor :enable_traffic_logging
7043
7182
 
7044
7183
  # **GOOGLE ONLY**,
7045
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7184
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7046
7185
  #
7047
7186
  # @return [Array<String>]
7048
7187
  attr_accessor :regions
@@ -7354,7 +7493,7 @@ class Config
7354
7493
  # @return [Integer]
7355
7494
  attr_accessor :weight
7356
7495
 
7357
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7496
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7358
7497
  #
7359
7498
  # @return [String]
7360
7499
  attr_accessor :region
@@ -7580,18 +7719,23 @@ class Config
7580
7719
  # @return [String]
7581
7720
  attr_accessor :vpc_id
7582
7721
 
7722
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
7723
+ #
7724
+ # @return [String]
7725
+ attr_accessor :credentials
7726
+
7583
7727
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
7584
7728
  #
7585
7729
  # @return [String]
7586
7730
  attr_accessor :vpc_name
7587
7731
 
7588
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7732
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7589
7733
  #
7590
7734
  # @return [String]
7591
7735
  attr_accessor :region
7592
7736
 
7593
7737
  # **Default: `AWS`**,
7594
- # **Must be one of: `AWS, CloudFormation, Google`**
7738
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
7595
7739
  #
7596
7740
  # @return [String]
7597
7741
  attr_accessor :cloud
@@ -7685,7 +7829,7 @@ class Config
7685
7829
  attr_accessor :name
7686
7830
 
7687
7831
  # **REQUIRED**,
7688
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
7832
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
7689
7833
  #
7690
7834
  # @return [String]
7691
7835
  attr_accessor :type
@@ -7731,7 +7875,7 @@ class Config
7731
7875
  attr_accessor :size
7732
7876
 
7733
7877
  # **Default: `AWS`**,
7734
- # **Must be one of: `AWS, CloudFormation, Google`**
7878
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
7735
7879
  #
7736
7880
  # @return [String]
7737
7881
  attr_accessor :cloud
@@ -7744,7 +7888,7 @@ class Config
7744
7888
  # @return [Boolean]
7745
7889
  attr_accessor :scrub_mu_isms
7746
7890
 
7747
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7891
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
7748
7892
  #
7749
7893
  # @return [String]
7750
7894
  attr_accessor :region
@@ -7872,11 +8016,21 @@ class Config
7872
8016
  # @return [String]
7873
8017
  attr_accessor :parameter_group_family
7874
8018
 
8019
+ # Internal use.
8020
+ #
8021
+ # @return [String]
8022
+ attr_accessor :virtual_name
8023
+
7875
8024
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
7876
8025
  #
7877
8026
  # @return [Array<BasketofKittens::cache_clusters::dependencies>]
7878
8027
  # @see BasketofKittens::cache_clusters::dependencies
7879
8028
  attr_accessor :dependencies
8029
+
8030
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8031
+ #
8032
+ # @return [String]
8033
+ attr_accessor :credentials
7880
8034
  # @!endgroup
7881
8035
  end
7882
8036
  end
@@ -7930,7 +8084,7 @@ class Config
7930
8084
  attr_accessor :name
7931
8085
 
7932
8086
  # **REQUIRED**,
7933
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
8087
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
7934
8088
  #
7935
8089
  # @return [String]
7936
8090
  attr_accessor :type
@@ -8045,6 +8199,11 @@ class Config
8045
8199
  # @return [String]
8046
8200
  attr_accessor :notification_endpoint
8047
8201
 
8202
+ # Internal use.
8203
+ #
8204
+ # @return [String]
8205
+ attr_accessor :virtual_name
8206
+
8048
8207
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
8049
8208
  #
8050
8209
  # @return [Array<BasketofKittens::alarms::dependencies>]
@@ -8052,15 +8211,43 @@ class Config
8052
8211
  attr_accessor :dependencies
8053
8212
 
8054
8213
  # **Default: `AWS`**,
8055
- # **Must be one of: `AWS, CloudFormation, Google`**
8214
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8056
8215
  #
8057
8216
  # @return [String]
8058
8217
  attr_accessor :cloud
8218
+
8219
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8220
+ #
8221
+ # @return [String]
8222
+ attr_accessor :credentials
8059
8223
  # @!endgroup
8060
8224
  end
8061
8225
  end
8062
8226
  class BasketofKittens
8063
- class notifications
8227
+ class notifiers
8228
+ # A list of people or resources which should receive notifications
8229
+ class subscriptions
8230
+ # @!group Required parameters
8231
+
8232
+ # **REQUIRED** -
8233
+ # The endpoint which should be subscribed to this notifier, typically an email address or SMS-enabled phone number.
8234
+ #
8235
+ # @return [String]
8236
+ attr_accessor :endpoint
8237
+ # @!endgroup
8238
+ # @!group Optional parameters
8239
+
8240
+ # **Must be one of: `http, https, email, email-json, sms, sqs, application, lambda`**
8241
+ #
8242
+ #
8243
+ # @return [String]
8244
+ attr_accessor :type
8245
+ # @!endgroup
8246
+ end
8247
+ end
8248
+ end
8249
+ class BasketofKittens
8250
+ class notifiers
8064
8251
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
8065
8252
  class dependencies
8066
8253
  # @!group Required parameters
@@ -8071,7 +8258,7 @@ class Config
8071
8258
  attr_accessor :name
8072
8259
 
8073
8260
  # **REQUIRED**,
8074
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
8261
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
8075
8262
  #
8076
8263
  # @return [String]
8077
8264
  attr_accessor :type
@@ -8095,17 +8282,42 @@ class Config
8095
8282
  end
8096
8283
  class BasketofKittens
8097
8284
  # A stub for inline resource that generate SNS notifications in AWS. This should really be expanded.
8098
- class notifications
8285
+ class notifiers
8099
8286
  # @!group Optional parameters
8100
8287
 
8288
+ #
8289
+ # @return [String]
8290
+ attr_accessor :name
8291
+
8292
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8293
+ #
8294
+ # @return [String]
8295
+ attr_accessor :region
8296
+
8297
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8298
+ #
8299
+ # @return [String]
8300
+ attr_accessor :credentials
8301
+
8302
+ # A list of people or resources which should receive notifications
8303
+ #
8304
+ # @return [Array<BasketofKittens::notifiers::subscriptions>]
8305
+ # @see BasketofKittens::notifiers::subscriptions
8306
+ attr_accessor :subscriptions
8307
+
8308
+ # Internal use.
8309
+ #
8310
+ # @return [String]
8311
+ attr_accessor :virtual_name
8312
+
8101
8313
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
8102
8314
  #
8103
- # @return [Array<BasketofKittens::notifications::dependencies>]
8104
- # @see BasketofKittens::notifications::dependencies
8315
+ # @return [Array<BasketofKittens::notifiers::dependencies>]
8316
+ # @see BasketofKittens::notifiers::dependencies
8105
8317
  attr_accessor :dependencies
8106
8318
 
8107
8319
  # **Default: `AWS`**,
8108
- # **Must be one of: `AWS, CloudFormation, Google`**
8320
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8109
8321
  #
8110
8322
  # @return [String]
8111
8323
  attr_accessor :cloud
@@ -8124,7 +8336,7 @@ class Config
8124
8336
  attr_accessor :name
8125
8337
 
8126
8338
  # **REQUIRED**,
8127
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
8339
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
8128
8340
  #
8129
8341
  # @return [String]
8130
8342
  attr_accessor :type
@@ -8198,11 +8410,16 @@ class Config
8198
8410
  # @return [String]
8199
8411
  attr_accessor :name
8200
8412
 
8201
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8413
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8202
8414
  #
8203
8415
  # @return [String]
8204
8416
  attr_accessor :region
8205
8417
 
8418
+ # Internal use.
8419
+ #
8420
+ # @return [String]
8421
+ attr_accessor :virtual_name
8422
+
8206
8423
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
8207
8424
  #
8208
8425
  # @return [Array<BasketofKittens::logs::dependencies>]
@@ -8210,11 +8427,16 @@ class Config
8210
8427
  attr_accessor :dependencies
8211
8428
 
8212
8429
  # **Default: `AWS`**,
8213
- # **Must be one of: `AWS, CloudFormation, Google`**
8430
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8214
8431
  #
8215
8432
  # @return [String]
8216
8433
  attr_accessor :cloud
8217
8434
 
8435
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8436
+ #
8437
+ # @return [String]
8438
+ attr_accessor :credentials
8439
+
8218
8440
  # **AWS & CLOUDFORMATION ONLY**,
8219
8441
  # **Default: `14`**,
8220
8442
  # **Must be one of: `1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 3653`** -
@@ -8272,7 +8494,7 @@ class Config
8272
8494
  attr_accessor :name
8273
8495
 
8274
8496
  # **REQUIRED**,
8275
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
8497
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
8276
8498
  #
8277
8499
  # @return [String]
8278
8500
  attr_accessor :type
@@ -8333,18 +8555,23 @@ class Config
8333
8555
  # @return [String]
8334
8556
  attr_accessor :vpc_id
8335
8557
 
8558
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8559
+ #
8560
+ # @return [String]
8561
+ attr_accessor :credentials
8562
+
8336
8563
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
8337
8564
  #
8338
8565
  # @return [String]
8339
8566
  attr_accessor :vpc_name
8340
8567
 
8341
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8568
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8342
8569
  #
8343
8570
  # @return [String]
8344
8571
  attr_accessor :region
8345
8572
 
8346
8573
  # **Default: `AWS`**,
8347
- # **Must be one of: `AWS, CloudFormation, Google`**
8574
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8348
8575
  #
8349
8576
  # @return [String]
8350
8577
  attr_accessor :cloud
@@ -8517,7 +8744,7 @@ class Config
8517
8744
  # @!group Required parameters
8518
8745
 
8519
8746
  # **Default: `AWS`**,
8520
- # **Must be one of: `AWS, CloudFormation, Google`**
8747
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8521
8748
  #
8522
8749
  # @return [String]
8523
8750
  attr_accessor :cloud
@@ -8529,7 +8756,7 @@ class Config
8529
8756
  # @!endgroup
8530
8757
  # @!group Optional parameters
8531
8758
 
8532
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8759
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8533
8760
  #
8534
8761
  # @return [String]
8535
8762
  attr_accessor :region
@@ -8565,6 +8792,16 @@ class Config
8565
8792
  # @see BasketofKittens::storage_pools::mount_points
8566
8793
  attr_accessor :mount_points
8567
8794
 
8795
+ # Internal use.
8796
+ #
8797
+ # @return [String]
8798
+ attr_accessor :virtual_name
8799
+
8800
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8801
+ #
8802
+ # @return [String]
8803
+ attr_accessor :credentials
8804
+
8568
8805
  # **AWS ONLY**
8569
8806
  # Firewall rules to apply to our mountpoints
8570
8807
  #
@@ -8639,18 +8876,23 @@ class Config
8639
8876
  # @return [String]
8640
8877
  attr_accessor :vpc_id
8641
8878
 
8879
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
8880
+ #
8881
+ # @return [String]
8882
+ attr_accessor :credentials
8883
+
8642
8884
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
8643
8885
  #
8644
8886
  # @return [String]
8645
8887
  attr_accessor :vpc_name
8646
8888
 
8647
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8889
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8648
8890
  #
8649
8891
  # @return [String]
8650
8892
  attr_accessor :region
8651
8893
 
8652
8894
  # **Default: `AWS`**,
8653
- # **Must be one of: `AWS, CloudFormation, Google`**
8895
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8654
8896
  #
8655
8897
  # @return [String]
8656
8898
  attr_accessor :cloud
@@ -8720,7 +8962,7 @@ class Config
8720
8962
  attr_accessor :name
8721
8963
 
8722
8964
  # **REQUIRED**,
8723
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
8965
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
8724
8966
  #
8725
8967
  # @return [String]
8726
8968
  attr_accessor :type
@@ -8790,7 +9032,7 @@ class Config
8790
9032
  # @!group Required parameters
8791
9033
 
8792
9034
  # **Default: `AWS`**,
8793
- # **Must be one of: `AWS, CloudFormation, Google`**
9035
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8794
9036
  #
8795
9037
  # @return [String]
8796
9038
  attr_accessor :cloud
@@ -8806,13 +9048,8 @@ class Config
8806
9048
  # @return [String]
8807
9049
  attr_accessor :runtime
8808
9050
 
8809
- # **REQUIRED**
8810
- #
8811
- # @return [String]
8812
- attr_accessor :iam_role
8813
-
8814
9051
  # **REQUIRED**,
8815
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
9052
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8816
9053
  #
8817
9054
  # @return [String]
8818
9055
  attr_accessor :region
@@ -8879,6 +9116,22 @@ class Config
8879
9116
  # @return [Array<BasketofKittens::functions::environment_variable>]
8880
9117
  # @see BasketofKittens::functions::environment_variable
8881
9118
  attr_accessor :environment_variable
9119
+
9120
+ # Internal use.
9121
+ #
9122
+ # @return [String]
9123
+ attr_accessor :virtual_name
9124
+
9125
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
9126
+ #
9127
+ # @return [String]
9128
+ attr_accessor :credentials
9129
+
9130
+ # **AWS ONLY** -
9131
+ # +AWS+: The name of an IAM role for our Lambda function to assume. Can refer to an existing IAM role, or a sibling 'role' resource in Mu. If not specified, will create a default role with the AWSLambdaBasicExecutionRole policy attached. To grant other permissions for your function, create a Mu 'role' resource and use the 'import' and 'policies' parameters to add permissions. See also: https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html
9132
+ #
9133
+ # @return [String]
9134
+ attr_accessor :iam_role
8882
9135
  # @!endgroup
8883
9136
  end
8884
9137
  end
@@ -8918,18 +9171,23 @@ class Config
8918
9171
  # @return [String]
8919
9172
  attr_accessor :vpc_id
8920
9173
 
9174
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
9175
+ #
9176
+ # @return [String]
9177
+ attr_accessor :credentials
9178
+
8921
9179
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
8922
9180
  #
8923
9181
  # @return [String]
8924
9182
  attr_accessor :vpc_name
8925
9183
 
8926
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
9184
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
8927
9185
  #
8928
9186
  # @return [String]
8929
9187
  attr_accessor :region
8930
9188
 
8931
9189
  # **Default: `AWS`**,
8932
- # **Must be one of: `AWS, CloudFormation, Google`**
9190
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
8933
9191
  #
8934
9192
  # @return [String]
8935
9193
  attr_accessor :cloud
@@ -9544,7 +9802,7 @@ class Config
9544
9802
  attr_accessor :name
9545
9803
 
9546
9804
  # **REQUIRED**,
9547
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
9805
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
9548
9806
  #
9549
9807
  # @return [String]
9550
9808
  attr_accessor :type
@@ -9588,14 +9846,14 @@ class Config
9588
9846
  attr_accessor :instance_type
9589
9847
 
9590
9848
  # **Default: `AWS`**,
9591
- # **Must be one of: `AWS, CloudFormation, Google`**
9849
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
9592
9850
  #
9593
9851
  # @return [String]
9594
9852
  attr_accessor :cloud
9595
9853
  # @!endgroup
9596
9854
  # @!group Optional parameters
9597
9855
 
9598
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
9856
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
9599
9857
  #
9600
9858
  # @return [String]
9601
9859
  attr_accessor :region
@@ -9670,6 +9928,18 @@ class Config
9670
9928
  # @return [String]
9671
9929
  attr_accessor :groomer
9672
9930
 
9931
+ # **Default: `true`** -
9932
+ # Whether to run a host configuration agent, e.g. Chef, when bootstrapping
9933
+ #
9934
+ # @return [Boolean]
9935
+ attr_accessor :groom
9936
+
9937
+ # **Default: `1800`** -
9938
+ # Maximum execution time for a groomer run
9939
+ #
9940
+ # @return [Integer]
9941
+ attr_accessor :groomer_timeout
9942
+
9673
9943
  # **Default: `false`** -
9674
9944
  # Remove pre-existing groomer agents from node before bootstrapping. Especially useful for image builds.
9675
9945
  #
@@ -9804,12 +10074,22 @@ class Config
9804
10074
  # @see BasketofKittens::container_clusters::existing_deploys
9805
10075
  attr_accessor :existing_deploys
9806
10076
 
10077
+ # Internal use.
10078
+ #
10079
+ # @return [String]
10080
+ attr_accessor :virtual_name
10081
+
9807
10082
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
9808
10083
  #
9809
10084
  # @return [Array<BasketofKittens::container_clusters::dependencies>]
9810
10085
  # @see BasketofKittens::container_clusters::dependencies
9811
10086
  attr_accessor :dependencies
9812
10087
 
10088
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
10089
+ #
10090
+ # @return [String]
10091
+ attr_accessor :credentials
10092
+
9813
10093
  # **AWS ONLY** -
9814
10094
  # +AWS+: The Amazon EC2 AMI on which to base this cluster's container hosts. Will use the default appropriate for the platform, if not specified.
9815
10095
  #
@@ -9886,18 +10166,23 @@ class Config
9886
10166
  # @return [String]
9887
10167
  attr_accessor :vpc_id
9888
10168
 
10169
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
10170
+ #
10171
+ # @return [String]
10172
+ attr_accessor :credentials
10173
+
9889
10174
  # Discover this VPC by Mu-internal name; typically the shorthand 'name' field of a VPC declared elsewhere in the deploy, or in another deploy that's being referenced with 'deploy_id'.
9890
10175
  #
9891
10176
  # @return [String]
9892
10177
  attr_accessor :vpc_name
9893
10178
 
9894
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
10179
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
9895
10180
  #
9896
10181
  # @return [String]
9897
10182
  attr_accessor :region
9898
10183
 
9899
10184
  # **Default: `AWS`**,
9900
- # **Must be one of: `AWS, CloudFormation, Google`**
10185
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
9901
10186
  #
9902
10187
  # @return [String]
9903
10188
  attr_accessor :cloud
@@ -10023,7 +10308,7 @@ class Config
10023
10308
  attr_accessor :name
10024
10309
 
10025
10310
  # **REQUIRED**,
10026
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
10311
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10027
10312
  #
10028
10313
  # @return [String]
10029
10314
  attr_accessor :type
@@ -10095,11 +10380,14 @@ class Config
10095
10380
  class search_domains
10096
10381
  # @!group Optional parameters
10097
10382
 
10383
+ # **Must match pattern `^[a-z][a-z0-9\-]+$`** -
10384
+ # +AWS+:
10385
+ #+AWS+:
10098
10386
  #
10099
10387
  # @return [String]
10100
10388
  attr_accessor :name
10101
10389
 
10102
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
10390
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
10103
10391
  #
10104
10392
  # @return [String]
10105
10393
  attr_accessor :region
@@ -10139,6 +10427,11 @@ class Config
10139
10427
  # @return [Integer]
10140
10428
  attr_accessor :instance_count
10141
10429
 
10430
+ # Internal use.
10431
+ #
10432
+ # @return [String]
10433
+ attr_accessor :virtual_name
10434
+
10142
10435
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10143
10436
  #
10144
10437
  # @return [Array<BasketofKittens::search_domains::dependencies>]
@@ -10146,14 +10439,19 @@ class Config
10146
10439
  attr_accessor :dependencies
10147
10440
 
10148
10441
  # **Default: `AWS`**,
10149
- # **Must be one of: `AWS, CloudFormation, Google`**
10442
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10150
10443
  #
10151
10444
  # @return [String]
10152
10445
  attr_accessor :cloud
10153
10446
 
10447
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
10448
+ #
10449
+ # @return [String]
10450
+ attr_accessor :credentials
10451
+
10154
10452
  # **AWS ONLY**,
10155
- # **Default: `6.3`** -
10156
- # +AWS+: A supported ElasticSearch version for the region of this SearchDomain. Known versions from us-east-1: 6.3, 6.2, 6.0, 5.6, 5.5, 5.3, 5.1, 2.3, 1.5
10453
+ # **Default: `6.4`** -
10454
+ # +AWS+: A supported ElasticSearch version for the region of this SearchDomain. Known versions from us-east-1: 6.4, 6.3, 6.2, 6.0, 5.6, 5.5, 5.3, 5.1, 2.3, 1.5
10157
10455
  #
10158
10456
  # @return [String]
10159
10457
  attr_accessor :elasticsearch_version
@@ -10279,7 +10577,7 @@ class Config
10279
10577
  attr_accessor :name
10280
10578
 
10281
10579
  # **REQUIRED**,
10282
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
10580
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10283
10581
  #
10284
10582
  # @return [String]
10285
10583
  attr_accessor :type
@@ -10361,7 +10659,7 @@ class Config
10361
10659
  # @return [String]
10362
10660
  attr_accessor :name
10363
10661
 
10364
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
10662
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
10365
10663
  #
10366
10664
  # @return [String]
10367
10665
  attr_accessor :region
@@ -10378,6 +10676,11 @@ class Config
10378
10676
  # @return [Boolean]
10379
10677
  attr_accessor :optional_tags
10380
10678
 
10679
+ # Internal use.
10680
+ #
10681
+ # @return [String]
10682
+ attr_accessor :virtual_name
10683
+
10381
10684
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10382
10685
  #
10383
10686
  # @return [Array<BasketofKittens::msg_queues::dependencies>]
@@ -10385,11 +10688,16 @@ class Config
10385
10688
  attr_accessor :dependencies
10386
10689
 
10387
10690
  # **Default: `AWS`**,
10388
- # **Must be one of: `AWS, CloudFormation, Google`**
10691
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10389
10692
  #
10390
10693
  # @return [String]
10391
10694
  attr_accessor :cloud
10392
10695
 
10696
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
10697
+ #
10698
+ # @return [String]
10699
+ attr_accessor :credentials
10700
+
10393
10701
  # **AWS ONLY**,
10394
10702
  # **Default: `256`** -
10395
10703
  # +AWS+: Maximum size of messages in this queue, in kB. Must be between 1 and 256.
@@ -10456,7 +10764,7 @@ class Config
10456
10764
  end
10457
10765
  end
10458
10766
  class BasketofKittens
10459
- class projects
10767
+ class habitats
10460
10768
  # Deploy into or connect with resources in a specific account/project
10461
10769
  class folder
10462
10770
  # @!group Optional parameters
@@ -10472,7 +10780,7 @@ class Config
10472
10780
  attr_accessor :name
10473
10781
 
10474
10782
  # **Default: `AWS`**,
10475
- # **Must be one of: `AWS, CloudFormation, Google`**
10783
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10476
10784
  #
10477
10785
  # @return [String]
10478
10786
  attr_accessor :cloud
@@ -10486,7 +10794,7 @@ class Config
10486
10794
  end
10487
10795
  end
10488
10796
  class BasketofKittens
10489
- class projects
10797
+ class habitats
10490
10798
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10491
10799
  class dependencies
10492
10800
  # @!group Required parameters
@@ -10497,7 +10805,7 @@ class Config
10497
10805
  attr_accessor :name
10498
10806
 
10499
10807
  # **REQUIRED**,
10500
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
10808
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10501
10809
  #
10502
10810
  # @return [String]
10503
10811
  attr_accessor :type
@@ -10520,8 +10828,8 @@ class Config
10520
10828
  end
10521
10829
  end
10522
10830
  class BasketofKittens
10523
- # Set up a cloud account (AWS account, Google Cloud project, etc)
10524
- class projects
10831
+ # Generate a cloud habitat (AWS account, Google Cloud project, Azure Directory, etc)
10832
+ class habitats
10525
10833
  # @!group Optional parameters
10526
10834
 
10527
10835
  #
@@ -10530,21 +10838,37 @@ class Config
10530
10838
 
10531
10839
  # Deploy into or connect with resources in a specific account/project
10532
10840
  #
10533
- # @return [BasketofKittens::projects::folder]
10534
- # @see BasketofKittens::projects::folder
10841
+ # @return [BasketofKittens::habitats::folder]
10842
+ # @see BasketofKittens::habitats::folder
10535
10843
  attr_accessor :folder
10536
10844
 
10845
+ # Internal use.
10846
+ #
10847
+ # @return [String]
10848
+ attr_accessor :virtual_name
10849
+
10537
10850
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10538
10851
  #
10539
- # @return [Array<BasketofKittens::projects::dependencies>]
10540
- # @see BasketofKittens::projects::dependencies
10852
+ # @return [Array<BasketofKittens::habitats::dependencies>]
10853
+ # @see BasketofKittens::habitats::dependencies
10541
10854
  attr_accessor :dependencies
10542
10855
 
10543
10856
  # **Default: `AWS`**,
10544
- # **Must be one of: `AWS, CloudFormation, Google`**
10857
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10545
10858
  #
10546
10859
  # @return [String]
10547
10860
  attr_accessor :cloud
10861
+
10862
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
10863
+ #
10864
+ # @return [String]
10865
+ attr_accessor :credentials
10866
+
10867
+ # **AWS ONLY** -
10868
+ # +AWS+: AWS accounts require a unique contact email address. If not provided, Mu will generate an alias to the global mu_admin_email using the +foo SMTP mechanism.
10869
+ #
10870
+ # @return [String]
10871
+ attr_accessor :email
10548
10872
  # @!endgroup
10549
10873
  end
10550
10874
  end
@@ -10560,7 +10884,7 @@ class Config
10560
10884
  attr_accessor :name
10561
10885
 
10562
10886
  # **REQUIRED**,
10563
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
10887
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10564
10888
  #
10565
10889
  # @return [String]
10566
10890
  attr_accessor :type
@@ -10591,6 +10915,11 @@ class Config
10591
10915
  # @return [String]
10592
10916
  attr_accessor :name
10593
10917
 
10918
+ # Internal use.
10919
+ #
10920
+ # @return [String]
10921
+ attr_accessor :virtual_name
10922
+
10594
10923
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10595
10924
  #
10596
10925
  # @return [Array<BasketofKittens::folders::dependencies>]
@@ -10598,10 +10927,15 @@ class Config
10598
10927
  attr_accessor :dependencies
10599
10928
 
10600
10929
  # **Default: `AWS`**,
10601
- # **Must be one of: `AWS, CloudFormation, Google`**
10930
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10602
10931
  #
10603
10932
  # @return [String]
10604
10933
  attr_accessor :cloud
10934
+
10935
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
10936
+ #
10937
+ # @return [String]
10938
+ attr_accessor :credentials
10605
10939
  # @!endgroup
10606
10940
  end
10607
10941
  end
@@ -10617,7 +10951,7 @@ class Config
10617
10951
  attr_accessor :name
10618
10952
 
10619
10953
  # **REQUIRED**,
10620
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
10954
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10621
10955
  #
10622
10956
  # @return [String]
10623
10957
  attr_accessor :type
@@ -10713,6 +11047,11 @@ class Config
10713
11047
  # @return [Array<String>]
10714
11048
  attr_accessor :groups
10715
11049
 
11050
+ # Internal use.
11051
+ #
11052
+ # @return [String]
11053
+ attr_accessor :virtual_name
11054
+
10716
11055
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10717
11056
  #
10718
11057
  # @return [Array<BasketofKittens::users::dependencies>]
@@ -10720,11 +11059,16 @@ class Config
10720
11059
  attr_accessor :dependencies
10721
11060
 
10722
11061
  # **Default: `AWS`**,
10723
- # **Must be one of: `AWS, CloudFormation, Google`**
11062
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10724
11063
  #
10725
11064
  # @return [String]
10726
11065
  attr_accessor :cloud
10727
11066
 
11067
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
11068
+ #
11069
+ # @return [String]
11070
+ attr_accessor :credentials
11071
+
10728
11072
  # **AWS ONLY**,
10729
11073
  # **Must match pattern `^\/(?:[^\/]+(?:\/[^\/]+)*\/$)?`** -
10730
11074
  # +AWS+: AWS IAM users can be namespaced with a path (ex: +/organization/unit/user+). If not specified, and if we do not see a matching existing user under +/+ with +use_if_exists+ set, we will prepend the deploy identifier to the path of users we create. Ex: +/IAMTESTS-DEV-2018112910-GR/myuser+.
@@ -10795,7 +11139,7 @@ class Config
10795
11139
  attr_accessor :name
10796
11140
 
10797
11141
  # **REQUIRED**,
10798
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
11142
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10799
11143
  #
10800
11144
  # @return [String]
10801
11145
  attr_accessor :type
@@ -10855,6 +11199,11 @@ class Config
10855
11199
  # @return [Boolean]
10856
11200
  attr_accessor :use_if_exists
10857
11201
 
11202
+ # Internal use.
11203
+ #
11204
+ # @return [String]
11205
+ attr_accessor :virtual_name
11206
+
10858
11207
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
10859
11208
  #
10860
11209
  # @return [Array<BasketofKittens::groups::dependencies>]
@@ -10862,11 +11211,16 @@ class Config
10862
11211
  attr_accessor :dependencies
10863
11212
 
10864
11213
  # **Default: `AWS`**,
10865
- # **Must be one of: `AWS, CloudFormation, Google`**
11214
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
10866
11215
  #
10867
11216
  # @return [String]
10868
11217
  attr_accessor :cloud
10869
11218
 
11219
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
11220
+ #
11221
+ # @return [String]
11222
+ attr_accessor :credentials
11223
+
10870
11224
  # **AWS ONLY** -
10871
11225
  # +AWS+: Instead of creating/updating a group with
10872
11226
  # the exact name specified in the 'name' field, generate a unique-per-deploy Mu-
@@ -10918,7 +11272,7 @@ class Config
10918
11272
  # @!endgroup
10919
11273
  # @!group Optional parameters
10920
11274
 
10921
- # **Must be one of: `alarm, cache_cluster, collection, container_cluster, database, dnszone, firewall_rule, folder, function, group, loadbalancer, log, msg_queue, notification, project, role, search_domain, server, server_pool, storage_pool, user, vpc`** -
11275
+ # **Must be one of: `alarm, cache_cluster, collection, container_cluster, database, dnszone, firewall_rule, folder, function, group, habitat, loadbalancer, log, msg_queue, notifier, role, search_domain, server, server_pool, storage_pool, user, vpc`** -
10922
11276
  # A Mu resource type, used when referencing a sibling Mu resource in this stack with +identifier+.
10923
11277
  #
10924
11278
  # @return [String]
@@ -10976,7 +11330,7 @@ class Config
10976
11330
  attr_accessor :name
10977
11331
 
10978
11332
  # **REQUIRED**,
10979
- # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notification, log, storage_pool, function, container_cluster, search_domain, msg_queue, project, folder, user, group, role`**
11333
+ # **Must be one of: `collection, database, dnszone, firewall_rule, loadbalancer, server, server_pool, vpc, cache_cluster, alarm, notifier, log, storage_pool, function, container_cluster, search_domain, msg_queue, habitat, folder, user, group, role`**
10980
11334
  #
10981
11335
  # @return [String]
10982
11336
  attr_accessor :type
@@ -11027,7 +11381,7 @@ class Config
11027
11381
 
11028
11382
  # **REQUIRED**,
11029
11383
  # **AWS ONLY**,
11030
- # **Must be one of: `service, aws, federated, alarm, cache_cluster, collection, container_cluster, database, dnszone, firewall_rule, folder, function, group, loadbalancer, log, msg_queue, notification, role, search_domain, server, server_pool, storage_pool, user, vpc`** -
11384
+ # **Must be one of: `service, aws, federated, alarm, cache_cluster, collection, container_cluster, database, dnszone, firewall_rule, folder, function, group, habitat, loadbalancer, log, msg_queue, notifier, role, search_domain, server, server_pool, storage_pool, user, vpc`** -
11031
11385
  # Type of entity which will be permitted to assume this role. See +entity_id+ for details.
11032
11386
  #
11033
11387
  # @return [String]
@@ -11039,7 +11393,7 @@ class Config
11039
11393
  #
11040
11394
  #**service**: The name of a service which is allowed to assume this role, such as +ec2.amazonaws.com+. See also https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html#roles-creatingrole-service-api. For an unofficial list of service names, see https://gist.github.com/shortjared/4c1e3fe52bdfa47522cfe5b41e5d6f22
11041
11395
  #
11042
- #**alarm, cache_cluster, collection, container_cluster, database, dnszone, firewall_rule, folder, function, group, loadbalancer, log, msg_queue, notification, role, search_domain, server, server_pool, storage_pool, user, vpc**: A resource of one of these Mu types, declared elsewhere in this stack with a name specified in +entity_id+, for which Mu will attempt to resolve the appropriate *aws* or *service* identifier.
11396
+ #**alarm, cache_cluster, collection, container_cluster, database, dnszone, firewall_rule, folder, function, group, habitat, loadbalancer, log, msg_queue, notifier, role, search_domain, server, server_pool, storage_pool, user, vpc**: A resource of one of these Mu types, declared elsewhere in this stack with a name specified in +entity_id+, for which Mu will attempt to resolve the appropriate *aws* or *service* identifier.
11043
11397
  #
11044
11398
  #**aws**: An ARN which should be permitted to assume this role, often another role like +arn:aws:iam::AWS-account-ID:role/role-name+ or a specific user session such as +arn:aws:sts::AWS-account-ID:assumed-role/role-name/role-session-name+. See also https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying
11045
11399
  #
@@ -11048,6 +11402,16 @@ class Config
11048
11402
  # @return [String]
11049
11403
  attr_accessor :entity_id
11050
11404
  # @!endgroup
11405
+ # @!group Optional parameters
11406
+
11407
+ # **AWS ONLY**,
11408
+ # **Default: `basic`**,
11409
+ # **Must be one of: `basic, saml, web`** -
11410
+ # https://docs.aws.amazon.com/STS/latest/APIReference/API_Operations.html
11411
+ #
11412
+ # @return [String]
11413
+ attr_accessor :assume_method
11414
+ # @!endgroup
11051
11415
  end
11052
11416
  end
11053
11417
  end
@@ -11063,7 +11427,7 @@ class Config
11063
11427
  class roles
11064
11428
  # @!group Optional parameters
11065
11429
 
11066
- # **Must match pattern `^[a-zA-Z0-9]+$`** -
11430
+ # **Must match pattern `^[a-zA-Z0-9_\-]+$`** -
11067
11431
  # The name of a cloud provider role to create
11068
11432
  #
11069
11433
  # @return [String]
@@ -11080,6 +11444,11 @@ class Config
11080
11444
  # @see BasketofKittens::roles::policies
11081
11445
  attr_accessor :policies
11082
11446
 
11447
+ # Internal use.
11448
+ #
11449
+ # @return [String]
11450
+ attr_accessor :virtual_name
11451
+
11083
11452
  # Declare other objects which this resource requires. This resource will wait until the others are available to create itself.
11084
11453
  #
11085
11454
  # @return [Array<BasketofKittens::roles::dependencies>]
@@ -11087,11 +11456,16 @@ class Config
11087
11456
  attr_accessor :dependencies
11088
11457
 
11089
11458
  # **Default: `AWS`**,
11090
- # **Must be one of: `AWS, CloudFormation, Google`**
11459
+ # **Must be one of: `AWS, CloudFormation, Google, Azure`**
11091
11460
  #
11092
11461
  # @return [String]
11093
11462
  attr_accessor :cloud
11094
11463
 
11464
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
11465
+ #
11466
+ # @return [String]
11467
+ attr_accessor :credentials
11468
+
11095
11469
  # **AWS ONLY**
11096
11470
  # Tags to apply to this resource. Will apply at the cloud provider level and in Chef, where applicable.
11097
11471
  #
@@ -11153,17 +11527,21 @@ class Config
11153
11527
  # @return [Boolean]
11154
11528
  attr_accessor :scrub_mu_isms
11155
11529
 
11156
- # **Default: `linear-theater-184819`** -
11157
11530
  # GOOGLE: The project into which to deploy resources
11158
11531
  #
11159
11532
  # @return [String]
11160
11533
  attr_accessor :project
11161
11534
 
11162
- # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
11535
+ # **Must be one of: `us-east-1, ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, sa-east-1, us-east-2, us-west-1, us-west-2, asia-east1, asia-east2, asia-northeast1, asia-south1, asia-southeast1, australia-southeast1, europe-north1, europe-west1, europe-west2, europe-west3, europe-west4, northamerica-northeast1, southamerica-east1, us-central1, us-east1, us-east4, us-west1, us-west2`**
11163
11536
  #
11164
11537
  # @return [String]
11165
11538
  attr_accessor :region
11166
11539
 
11540
+ # Specify a non-default set of credentials to use when authenticating to cloud provider APIs, as listed in `mu.yaml` under each provider's subsection. If
11541
+ #
11542
+ # @return [String]
11543
+ attr_accessor :credentials
11544
+
11167
11545
  # **Default: `false`** -
11168
11546
  # For resources which span regions, restrict to regions inside the United States
11169
11547
  #
@@ -11244,9 +11622,9 @@ class Config
11244
11622
 
11245
11623
  # A stub for inline resource that generate SNS notifications in AWS. This should really be expanded.
11246
11624
  #
11247
- # @return [Array<BasketofKittens::notifications>]
11248
- # @see BasketofKittens::notifications
11249
- attr_accessor :notifications
11625
+ # @return [Array<BasketofKittens::notifiers>]
11626
+ # @see BasketofKittens::notifiers
11627
+ attr_accessor :notifiers
11250
11628
 
11251
11629
  # Log events using a cloud provider's log service.
11252
11630
  #
@@ -11284,11 +11662,11 @@ class Config
11284
11662
  # @see BasketofKittens::msg_queues
11285
11663
  attr_accessor :msg_queues
11286
11664
 
11287
- # Set up a cloud account (AWS account, Google Cloud project, etc)
11665
+ # Generate a cloud habitat (AWS account, Google Cloud project, Azure Directory, etc)
11288
11666
  #
11289
- # @return [Array<BasketofKittens::projects>]
11290
- # @see BasketofKittens::projects
11291
- attr_accessor :projects
11667
+ # @return [Array<BasketofKittens::habitats>]
11668
+ # @see BasketofKittens::habitats
11669
+ attr_accessor :habitats
11292
11670
 
11293
11671
  # Set up a cloud provider folder/OU for containing other account-level resources
11294
11672
  #