aws-sdk-opsworkscm 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ba49c26509d96214e97f7b13f5b4da9528b66e79
4
- data.tar.gz: 1f651db68b6250afdc0c8b091383f118045b4e98
3
+ metadata.gz: 59bbf13fe7697d53409a9766f069fbdcfb4b3628
4
+ data.tar.gz: cb03246aef009bd607ba2522006d3cb030806665
5
5
  SHA512:
6
- metadata.gz: 313600120e5468ac8de32be7c967bb53d23cce8b85b3d95c1420f6324738c43e3ceec4b7598cb3234220b6708d5fcebde8e8a79c62ce53279d547f40995cf5c2
7
- data.tar.gz: 9d4d0a495103783303130be2919fa098cd8a40da2a9a87b2195ba29acaaa8bae8508076ac4e8d125fc6e93c5f2d299703464129d0c078ca23713c1dc284a93c1
6
+ metadata.gz: 1274e1ea556a54907deaddec18224340bbc868fbf8f78753204ca3824ff7ada90fe007f50e0c52c17bd7a203076137ebf786c3f8f8bb9c77609ae27297481e28
7
+ data.tar.gz: 789374ed7f3686d649cb6dba7649623265768b72ec3a5f3b7b09284005c0d7d4bbed3dded635e9c49224c9a27c80c6812d3c90a69984c388dbd9bdb0e4f28b34
@@ -12,6 +12,7 @@ require_relative 'aws-sdk-opsworkscm/types'
12
12
  require_relative 'aws-sdk-opsworkscm/client_api'
13
13
  require_relative 'aws-sdk-opsworkscm/client'
14
14
  require_relative 'aws-sdk-opsworkscm/errors'
15
+ require_relative 'aws-sdk-opsworkscm/waiters'
15
16
  require_relative 'aws-sdk-opsworkscm/resource'
16
17
  require_relative 'aws-sdk-opsworkscm/customizations'
17
18
 
@@ -42,6 +43,6 @@ require_relative 'aws-sdk-opsworkscm/customizations'
42
43
  # @service
43
44
  module Aws::OpsWorksCM
44
45
 
45
- GEM_VERSION = '1.1.0'
46
+ GEM_VERSION = '1.2.0'
46
47
 
47
48
  end
@@ -155,9 +155,22 @@ module Aws::OpsWorksCM
155
155
 
156
156
  # @!group API Operations
157
157
 
158
- # Associates a new node with the Chef server. This command is an
159
- # alternative to `knife bootstrap`. For more information about how to
160
- # disassociate a node, see DisassociateNode.
158
+ # Associates a new node with the server. For more information about how
159
+ # to disassociate a node, see DisassociateNode.
160
+ #
161
+ # On a Chef server: This command is an alternative to `knife bootstrap`.
162
+ #
163
+ # Example (Chef): `aws opsworks-cm associate-node --server-name MyServer
164
+ # --node-name MyManagedNode --engine-attributes
165
+ # "Name=CHEF_ORGANIZATION,Value=default"
166
+ # "Name=CHEF_NODE_PUBLIC_KEY,Value=public-key-pem"`
167
+ #
168
+ # On a Puppet server, this command is an alternative to the `puppet cert
169
+ # sign` command that signs a Puppet node CSR.
170
+ #
171
+ # Example (Chef): `aws opsworks-cm associate-node --server-name MyServer
172
+ # --node-name MyManagedNode --engine-attributes
173
+ # "Name=PUPPET_NODE_CSR,Value=csr-pem"`
161
174
  #
162
175
  # A node can can only be associated with servers that are in a `HEALTHY`
163
176
  # state. Otherwise, an `InvalidStateException` is thrown. A
@@ -167,21 +180,16 @@ module Aws::OpsWorksCM
167
180
  # Scaling configurations, AWS Cloudformation templates, or the user data
168
181
  # of a server's instance.
169
182
  #
170
- # Example: `aws opsworks-cm associate-node --server-name MyServer
171
- # --node-name MyManagedNode --engine-attributes
172
- # "Name=MyOrganization,Value=default"
173
- # "Name=Chef_node_public_key,Value=Public_key_contents"`
174
- #
175
183
  # @option params [required, String] :server_name
176
184
  # The name of the server with which to associate the node.
177
185
  #
178
186
  # @option params [required, String] :node_name
179
- # The name of the Chef client node.
187
+ # The name of the node.
180
188
  #
181
189
  # @option params [required, Array<Types::EngineAttribute>] :engine_attributes
182
190
  # Engine attributes used for associating the node.
183
191
  #
184
- # **Attributes accepted in a AssociateNode request:**
192
+ # **Attributes accepted in a AssociateNode request for Chef**
185
193
  #
186
194
  # * `CHEF_ORGANIZATION`\: The Chef organization with which the node is
187
195
  # associated. By default only one organization named `default` can
@@ -190,6 +198,13 @@ module Aws::OpsWorksCM
190
198
  # * `CHEF_NODE_PUBLIC_KEY`\: A PEM-formatted public key. This key is
191
199
  # required for the `chef-client` agent to access the Chef API.
192
200
  #
201
+ # **Attributes accepted in a AssociateNode request for Puppet**
202
+ #
203
+ # * `PUPPET_NODE_CSR`\: A PEM-formatted certificate-signing request
204
+ # (CSR) that is created by the node.
205
+ #
206
+ # ^
207
+ #
193
208
  # @return [Types::AssociateNodeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
194
209
  #
195
210
  # * {Types::AssociateNodeResponse#node_association_status_token #node_association_status_token} => String
@@ -308,11 +323,18 @@ module Aws::OpsWorksCM
308
323
  #
309
324
  # If you do not specify a security group by adding the
310
325
  # `SecurityGroupIds` parameter, AWS OpsWorks creates a new security
311
- # group. The default security group opens the Chef server to the world
312
- # on TCP port 443. If a KeyName is present, AWS OpsWorks enables SSH
313
- # access. SSH is also open to the world on TCP port 22.
326
+ # group.
327
+ #
328
+ # *Chef Automate:* The default security group opens the Chef server to
329
+ # the world on TCP port 443. If a KeyName is present, AWS OpsWorks
330
+ # enables SSH access. SSH is also open to the world on TCP port 22.
331
+ #
332
+ # *Puppet Enterprise:* The default security group opens TCP ports 22,
333
+ # 443, 4433, 8140, 8142, 8143, and 8170. If a KeyName is present, AWS
334
+ # OpsWorks enables SSH access. SSH is also open to the world on TCP port
335
+ # 22.
314
336
  #
315
- # By default, the Chef Server is accessible from any IP address. We
337
+ # By default, your server is accessible from any IP address. We
316
338
  # recommend that you update your security group rules to allow access
317
339
  # from known IP addresses and address ranges only. To edit security
318
340
  # group rules, open Security Groups in the navigation pane of the EC2
@@ -328,24 +350,26 @@ module Aws::OpsWorksCM
328
350
  #
329
351
  # @option params [String] :engine
330
352
  # The configuration management engine to use. Valid values include
331
- # `Chef`.
353
+ # `Chef` and `Puppet`.
332
354
  #
333
355
  # @option params [String] :engine_model
334
- # The engine model, or option. Valid values include `Single`.
356
+ # The engine model of the server. Valid values in this release include
357
+ # `Monolithic` for Puppet and `Single` for Chef.
335
358
  #
336
359
  # @option params [String] :engine_version
337
- # The major release version of the engine that you want to use. Values
338
- # depend on the engine that you choose.
360
+ # The major release version of the engine that you want to use. For a
361
+ # Chef server, the valid value for EngineVersion is currently `12`. For
362
+ # a Puppet server, the valid value is `2017`.
339
363
  #
340
364
  # @option params [Array<Types::EngineAttribute>] :engine_attributes
341
365
  # Optional engine attributes on a specified server.
342
366
  #
343
- # **Attributes accepted in a createServer request:**
367
+ # **Attributes accepted in a Chef createServer request:**
344
368
  #
345
369
  # * `CHEF_PIVOTAL_KEY`\: A base64-encoded RSA private key that is not
346
- # stored by AWS OpsWorks for Chef. This private key is required to
347
- # access the Chef API. When no CHEF\_PIVOTAL\_KEY is set, one is
348
- # generated and returned in the response.
370
+ # stored by AWS OpsWorks for Chef Automate. This private key is
371
+ # required to access the Chef API. When no CHEF\_PIVOTAL\_KEY is set,
372
+ # one is generated and returned in the response.
349
373
  #
350
374
  # * `CHEF_DELIVERY_ADMIN_PASSWORD`\: The password for the administrative
351
375
  # user in the Chef Automate GUI. The password length is a minimum of
@@ -356,10 +380,17 @@ module Aws::OpsWorksCM
356
380
  # CHEF\_DELIVERY\_ADMIN\_PASSWORD is set, one is generated and
357
381
  # returned in the response.
358
382
  #
383
+ # **Attributes accepted in a Puppet createServer request:**
384
+ #
385
+ # * `PUPPET_ADMIN_PASSWORD`\: To work with the Puppet Enterprise
386
+ # console, a password must use ASCII characters.
387
+ #
388
+ # ^
389
+ #
359
390
  # @option params [Integer] :backup_retention_count
360
391
  # The number of automated backups that you want to keep. Whenever a new
361
- # backup is created, AWS OpsWorks for Chef Automate deletes the oldest
362
- # backups if this number is exceeded. The default value is `1`.
392
+ # backup is created, AWS OpsWorks CM deletes the oldest backups if this
393
+ # number is exceeded. The default value is `1`.
363
394
  #
364
395
  # @option params [required, String] :server_name
365
396
  # The name of the server. The server name must be unique within your AWS
@@ -377,9 +408,9 @@ module Aws::OpsWorksCM
377
408
  # instance profile you need.
378
409
  #
379
410
  # @option params [required, String] :instance_type
380
- # The Amazon EC2 instance type to use. Valid values must be specified in
381
- # the following format: `^([cm][34]|t2).*` For example, `m4.large`.
382
- # Valid values are `t2.medium`, `m4.large`, or `m4.2xlarge`.
411
+ # The Amazon EC2 instance type to use. For example, `m4.large`.
412
+ # Recommended instance types include `t2.medium` and greater, `m4.*`, or
413
+ # `c4.xlarge` and greater.
383
414
  #
384
415
  # @option params [String] :key_pair
385
416
  # The Amazon EC2 key pair to set for the instance. This parameter is
@@ -388,20 +419,20 @@ module Aws::OpsWorksCM
388
419
  #
389
420
  # @option params [String] :preferred_maintenance_window
390
421
  # The start time for a one-hour period each week during which AWS
391
- # OpsWorks for Chef Automate performs maintenance on the instance. Valid
392
- # values must be specified in the following format: `DDD:HH:MM`. The
393
- # specified time is in coordinated universal time (UTC). The default
394
- # value is a random one-hour period on Tuesday, Wednesday, or Friday.
395
- # See `TimeWindowDefinition` for more information.
422
+ # OpsWorks CM performs maintenance on the instance. Valid values must be
423
+ # specified in the following format: `DDD:HH:MM`. The specified time is
424
+ # in coordinated universal time (UTC). The default value is a random
425
+ # one-hour period on Tuesday, Wednesday, or Friday. See
426
+ # `TimeWindowDefinition` for more information.
396
427
  #
397
428
  # **Example:** `Mon:08:00`, which represents a start time of every
398
429
  # Monday at 08:00 UTC. (8:00 a.m.)
399
430
  #
400
431
  # @option params [String] :preferred_backup_window
401
- # The start time for a one-hour period during which AWS OpsWorks for
402
- # Chef Automate backs up application-level data on your server if
403
- # automated backups are enabled. Valid values must be specified in one
404
- # of the following formats:
432
+ # The start time for a one-hour period during which AWS OpsWorks CM
433
+ # backs up application-level data on your server if automated backups
434
+ # are enabled. Valid values must be specified in one of the following
435
+ # formats:
405
436
  #
406
437
  # * `HH:MM` for daily backups
407
438
  #
@@ -421,19 +452,19 @@ module Aws::OpsWorksCM
421
452
  # you add this parameter, the specified security groups must be within
422
453
  # the VPC that is specified by `SubnetIds`.
423
454
  #
424
- # If you do not specify this parameter, AWS OpsWorks for Chef Automate
425
- # creates one new security group that uses TCP ports 22 and 443, open to
426
- # 0.0.0.0/0 (everyone).
455
+ # If you do not specify this parameter, AWS OpsWorks CM creates one new
456
+ # security group that uses TCP ports 22 and 443, open to 0.0.0.0/0
457
+ # (everyone).
427
458
  #
428
459
  # @option params [required, String] :service_role_arn
429
- # The service role that the AWS OpsWorks for Chef Automate service
430
- # backend uses to work with your account. Although the AWS OpsWorks
431
- # management console typically creates the service role for you, if you
432
- # are using the AWS CLI or API commands, run the
433
- # service-role-creation.yaml AWS CloudFormation template, located at
460
+ # The service role that the AWS OpsWorks CM service backend uses to work
461
+ # with your account. Although the AWS OpsWorks management console
462
+ # typically creates the service role for you, if you are using the AWS
463
+ # CLI or API commands, run the service-role-creation.yaml AWS
464
+ # CloudFormation template, located at
434
465
  # https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml.
435
466
  # This template creates a CloudFormation stack that includes the service
436
- # role that you need.
467
+ # role and instance profile that you need.
437
468
  #
438
469
  # @option params [Array<String>] :subnet_ids
439
470
  # The IDs of subnets in which to launch the server EC2 instance.
@@ -454,8 +485,8 @@ module Aws::OpsWorksCM
454
485
  # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html
455
486
  #
456
487
  # @option params [String] :backup_id
457
- # If you specify this field, AWS OpsWorks for Chef Automate creates the
458
- # server by using the backup represented by BackupId.
488
+ # If you specify this field, AWS OpsWorks CM creates the server by using
489
+ # the backup represented by BackupId.
459
490
  #
460
491
  # @return [Types::CreateServerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
461
492
  #
@@ -557,7 +588,7 @@ module Aws::OpsWorksCM
557
588
  req.send_request(options)
558
589
  end
559
590
 
560
- # Deletes the server and the underlying AWS CloudFormation stack
591
+ # Deletes the server and the underlying AWS CloudFormation stacks
561
592
  # (including the server's EC2 instance). When you run this command, the
562
593
  # server state is updated to `DELETING`. After the server is deleted, it
563
594
  # is no longer returned by `DescribeServer` requests. If the AWS
@@ -807,8 +838,7 @@ module Aws::OpsWorksCM
807
838
 
808
839
  # Lists all configuration management servers that are identified with
809
840
  # your account. Only the stored results from Amazon DynamoDB are
810
- # returned. AWS OpsWorks for Chef Automate does not query other
811
- # services.
841
+ # returned. AWS OpsWorks CM does not query other services.
812
842
  #
813
843
  # This operation is synchronous.
814
844
  #
@@ -890,10 +920,11 @@ module Aws::OpsWorksCM
890
920
  req.send_request(options)
891
921
  end
892
922
 
893
- # Disassociates a node from a Chef server, and removes the node from the
894
- # Chef server's managed nodes. After a node is disassociated, the node
895
- # key pair is no longer valid for accessing the Chef API. For more
896
- # information about how to associate a node, see AssociateNode.
923
+ # Disassociates a node from an AWS OpsWorks CM server, and removes the
924
+ # node from the server's managed nodes. After a node is disassociated,
925
+ # the node key pair is no longer valid for accessing the configuration
926
+ # manager's API. For more information about how to associate a node,
927
+ # see AssociateNode.
897
928
  #
898
929
  # A node can can only be disassociated from a server that is in a
899
930
  # `HEALTHY` state. Otherwise, an `InvalidStateException` is thrown. A
@@ -905,12 +936,13 @@ module Aws::OpsWorksCM
905
936
  # The name of the server from which to disassociate the node.
906
937
  #
907
938
  # @option params [required, String] :node_name
908
- # The name of the Chef client node.
939
+ # The name of the client node.
909
940
  #
910
941
  # @option params [Array<Types::EngineAttribute>] :engine_attributes
911
- # Engine attributes used for disassociating the node.
942
+ # Engine attributes that are used for disassociating the node. No
943
+ # attributes are required for Puppet.
912
944
  #
913
- # **Attributes accepted in a DisassociateNode request:**
945
+ # **Attributes required in a DisassociateNode request for Chef**
914
946
  #
915
947
  # * `CHEF_ORGANIZATION`\: The Chef organization with which the node was
916
948
  # associated. By default only one organization named `default` can
@@ -1155,8 +1187,10 @@ module Aws::OpsWorksCM
1155
1187
 
1156
1188
  # Updates engine-specific attributes on a specified server. The server
1157
1189
  # enters the `MODIFYING` state when this operation is in progress. Only
1158
- # one update can occur at a time. You can use this command to reset the
1159
- # Chef server's private key (`CHEF_PIVOTAL_KEY`).
1190
+ # one update can occur at a time. You can use this command to reset a
1191
+ # Chef server's private key (`CHEF_PIVOTAL_KEY`), a Chef server's
1192
+ # admin password (`CHEF_DELIVERY_ADMIN_PASSWORD`), or a Puppet server's
1193
+ # admin password (`PUPPET_ADMIN_PASSWORD`).
1160
1194
  #
1161
1195
  # This operation is asynchronous.
1162
1196
  #
@@ -1239,14 +1273,127 @@ module Aws::OpsWorksCM
1239
1273
  params: params,
1240
1274
  config: config)
1241
1275
  context[:gem_name] = 'aws-sdk-opsworkscm'
1242
- context[:gem_version] = '1.1.0'
1276
+ context[:gem_version] = '1.2.0'
1243
1277
  Seahorse::Client::Request.new(handlers, context)
1244
1278
  end
1245
1279
 
1280
+ # Polls an API operation until a resource enters a desired state.
1281
+ #
1282
+ # ## Basic Usage
1283
+ #
1284
+ # A waiter will call an API operation until:
1285
+ #
1286
+ # * It is successful
1287
+ # * It enters a terminal state
1288
+ # * It makes the maximum number of attempts
1289
+ #
1290
+ # In between attempts, the waiter will sleep.
1291
+ #
1292
+ # # polls in a loop, sleeping between attempts
1293
+ # client.waiter_until(waiter_name, params)
1294
+ #
1295
+ # ## Configuration
1296
+ #
1297
+ # You can configure the maximum number of polling attempts, and the
1298
+ # delay (in seconds) between each polling attempt. You can pass
1299
+ # configuration as the final arguments hash.
1300
+ #
1301
+ # # poll for ~25 seconds
1302
+ # client.wait_until(waiter_name, params, {
1303
+ # max_attempts: 5,
1304
+ # delay: 5,
1305
+ # })
1306
+ #
1307
+ # ## Callbacks
1308
+ #
1309
+ # You can be notified before each polling attempt and before each
1310
+ # delay. If you throw `:success` or `:failure` from these callbacks,
1311
+ # it will terminate the waiter.
1312
+ #
1313
+ # started_at = Time.now
1314
+ # client.wait_until(waiter_name, params, {
1315
+ #
1316
+ # # disable max attempts
1317
+ # max_attempts: nil,
1318
+ #
1319
+ # # poll for 1 hour, instead of a number of attempts
1320
+ # before_wait: -> (attempts, response) do
1321
+ # throw :failure if Time.now - started_at > 3600
1322
+ # end
1323
+ # })
1324
+ #
1325
+ # ## Handling Errors
1326
+ #
1327
+ # When a waiter is unsuccessful, it will raise an error.
1328
+ # All of the failure errors extend from
1329
+ # {Aws::Waiters::Errors::WaiterFailed}.
1330
+ #
1331
+ # begin
1332
+ # client.wait_until(...)
1333
+ # rescue Aws::Waiters::Errors::WaiterFailed
1334
+ # # resource did not enter the desired state in time
1335
+ # end
1336
+ #
1337
+ # ## Valid Waiters
1338
+ #
1339
+ # The following table lists the valid waiter names, the operations they call,
1340
+ # and the default `:delay` and `:max_attempts` values.
1341
+ #
1342
+ # | waiter_name | params | :delay | :max_attempts |
1343
+ # | --------------- | ----------------------------------- | -------- | ------------- |
1344
+ # | node_associated | {#describe_node_association_status} | 15 | 15 |
1345
+ #
1346
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
1347
+ # because the waiter has entered a state that it will not transition
1348
+ # out of, preventing success.
1349
+ #
1350
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
1351
+ # maximum number of attempts have been made, and the waiter is not
1352
+ # yet successful.
1353
+ #
1354
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
1355
+ # while polling for a resource that is not expected.
1356
+ #
1357
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
1358
+ # for an unknown state.
1359
+ #
1360
+ # @return [Boolean] Returns `true` if the waiter was successful.
1361
+ # @param [Symbol] waiter_name
1362
+ # @param [Hash] params ({})
1363
+ # @param [Hash] options ({})
1364
+ # @option options [Integer] :max_attempts
1365
+ # @option options [Integer] :delay
1366
+ # @option options [Proc] :before_attempt
1367
+ # @option options [Proc] :before_wait
1368
+ def wait_until(waiter_name, params = {}, options = {})
1369
+ w = waiter(waiter_name, options)
1370
+ yield(w.waiter) if block_given? # deprecated
1371
+ w.wait(params)
1372
+ end
1373
+
1246
1374
  # @api private
1247
1375
  # @deprecated
1248
1376
  def waiter_names
1249
- []
1377
+ waiters.keys
1378
+ end
1379
+
1380
+ private
1381
+
1382
+ # @param [Symbol] waiter_name
1383
+ # @param [Hash] options ({})
1384
+ def waiter(waiter_name, options = {})
1385
+ waiter_class = waiters[waiter_name]
1386
+ if waiter_class
1387
+ waiter_class.new(options.merge(client: self))
1388
+ else
1389
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
1390
+ end
1391
+ end
1392
+
1393
+ def waiters
1394
+ {
1395
+ node_associated: Waiters::NodeAssociated
1396
+ }
1250
1397
  end
1251
1398
 
1252
1399
  class << self
@@ -58,13 +58,13 @@ module Aws::OpsWorksCM
58
58
  # @return [String]
59
59
  #
60
60
  # @!attribute [rw] node_name
61
- # The name of the Chef client node.
61
+ # The name of the node.
62
62
  # @return [String]
63
63
  #
64
64
  # @!attribute [rw] engine_attributes
65
65
  # Engine attributes used for associating the node.
66
66
  #
67
- # **Attributes accepted in a AssociateNode request:**
67
+ # **Attributes accepted in a AssociateNode request for Chef**
68
68
  #
69
69
  # * `CHEF_ORGANIZATION`\: The Chef organization with which the node is
70
70
  # associated. By default only one organization named `default` can
@@ -72,6 +72,13 @@ module Aws::OpsWorksCM
72
72
  #
73
73
  # * `CHEF_NODE_PUBLIC_KEY`\: A PEM-formatted public key. This key is
74
74
  # required for the `chef-client` agent to access the Chef API.
75
+ #
76
+ # **Attributes accepted in a AssociateNode request for Puppet**
77
+ #
78
+ # * `PUPPET_NODE_CSR`\: A PEM-formatted certificate-signing request
79
+ # (CSR) that is created by the node.
80
+ #
81
+ # ^
75
82
  # @return [Array<Types::EngineAttribute>]
76
83
  #
77
84
  # @see http://docs.aws.amazon.com/goto/WebAPI/opsworkscm-2016-11-01/AssociateNodeRequest AWS API Documentation
@@ -203,8 +210,8 @@ module Aws::OpsWorksCM
203
210
  # @return [Array<String>]
204
211
  #
205
212
  # @!attribute [rw] tools_version
206
- # The version of AWS OpsWorks for Chef Automate-specific tools that is
207
- # obtained from the server when the backup is created.
213
+ # The version of AWS OpsWorks CM-specific tools that is obtained from
214
+ # the server when the backup is created.
208
215
  # @return [String]
209
216
  #
210
217
  # @!attribute [rw] user_arn
@@ -317,27 +324,29 @@ module Aws::OpsWorksCM
317
324
  #
318
325
  # @!attribute [rw] engine
319
326
  # The configuration management engine to use. Valid values include
320
- # `Chef`.
327
+ # `Chef` and `Puppet`.
321
328
  # @return [String]
322
329
  #
323
330
  # @!attribute [rw] engine_model
324
- # The engine model, or option. Valid values include `Single`.
331
+ # The engine model of the server. Valid values in this release include
332
+ # `Monolithic` for Puppet and `Single` for Chef.
325
333
  # @return [String]
326
334
  #
327
335
  # @!attribute [rw] engine_version
328
- # The major release version of the engine that you want to use. Values
329
- # depend on the engine that you choose.
336
+ # The major release version of the engine that you want to use. For a
337
+ # Chef server, the valid value for EngineVersion is currently `12`.
338
+ # For a Puppet server, the valid value is `2017`.
330
339
  # @return [String]
331
340
  #
332
341
  # @!attribute [rw] engine_attributes
333
342
  # Optional engine attributes on a specified server.
334
343
  #
335
- # **Attributes accepted in a createServer request:**
344
+ # **Attributes accepted in a Chef createServer request:**
336
345
  #
337
346
  # * `CHEF_PIVOTAL_KEY`\: A base64-encoded RSA private key that is not
338
- # stored by AWS OpsWorks for Chef. This private key is required to
339
- # access the Chef API. When no CHEF\_PIVOTAL\_KEY is set, one is
340
- # generated and returned in the response.
347
+ # stored by AWS OpsWorks for Chef Automate. This private key is
348
+ # required to access the Chef API. When no CHEF\_PIVOTAL\_KEY is
349
+ # set, one is generated and returned in the response.
341
350
  #
342
351
  # * `CHEF_DELIVERY_ADMIN_PASSWORD`\: The password for the
343
352
  # administrative user in the Chef Automate GUI. The password length
@@ -347,12 +356,19 @@ module Aws::OpsWorksCM
347
356
  # case letter, one upper case letter, one number, and one special
348
357
  # character. When no CHEF\_DELIVERY\_ADMIN\_PASSWORD is set, one is
349
358
  # generated and returned in the response.
359
+ #
360
+ # **Attributes accepted in a Puppet createServer request:**
361
+ #
362
+ # * `PUPPET_ADMIN_PASSWORD`\: To work with the Puppet Enterprise
363
+ # console, a password must use ASCII characters.
364
+ #
365
+ # ^
350
366
  # @return [Array<Types::EngineAttribute>]
351
367
  #
352
368
  # @!attribute [rw] backup_retention_count
353
369
  # The number of automated backups that you want to keep. Whenever a
354
- # new backup is created, AWS OpsWorks for Chef Automate deletes the
355
- # oldest backups if this number is exceeded. The default value is `1`.
370
+ # new backup is created, AWS OpsWorks CM deletes the oldest backups if
371
+ # this number is exceeded. The default value is `1`.
356
372
  # @return [Integer]
357
373
  #
358
374
  # @!attribute [rw] server_name
@@ -373,9 +389,9 @@ module Aws::OpsWorksCM
373
389
  # @return [String]
374
390
  #
375
391
  # @!attribute [rw] instance_type
376
- # The Amazon EC2 instance type to use. Valid values must be specified
377
- # in the following format: `^([cm][34]|t2).*` For example, `m4.large`.
378
- # Valid values are `t2.medium`, `m4.large`, or `m4.2xlarge`.
392
+ # The Amazon EC2 instance type to use. For example, `m4.large`.
393
+ # Recommended instance types include `t2.medium` and greater, `m4.*`,
394
+ # or `c4.xlarge` and greater.
379
395
  # @return [String]
380
396
  #
381
397
  # @!attribute [rw] key_pair
@@ -386,21 +402,21 @@ module Aws::OpsWorksCM
386
402
  #
387
403
  # @!attribute [rw] preferred_maintenance_window
388
404
  # The start time for a one-hour period each week during which AWS
389
- # OpsWorks for Chef Automate performs maintenance on the instance.
390
- # Valid values must be specified in the following format: `DDD:HH:MM`.
391
- # The specified time is in coordinated universal time (UTC). The
392
- # default value is a random one-hour period on Tuesday, Wednesday, or
393
- # Friday. See `TimeWindowDefinition` for more information.
405
+ # OpsWorks CM performs maintenance on the instance. Valid values must
406
+ # be specified in the following format: `DDD:HH:MM`. The specified
407
+ # time is in coordinated universal time (UTC). The default value is a
408
+ # random one-hour period on Tuesday, Wednesday, or Friday. See
409
+ # `TimeWindowDefinition` for more information.
394
410
  #
395
411
  # **Example:** `Mon:08:00`, which represents a start time of every
396
412
  # Monday at 08:00 UTC. (8:00 a.m.)
397
413
  # @return [String]
398
414
  #
399
415
  # @!attribute [rw] preferred_backup_window
400
- # The start time for a one-hour period during which AWS OpsWorks for
401
- # Chef Automate backs up application-level data on your server if
402
- # automated backups are enabled. Valid values must be specified in one
403
- # of the following formats:
416
+ # The start time for a one-hour period during which AWS OpsWorks CM
417
+ # backs up application-level data on your server if automated backups
418
+ # are enabled. Valid values must be specified in one of the following
419
+ # formats:
404
420
  #
405
421
  # * `HH:MM` for daily backups
406
422
  #
@@ -421,20 +437,20 @@ module Aws::OpsWorksCM
421
437
  # If you add this parameter, the specified security groups must be
422
438
  # within the VPC that is specified by `SubnetIds`.
423
439
  #
424
- # If you do not specify this parameter, AWS OpsWorks for Chef Automate
425
- # creates one new security group that uses TCP ports 22 and 443, open
426
- # to 0.0.0.0/0 (everyone).
440
+ # If you do not specify this parameter, AWS OpsWorks CM creates one
441
+ # new security group that uses TCP ports 22 and 443, open to 0.0.0.0/0
442
+ # (everyone).
427
443
  # @return [Array<String>]
428
444
  #
429
445
  # @!attribute [rw] service_role_arn
430
- # The service role that the AWS OpsWorks for Chef Automate service
431
- # backend uses to work with your account. Although the AWS OpsWorks
432
- # management console typically creates the service role for you, if
433
- # you are using the AWS CLI or API commands, run the
434
- # service-role-creation.yaml AWS CloudFormation template, located at
446
+ # The service role that the AWS OpsWorks CM service backend uses to
447
+ # work with your account. Although the AWS OpsWorks management console
448
+ # typically creates the service role for you, if you are using the AWS
449
+ # CLI or API commands, run the service-role-creation.yaml AWS
450
+ # CloudFormation template, located at
435
451
  # https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml.
436
452
  # This template creates a CloudFormation stack that includes the
437
- # service role that you need.
453
+ # service role and instance profile that you need.
438
454
  # @return [String]
439
455
  #
440
456
  # @!attribute [rw] subnet_ids
@@ -458,8 +474,8 @@ module Aws::OpsWorksCM
458
474
  # @return [Array<String>]
459
475
  #
460
476
  # @!attribute [rw] backup_id
461
- # If you specify this field, AWS OpsWorks for Chef Automate creates
462
- # the server by using the backup represented by BackupId.
477
+ # If you specify this field, AWS OpsWorks CM creates the server by
478
+ # using the backup represented by BackupId.
463
479
  # @return [String]
464
480
  #
465
481
  # @see http://docs.aws.amazon.com/goto/WebAPI/opsworkscm-2016-11-01/CreateServerRequest AWS API Documentation
@@ -736,7 +752,9 @@ module Aws::OpsWorksCM
736
752
  # @return [String]
737
753
  #
738
754
  # @!attribute [rw] engine_attributes
739
- # Attributes specific to the node association.
755
+ # Attributes specific to the node association. In Puppet, the attibute
756
+ # PUPPET\_NODE\_CERT contains the signed certificate (the result of
757
+ # the CSR).
740
758
  # @return [Array<Types::EngineAttribute>]
741
759
  #
742
760
  # @see http://docs.aws.amazon.com/goto/WebAPI/opsworkscm-2016-11-01/DescribeNodeAssociationStatusResponse AWS API Documentation
@@ -791,6 +809,12 @@ module Aws::OpsWorksCM
791
809
 
792
810
  # @!attribute [rw] servers
793
811
  # Contains the response to a `DescribeServers` request.
812
+ #
813
+ # *For Puppet Server:*
814
+ # `DescribeServersResponse$Servers$EngineAttributes` contains
815
+ # PUPPET\_API\_CA\_CERT. This is the PEM-encoded CA certificate that
816
+ # is used by the Puppet API over TCP port number 8140. The CA
817
+ # certificate is also used to sign node certificates.
794
818
  # @return [Array<Types::Server>]
795
819
  #
796
820
  # @!attribute [rw] next_token
@@ -832,13 +856,14 @@ module Aws::OpsWorksCM
832
856
  # @return [String]
833
857
  #
834
858
  # @!attribute [rw] node_name
835
- # The name of the Chef client node.
859
+ # The name of the client node.
836
860
  # @return [String]
837
861
  #
838
862
  # @!attribute [rw] engine_attributes
839
- # Engine attributes used for disassociating the node.
863
+ # Engine attributes that are used for disassociating the node. No
864
+ # attributes are required for Puppet.
840
865
  #
841
- # **Attributes accepted in a DisassociateNode request:**
866
+ # **Attributes required in a DisassociateNode request for Chef**
842
867
  #
843
868
  # * `CHEF_ORGANIZATION`\: The Chef organization with which the node
844
869
  # was associated. By default only one organization named `default`
@@ -974,22 +999,22 @@ module Aws::OpsWorksCM
974
999
  # @return [String]
975
1000
  #
976
1001
  # @!attribute [rw] engine
977
- # The engine type of the server. The valid value in this release is
978
- # `Chef`.
1002
+ # The engine type of the server. Valid values in this release include
1003
+ # `Chef` and `Puppet`.
979
1004
  # @return [String]
980
1005
  #
981
1006
  # @!attribute [rw] engine_model
982
- # The engine model of the server. The valid value in this release is
983
- # `Single`.
1007
+ # The engine model of the server. Valid values in this release include
1008
+ # `Monolithic` for Puppet and `Single` for Chef.
984
1009
  # @return [String]
985
1010
  #
986
1011
  # @!attribute [rw] engine_attributes
987
1012
  # The response of a createServer() request returns the master
988
1013
  # credential to access the server in EngineAttributes. These
989
- # credentials are not stored by AWS OpsWorks for Chef Automate; they
990
- # are returned only as part of the result of createServer().
1014
+ # credentials are not stored by AWS OpsWorks CM; they are returned
1015
+ # only as part of the result of createServer().
991
1016
  #
992
- # **Attributes returned in a createServer response:**
1017
+ # **Attributes returned in a createServer response for Chef**
993
1018
  #
994
1019
  # * `CHEF_PIVOTAL_KEY`\: A base64-encoded RSA private key that is
995
1020
  # generated by AWS OpsWorks for Chef Automate. This private key is
@@ -1001,12 +1026,23 @@ module Aws::OpsWorksCM
1001
1026
  # file, unzip it, and then change to the directory where you've
1002
1027
  # unzipped the file contents. From this directory, you can run Knife
1003
1028
  # commands.
1029
+ #
1030
+ # **Attributes returned in a createServer response for Puppet**
1031
+ #
1032
+ # * `PUPPET_STARTER_KIT`\: A base64-encoded ZIP file. The ZIP file
1033
+ # contains a Puppet starter kit, including a README and a required
1034
+ # private key. Save this file, unzip it, and then change to the
1035
+ # directory where you've unzipped the file contents.
1036
+ #
1037
+ # * `PUPPET_ADMIN_PASSWORD`\: An administrator password that you can
1038
+ # use to sign in to the Puppet Enterprise console after the server
1039
+ # is online.
1004
1040
  # @return [Array<Types::EngineAttribute>]
1005
1041
  #
1006
1042
  # @!attribute [rw] engine_version
1007
- # The engine version of the server. Because Chef is the engine
1008
- # available in this release, the valid value for EngineVersion is
1009
- # `12`.
1043
+ # The engine version of the server. For a Chef server, the valid value
1044
+ # for EngineVersion is currently `12`. For a Puppet server, the valid
1045
+ # value is `2017`.
1010
1046
  # @return [String]
1011
1047
  #
1012
1048
  # @!attribute [rw] instance_profile_arn
@@ -0,0 +1,58 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core/waiters'
9
+
10
+ module Aws::OpsWorksCM
11
+ module Waiters
12
+
13
+ # Wait until node is associated or disassociated.
14
+ class NodeAssociated
15
+
16
+ # @param [Hash] options
17
+ # @option options [required, Client] :client
18
+ # @option options [Integer] :max_attempts (15)
19
+ # @option options [Integer] :delay (15)
20
+ # @option options [Proc] :before_attempt
21
+ # @option options [Proc] :before_wait
22
+ def initialize(options)
23
+ @client = options.fetch(:client)
24
+ @waiter = Aws::Waiters::Waiter.new({
25
+ max_attempts: 15,
26
+ delay: 15,
27
+ poller: Aws::Waiters::Poller.new(
28
+ operation_name: :describe_node_association_status,
29
+ acceptors: [
30
+ {
31
+ "expected" => "SUCCESS",
32
+ "state" => "success",
33
+ "matcher" => "path",
34
+ "argument" => "node_association_status"
35
+ },
36
+ {
37
+ "expected" => "FAILED",
38
+ "state" => "failure",
39
+ "matcher" => "path",
40
+ "argument" => "node_association_status"
41
+ }
42
+ ]
43
+ )
44
+ }.merge(options))
45
+ end
46
+
47
+ # @option (see Client#describe_node_association_status)
48
+ # @return (see Client#describe_node_association_status)
49
+ def wait(params = {})
50
+ @waiter.wait(client: @client, params: params)
51
+ end
52
+
53
+ # @api private
54
+ attr_reader :waiter
55
+
56
+ end
57
+ end
58
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-opsworkscm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-10 00:00:00.000000000 Z
11
+ date: 2017-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -53,6 +53,7 @@ files:
53
53
  - lib/aws-sdk-opsworkscm/errors.rb
54
54
  - lib/aws-sdk-opsworkscm/resource.rb
55
55
  - lib/aws-sdk-opsworkscm/types.rb
56
+ - lib/aws-sdk-opsworkscm/waiters.rb
56
57
  homepage: http://github.com/aws/aws-sdk-ruby
57
58
  licenses:
58
59
  - Apache-2.0