aws-sdk-lambdamicrovms 1.0.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.
@@ -0,0 +1,2431 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::LambdaMicrovms
11
+ module Types
12
+
13
+ # You do not have sufficient access to perform this action.
14
+ #
15
+ # @!attribute [rw] message
16
+ # @return [String]
17
+ #
18
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/AccessDeniedException AWS API Documentation
19
+ #
20
+ class AccessDeniedException < Struct.new(
21
+ :message)
22
+ SENSITIVE = []
23
+ include Aws::Structure
24
+ end
25
+
26
+ # Configuration for Amazon CloudWatch Logs logging.
27
+ #
28
+ # @!attribute [rw] log_group
29
+ # The name of the CloudWatch Logs log group to send logs to.
30
+ # @return [String]
31
+ #
32
+ # @!attribute [rw] log_stream
33
+ # The name of the CloudWatch Logs log stream within the log group.
34
+ # @return [String]
35
+ #
36
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CloudWatchLogging AWS API Documentation
37
+ #
38
+ class CloudWatchLogging < Struct.new(
39
+ :log_group,
40
+ :log_stream)
41
+ SENSITIVE = []
42
+ include Aws::Structure
43
+ end
44
+
45
+ # Contains the location of the code artifact for a MicroVM image.
46
+ #
47
+ # @note CodeArtifact is a union - when making an API calls you must set exactly one of the members.
48
+ #
49
+ # @note CodeArtifact is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of CodeArtifact corresponding to the set member.
50
+ #
51
+ # @!attribute [rw] uri
52
+ # The URI of the code artifact, such as an Amazon S3 path or Amazon
53
+ # ECR image URI.
54
+ # @return [String]
55
+ #
56
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CodeArtifact AWS API Documentation
57
+ #
58
+ class CodeArtifact < Struct.new(
59
+ :uri,
60
+ :unknown)
61
+ SENSITIVE = []
62
+ include Aws::Structure
63
+ include Aws::Structure::Union
64
+
65
+ class Uri < CodeArtifact; end
66
+ class Unknown < CodeArtifact; end
67
+ end
68
+
69
+ # The request could not be completed due to a conflict with the current
70
+ # state of the resource.
71
+ #
72
+ # @!attribute [rw] message
73
+ # @return [String]
74
+ #
75
+ # @!attribute [rw] resource_id
76
+ # The identifier of the resource that caused the conflict.
77
+ # @return [String]
78
+ #
79
+ # @!attribute [rw] resource_type
80
+ # The type of the resource that caused the conflict.
81
+ # @return [String]
82
+ #
83
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ConflictException AWS API Documentation
84
+ #
85
+ class ConflictException < Struct.new(
86
+ :message,
87
+ :resource_id,
88
+ :resource_type)
89
+ SENSITIVE = []
90
+ include Aws::Structure
91
+ end
92
+
93
+ # Configuration for the CPU architecture of a MicroVM.
94
+ #
95
+ # @!attribute [rw] architecture
96
+ # The CPU architecture.
97
+ # @return [String]
98
+ #
99
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CpuConfiguration AWS API Documentation
100
+ #
101
+ class CpuConfiguration < Struct.new(
102
+ :architecture)
103
+ SENSITIVE = []
104
+ include Aws::Structure
105
+ end
106
+
107
+ # @!attribute [rw] microvm_identifier
108
+ # The ID of the MicroVM to create an authentication token for.
109
+ # @return [String]
110
+ #
111
+ # @!attribute [rw] expiration_in_minutes
112
+ # The duration in minutes before the authentication token expires.
113
+ # Maximum: 60 minutes.
114
+ # @return [Integer]
115
+ #
116
+ # @!attribute [rw] allowed_ports
117
+ # The list of port specifications that the authentication token grants
118
+ # access to on the MicroVM.
119
+ # @return [Array<Types::PortSpecification>]
120
+ #
121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CreateMicrovmAuthTokenRequest AWS API Documentation
122
+ #
123
+ class CreateMicrovmAuthTokenRequest < Struct.new(
124
+ :microvm_identifier,
125
+ :expiration_in_minutes,
126
+ :allowed_ports)
127
+ SENSITIVE = []
128
+ include Aws::Structure
129
+ end
130
+
131
+ # @!attribute [rw] auth_token
132
+ # A map containing the authentication token. Use the value at key
133
+ # "X-aws-proxy-auth" as the header value when connecting to the
134
+ # MicroVM endpoint.
135
+ # @return [Hash<String,String>]
136
+ #
137
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CreateMicrovmAuthTokenResponse AWS API Documentation
138
+ #
139
+ class CreateMicrovmAuthTokenResponse < Struct.new(
140
+ :auth_token)
141
+ SENSITIVE = [:auth_token]
142
+ include Aws::Structure
143
+ end
144
+
145
+ # @!attribute [rw] base_image_arn
146
+ # The ARN of the Lambda-managed base MicroVM image to build upon. Use
147
+ # ListManagedMicrovmImages to discover available base images.
148
+ # @return [String]
149
+ #
150
+ # @!attribute [rw] base_image_version
151
+ # The specific version of the base MicroVM image to use.
152
+ # @return [String]
153
+ #
154
+ # @!attribute [rw] build_role_arn
155
+ # The ARN of the IAM role assumed during the image build process. This
156
+ # role must have permissions to access the code artifact and any
157
+ # required resources.
158
+ # @return [String]
159
+ #
160
+ # @!attribute [rw] description
161
+ # A description of the MicroVM image.
162
+ # @return [String]
163
+ #
164
+ # @!attribute [rw] code_artifact
165
+ # The code artifact containing the application code and metadata for
166
+ # the MicroVM image.
167
+ # @return [Types::CodeArtifact]
168
+ #
169
+ # @!attribute [rw] logging
170
+ # The logging configuration for build-time and runtime logs. Specify
171
+ # \{"cloudWatch": \{"logGroup": "..."}} to stream logs to a
172
+ # custom CloudWatch log group, or \{"disabled": \{}} to turn off
173
+ # logging.
174
+ # @return [Types::Logging]
175
+ #
176
+ # @!attribute [rw] egress_network_connectors
177
+ # The list of egress network connectors available to the MicroVM at
178
+ # runtime.
179
+ # @return [Array<String>]
180
+ #
181
+ # @!attribute [rw] cpu_configurations
182
+ # The list of supported CPU configurations for the MicroVM.
183
+ # @return [Array<Types::CpuConfiguration>]
184
+ #
185
+ # @!attribute [rw] resources
186
+ # The resource requirements for the MicroVM.
187
+ # @return [Array<Types::Resources>]
188
+ #
189
+ # @!attribute [rw] additional_os_capabilities
190
+ # Additional OS capabilities granted to the MicroVM runtime
191
+ # environment.
192
+ # @return [Array<String>]
193
+ #
194
+ # @!attribute [rw] hooks
195
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
196
+ # @return [Types::Hooks]
197
+ #
198
+ # @!attribute [rw] environment_variables
199
+ # Environment variables set in the MicroVM runtime environment.
200
+ # @return [Hash<String,String>]
201
+ #
202
+ # @!attribute [rw] name
203
+ # The name of the MicroVM image. Must be unique within the AWS
204
+ # account.
205
+ # @return [String]
206
+ #
207
+ # @!attribute [rw] tags
208
+ # A set of key-value pairs that you can attach to the resource. Use
209
+ # tags to categorize resources for cost allocation, access control
210
+ # (ABAC), and organization.
211
+ # @return [Hash<String,String>]
212
+ #
213
+ # @!attribute [rw] client_token
214
+ # A unique, case-sensitive identifier you provide to ensure the
215
+ # idempotency of the request. If you retry a request that completed
216
+ # successfully using the same client token, the operation returns the
217
+ # successful response without performing any further actions.
218
+ #
219
+ # **A suitable default value is auto-generated.** You should normally
220
+ # not need to pass this option.
221
+ # @return [String]
222
+ #
223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CreateMicrovmImageRequest AWS API Documentation
224
+ #
225
+ class CreateMicrovmImageRequest < Struct.new(
226
+ :base_image_arn,
227
+ :base_image_version,
228
+ :build_role_arn,
229
+ :description,
230
+ :code_artifact,
231
+ :logging,
232
+ :egress_network_connectors,
233
+ :cpu_configurations,
234
+ :resources,
235
+ :additional_os_capabilities,
236
+ :hooks,
237
+ :environment_variables,
238
+ :name,
239
+ :tags,
240
+ :client_token)
241
+ SENSITIVE = []
242
+ include Aws::Structure
243
+ end
244
+
245
+ # @!attribute [rw] image_arn
246
+ # The ARN of the created MicroVM image.
247
+ # @return [String]
248
+ #
249
+ # @!attribute [rw] name
250
+ # The name of the MicroVM image.
251
+ # @return [String]
252
+ #
253
+ # @!attribute [rw] state
254
+ # The current state of the MicroVM image.
255
+ # @return [String]
256
+ #
257
+ # @!attribute [rw] latest_active_image_version
258
+ # The latest active version of the MicroVM image.
259
+ # @return [String]
260
+ #
261
+ # @!attribute [rw] latest_failed_image_version
262
+ # The latest failed version of the MicroVM image, if any.
263
+ # @return [String]
264
+ #
265
+ # @!attribute [rw] created_at
266
+ # The timestamp when the MicroVM image was created.
267
+ # @return [Time]
268
+ #
269
+ # @!attribute [rw] base_image_arn
270
+ # The ARN of the base MicroVM image.
271
+ # @return [String]
272
+ #
273
+ # @!attribute [rw] base_image_version
274
+ # The specific version of the base MicroVM image.
275
+ # @return [String]
276
+ #
277
+ # @!attribute [rw] build_role_arn
278
+ # The ARN of the IAM build role.
279
+ # @return [String]
280
+ #
281
+ # @!attribute [rw] description
282
+ # The description of the MicroVM image.
283
+ # @return [String]
284
+ #
285
+ # @!attribute [rw] code_artifact
286
+ # The code artifact containing the application code and metadata for
287
+ # the MicroVM image.
288
+ # @return [Types::CodeArtifact]
289
+ #
290
+ # @!attribute [rw] logging
291
+ # The logging configuration for build-time and runtime logs. Specify
292
+ # \{"cloudWatch": \{"logGroup": "..."}} to stream logs to a
293
+ # custom CloudWatch log group, or \{"disabled": \{}} to turn off
294
+ # logging.
295
+ # @return [Types::Logging]
296
+ #
297
+ # @!attribute [rw] egress_network_connectors
298
+ # The list of egress network connectors available to the MicroVM at
299
+ # runtime.
300
+ # @return [Array<String>]
301
+ #
302
+ # @!attribute [rw] cpu_configurations
303
+ # The list of supported CPU configurations for the MicroVM.
304
+ # @return [Array<Types::CpuConfiguration>]
305
+ #
306
+ # @!attribute [rw] resources
307
+ # The resource requirements for the MicroVM.
308
+ # @return [Array<Types::Resources>]
309
+ #
310
+ # @!attribute [rw] additional_os_capabilities
311
+ # Additional OS capabilities granted to the MicroVM runtime
312
+ # environment.
313
+ # @return [Array<String>]
314
+ #
315
+ # @!attribute [rw] hooks
316
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
317
+ # @return [Types::Hooks]
318
+ #
319
+ # @!attribute [rw] environment_variables
320
+ # Environment variables set in the MicroVM runtime environment.
321
+ # @return [Hash<String,String>]
322
+ #
323
+ # @!attribute [rw] tags
324
+ # A set of key-value pairs that you can attach to the resource. Use
325
+ # tags to categorize resources for cost allocation, access control
326
+ # (ABAC), and organization.
327
+ # @return [Hash<String,String>]
328
+ #
329
+ # @!attribute [rw] updated_at
330
+ # The timestamp when the MicroVM image was last updated.
331
+ # @return [Time]
332
+ #
333
+ # @!attribute [rw] image_version
334
+ # The version of the MicroVM image.
335
+ # @return [String]
336
+ #
337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CreateMicrovmImageResponse AWS API Documentation
338
+ #
339
+ class CreateMicrovmImageResponse < Struct.new(
340
+ :image_arn,
341
+ :name,
342
+ :state,
343
+ :latest_active_image_version,
344
+ :latest_failed_image_version,
345
+ :created_at,
346
+ :base_image_arn,
347
+ :base_image_version,
348
+ :build_role_arn,
349
+ :description,
350
+ :code_artifact,
351
+ :logging,
352
+ :egress_network_connectors,
353
+ :cpu_configurations,
354
+ :resources,
355
+ :additional_os_capabilities,
356
+ :hooks,
357
+ :environment_variables,
358
+ :tags,
359
+ :updated_at,
360
+ :image_version)
361
+ SENSITIVE = []
362
+ include Aws::Structure
363
+ end
364
+
365
+ # @!attribute [rw] microvm_identifier
366
+ # The ID of the MicroVM to create a shell authentication token for.
367
+ # @return [String]
368
+ #
369
+ # @!attribute [rw] expiration_in_minutes
370
+ # The duration in minutes before the shell authentication token
371
+ # expires.
372
+ # @return [Integer]
373
+ #
374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CreateMicrovmShellAuthTokenRequest AWS API Documentation
375
+ #
376
+ class CreateMicrovmShellAuthTokenRequest < Struct.new(
377
+ :microvm_identifier,
378
+ :expiration_in_minutes)
379
+ SENSITIVE = []
380
+ include Aws::Structure
381
+ end
382
+
383
+ # @!attribute [rw] auth_token
384
+ # The generated shell authentication token key-value pairs for
385
+ # accessing the MicroVM.
386
+ # @return [Hash<String,String>]
387
+ #
388
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/CreateMicrovmShellAuthTokenResponse AWS API Documentation
389
+ #
390
+ class CreateMicrovmShellAuthTokenResponse < Struct.new(
391
+ :auth_token)
392
+ SENSITIVE = [:auth_token]
393
+ include Aws::Structure
394
+ end
395
+
396
+ # @!attribute [rw] image_identifier
397
+ # The unique identifier (ARN or ID) of the MicroVM image to delete.
398
+ # @return [String]
399
+ #
400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/DeleteMicrovmImageInput AWS API Documentation
401
+ #
402
+ class DeleteMicrovmImageInput < Struct.new(
403
+ :image_identifier)
404
+ SENSITIVE = []
405
+ include Aws::Structure
406
+ end
407
+
408
+ # @!attribute [rw] image_identifier
409
+ # The identifier of the deleted MicroVM image.
410
+ # @return [String]
411
+ #
412
+ # @!attribute [rw] state
413
+ # The current state of the MicroVM image after deletion.
414
+ # @return [String]
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/DeleteMicrovmImageOutput AWS API Documentation
417
+ #
418
+ class DeleteMicrovmImageOutput < Struct.new(
419
+ :image_identifier,
420
+ :state)
421
+ SENSITIVE = []
422
+ include Aws::Structure
423
+ end
424
+
425
+ # @!attribute [rw] image_identifier
426
+ # The unique identifier (ARN or ID) of the MicroVM image.
427
+ # @return [String]
428
+ #
429
+ # @!attribute [rw] image_version
430
+ # The version of the MicroVM image to delete.
431
+ # @return [String]
432
+ #
433
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/DeleteMicrovmImageVersionInput AWS API Documentation
434
+ #
435
+ class DeleteMicrovmImageVersionInput < Struct.new(
436
+ :image_identifier,
437
+ :image_version)
438
+ SENSITIVE = []
439
+ include Aws::Structure
440
+ end
441
+
442
+ # @!attribute [rw] image_identifier
443
+ # The identifier of the MicroVM image.
444
+ # @return [String]
445
+ #
446
+ # @!attribute [rw] image_version
447
+ # The version that was deleted.
448
+ # @return [String]
449
+ #
450
+ # @!attribute [rw] state
451
+ # The current state of the MicroVM image version after deletion.
452
+ # @return [String]
453
+ #
454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/DeleteMicrovmImageVersionOutput AWS API Documentation
455
+ #
456
+ class DeleteMicrovmImageVersionOutput < Struct.new(
457
+ :image_identifier,
458
+ :image_version,
459
+ :state)
460
+ SENSITIVE = []
461
+ include Aws::Structure
462
+ end
463
+
464
+ # @!attribute [rw] image_identifier
465
+ # The unique identifier (ARN or ID) of the MicroVM image.
466
+ # @return [String]
467
+ #
468
+ # @!attribute [rw] image_version
469
+ # The version of the MicroVM image.
470
+ # @return [String]
471
+ #
472
+ # @!attribute [rw] build_id
473
+ # The unique identifier of the build to retrieve.
474
+ # @return [String]
475
+ #
476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmImageBuildInput AWS API Documentation
477
+ #
478
+ class GetMicrovmImageBuildInput < Struct.new(
479
+ :image_identifier,
480
+ :image_version,
481
+ :build_id)
482
+ SENSITIVE = []
483
+ include Aws::Structure
484
+ end
485
+
486
+ # @!attribute [rw] image_arn
487
+ # The ARN of the MicroVM image.
488
+ # @return [String]
489
+ #
490
+ # @!attribute [rw] image_version
491
+ # The version of the MicroVM image.
492
+ # @return [String]
493
+ #
494
+ # @!attribute [rw] build_id
495
+ # The build request ID.
496
+ # @return [String]
497
+ #
498
+ # @!attribute [rw] build_state
499
+ # The current state of the build.
500
+ # @return [String]
501
+ #
502
+ # @!attribute [rw] architecture
503
+ # The target CPU architecture for the build. Supported value: ARM\_64.
504
+ # @return [String]
505
+ #
506
+ # @!attribute [rw] chipset
507
+ # The target chipset for the build.
508
+ # @return [String]
509
+ #
510
+ # @!attribute [rw] chipset_generation
511
+ # The target chipset generation for the build.
512
+ # @return [String]
513
+ #
514
+ # @!attribute [rw] state_reason
515
+ # The reason for the build state, if applicable.
516
+ # @return [String]
517
+ #
518
+ # @!attribute [rw] created_at
519
+ # The timestamp when the build was created.
520
+ # @return [Time]
521
+ #
522
+ # @!attribute [rw] snapshot_build
523
+ # The snapshot build details, including memory and disk snapshot
524
+ # sizes.
525
+ # @return [Types::SnapshotBuild]
526
+ #
527
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmImageBuildOutput AWS API Documentation
528
+ #
529
+ class GetMicrovmImageBuildOutput < Struct.new(
530
+ :image_arn,
531
+ :image_version,
532
+ :build_id,
533
+ :build_state,
534
+ :architecture,
535
+ :chipset,
536
+ :chipset_generation,
537
+ :state_reason,
538
+ :created_at,
539
+ :snapshot_build)
540
+ SENSITIVE = []
541
+ include Aws::Structure
542
+ end
543
+
544
+ # @!attribute [rw] image_identifier
545
+ # The unique identifier (ARN or ID) of the MicroVM image to retrieve.
546
+ # @return [String]
547
+ #
548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmImageInput AWS API Documentation
549
+ #
550
+ class GetMicrovmImageInput < Struct.new(
551
+ :image_identifier)
552
+ SENSITIVE = []
553
+ include Aws::Structure
554
+ end
555
+
556
+ # @!attribute [rw] image_arn
557
+ # The ARN of the MicroVM image.
558
+ # @return [String]
559
+ #
560
+ # @!attribute [rw] name
561
+ # The name of the MicroVM image.
562
+ # @return [String]
563
+ #
564
+ # @!attribute [rw] state
565
+ # The current state of the MicroVM image.
566
+ # @return [String]
567
+ #
568
+ # @!attribute [rw] latest_active_image_version
569
+ # The latest active version of the MicroVM image.
570
+ # @return [String]
571
+ #
572
+ # @!attribute [rw] latest_failed_image_version
573
+ # The latest failed version of the MicroVM image, if any.
574
+ # @return [String]
575
+ #
576
+ # @!attribute [rw] created_at
577
+ # The timestamp when the MicroVM image was created.
578
+ # @return [Time]
579
+ #
580
+ # @!attribute [rw] tags
581
+ # A set of key-value pairs that you can attach to the resource. Use
582
+ # tags to categorize resources for cost allocation, access control
583
+ # (ABAC), and organization.
584
+ # @return [Hash<String,String>]
585
+ #
586
+ # @!attribute [rw] updated_at
587
+ # The timestamp when the MicroVM image was last updated.
588
+ # @return [Time]
589
+ #
590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmImageOutput AWS API Documentation
591
+ #
592
+ class GetMicrovmImageOutput < Struct.new(
593
+ :image_arn,
594
+ :name,
595
+ :state,
596
+ :latest_active_image_version,
597
+ :latest_failed_image_version,
598
+ :created_at,
599
+ :tags,
600
+ :updated_at)
601
+ SENSITIVE = []
602
+ include Aws::Structure
603
+ end
604
+
605
+ # @!attribute [rw] image_identifier
606
+ # The unique identifier (ARN or ID) of the MicroVM image.
607
+ # @return [String]
608
+ #
609
+ # @!attribute [rw] image_version
610
+ # The version of the MicroVM image to retrieve.
611
+ # @return [String]
612
+ #
613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmImageVersionInput AWS API Documentation
614
+ #
615
+ class GetMicrovmImageVersionInput < Struct.new(
616
+ :image_identifier,
617
+ :image_version)
618
+ SENSITIVE = []
619
+ include Aws::Structure
620
+ end
621
+
622
+ # @!attribute [rw] base_image_arn
623
+ # The ARN of the base MicroVM image used.
624
+ # @return [String]
625
+ #
626
+ # @!attribute [rw] base_image_version
627
+ # The specific version of the base MicroVM image.
628
+ # @return [String]
629
+ #
630
+ # @!attribute [rw] build_role_arn
631
+ # The ARN of the IAM build role.
632
+ # @return [String]
633
+ #
634
+ # @!attribute [rw] description
635
+ # The description of the version.
636
+ # @return [String]
637
+ #
638
+ # @!attribute [rw] code_artifact
639
+ # The code artifact for this version.
640
+ # @return [Types::CodeArtifact]
641
+ #
642
+ # @!attribute [rw] logging
643
+ # The logging configuration for this version.
644
+ # @return [Types::Logging]
645
+ #
646
+ # @!attribute [rw] egress_network_connectors
647
+ # The list of egress network connectors available to the MicroVM at
648
+ # runtime.
649
+ # @return [Array<String>]
650
+ #
651
+ # @!attribute [rw] cpu_configurations
652
+ # The list of supported CPU configurations for the MicroVM.
653
+ # @return [Array<Types::CpuConfiguration>]
654
+ #
655
+ # @!attribute [rw] resources
656
+ # The resource requirements for the MicroVM.
657
+ # @return [Array<Types::Resources>]
658
+ #
659
+ # @!attribute [rw] additional_os_capabilities
660
+ # Additional OS capabilities granted to the MicroVM runtime
661
+ # environment.
662
+ # @return [Array<String>]
663
+ #
664
+ # @!attribute [rw] hooks
665
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
666
+ # @return [Types::Hooks]
667
+ #
668
+ # @!attribute [rw] environment_variables
669
+ # Environment variables set in the MicroVM runtime environment.
670
+ # @return [Hash<String,String>]
671
+ #
672
+ # @!attribute [rw] image_arn
673
+ # The ARN of the MicroVM image.
674
+ # @return [String]
675
+ #
676
+ # @!attribute [rw] image_version
677
+ # The version of the MicroVM image.
678
+ # @return [String]
679
+ #
680
+ # @!attribute [rw] state
681
+ # The current state of the version.
682
+ # @return [String]
683
+ #
684
+ # @!attribute [rw] status
685
+ # The availability status of the version: ACTIVE (can be used by
686
+ # RunMicrovm) or INACTIVE (blocked from launching new MicroVMs).
687
+ # @return [String]
688
+ #
689
+ # @!attribute [rw] created_at
690
+ # The timestamp when the version was created.
691
+ # @return [Time]
692
+ #
693
+ # @!attribute [rw] updated_at
694
+ # The timestamp when the version was last updated.
695
+ # @return [Time]
696
+ #
697
+ # @!attribute [rw] state_reason
698
+ # The reason for the current state. For example, one or more builds
699
+ # failed.
700
+ # @return [String]
701
+ #
702
+ # @!attribute [rw] tags
703
+ # Key-value pairs associated with the version.
704
+ # @return [Hash<String,String>]
705
+ #
706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmImageVersionOutput AWS API Documentation
707
+ #
708
+ class GetMicrovmImageVersionOutput < Struct.new(
709
+ :base_image_arn,
710
+ :base_image_version,
711
+ :build_role_arn,
712
+ :description,
713
+ :code_artifact,
714
+ :logging,
715
+ :egress_network_connectors,
716
+ :cpu_configurations,
717
+ :resources,
718
+ :additional_os_capabilities,
719
+ :hooks,
720
+ :environment_variables,
721
+ :image_arn,
722
+ :image_version,
723
+ :state,
724
+ :status,
725
+ :created_at,
726
+ :updated_at,
727
+ :state_reason,
728
+ :tags)
729
+ SENSITIVE = []
730
+ include Aws::Structure
731
+ end
732
+
733
+ # @!attribute [rw] microvm_identifier
734
+ # The ID of the MicroVM to retrieve.
735
+ # @return [String]
736
+ #
737
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmRequest AWS API Documentation
738
+ #
739
+ class GetMicrovmRequest < Struct.new(
740
+ :microvm_identifier)
741
+ SENSITIVE = []
742
+ include Aws::Structure
743
+ end
744
+
745
+ # @!attribute [rw] microvm_id
746
+ # The unique identifier of the MicroVM.
747
+ # @return [String]
748
+ #
749
+ # @!attribute [rw] state
750
+ # The current lifecycle state of the MicroVM.
751
+ # @return [String]
752
+ #
753
+ # @!attribute [rw] endpoint
754
+ # The HTTPS endpoint URL for communicating with the MicroVM. Include a
755
+ # valid authentication token in the X-aws-proxy-auth header when
756
+ # sending requests.
757
+ # @return [String]
758
+ #
759
+ # @!attribute [rw] image_arn
760
+ # The ARN of the MicroVM image used to run this MicroVM.
761
+ # @return [String]
762
+ #
763
+ # @!attribute [rw] image_version
764
+ # The version of the MicroVM image used to run this MicroVM.
765
+ # @return [String]
766
+ #
767
+ # @!attribute [rw] execution_role_arn
768
+ # The ARN of the IAM execution role assumed by the MicroVM.
769
+ # @return [String]
770
+ #
771
+ # @!attribute [rw] idle_policy
772
+ # The idle policy configuration of the MicroVM, controlling
773
+ # auto-suspend and auto-resume behavior.
774
+ # @return [Types::IdlePolicy]
775
+ #
776
+ # @!attribute [rw] maximum_duration_in_seconds
777
+ # The maximum duration in seconds that the MicroVM can exist before
778
+ # being terminated by the platform.
779
+ # @return [Integer]
780
+ #
781
+ # @!attribute [rw] started_at
782
+ # The timestamp when the MicroVM first started.
783
+ # @return [Time]
784
+ #
785
+ # @!attribute [rw] terminated_at
786
+ # The timestamp when the MicroVM terminated.
787
+ # @return [Time]
788
+ #
789
+ # @!attribute [rw] state_reason
790
+ # The reason for why the MicroVM is in the current state.
791
+ # @return [String]
792
+ #
793
+ # @!attribute [rw] ingress_network_connectors
794
+ # The list of ingress network connectors configured for the MicroVM.
795
+ # @return [Array<String>]
796
+ #
797
+ # @!attribute [rw] egress_network_connectors
798
+ # The list of egress network connectors configured for the MicroVM.
799
+ # @return [Array<String>]
800
+ #
801
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/GetMicrovmResponse AWS API Documentation
802
+ #
803
+ class GetMicrovmResponse < Struct.new(
804
+ :microvm_id,
805
+ :state,
806
+ :endpoint,
807
+ :image_arn,
808
+ :image_version,
809
+ :execution_role_arn,
810
+ :idle_policy,
811
+ :maximum_duration_in_seconds,
812
+ :started_at,
813
+ :terminated_at,
814
+ :state_reason,
815
+ :ingress_network_connectors,
816
+ :egress_network_connectors)
817
+ SENSITIVE = []
818
+ include Aws::Structure
819
+ end
820
+
821
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
822
+ #
823
+ # @!attribute [rw] port
824
+ # The port number on which the hooks listener runs.
825
+ # @return [Integer]
826
+ #
827
+ # @!attribute [rw] microvm_hooks
828
+ # The lifecycle hooks for MicroVM events.
829
+ # @return [Types::MicrovmHooks]
830
+ #
831
+ # @!attribute [rw] microvm_image_hooks
832
+ # The hooks for MicroVM image build events.
833
+ # @return [Types::MicrovmImageHooks]
834
+ #
835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/Hooks AWS API Documentation
836
+ #
837
+ class Hooks < Struct.new(
838
+ :port,
839
+ :microvm_hooks,
840
+ :microvm_image_hooks)
841
+ SENSITIVE = []
842
+ include Aws::Structure
843
+ end
844
+
845
+ # Configuration that controls MicroVM auto-suspend and auto-resume
846
+ # behavior. Idle time is measured by inbound traffic through the MicroVM
847
+ # proxy endpoint — if no requests arrive within the configured duration,
848
+ # the MicroVM is suspended.
849
+ #
850
+ # @!attribute [rw] max_idle_duration_seconds
851
+ # The maximum time in seconds that a MicroVM can remain idle before it
852
+ # is automatically suspended.
853
+ # @return [Integer]
854
+ #
855
+ # @!attribute [rw] suspended_duration_seconds
856
+ # The maximum time in seconds that a MicroVM can remain suspended
857
+ # before it is automatically terminated.
858
+ # @return [Integer]
859
+ #
860
+ # @!attribute [rw] auto_resume_enabled
861
+ # Indicates whether the MicroVM automatically resumes when it receives
862
+ # a request while suspended.
863
+ # @return [Boolean]
864
+ #
865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/IdlePolicy AWS API Documentation
866
+ #
867
+ class IdlePolicy < Struct.new(
868
+ :max_idle_duration_seconds,
869
+ :suspended_duration_seconds,
870
+ :auto_resume_enabled)
871
+ SENSITIVE = []
872
+ include Aws::Structure
873
+ end
874
+
875
+ # An internal server error occurred. Retry the request later.
876
+ #
877
+ # @!attribute [rw] message
878
+ # @return [String]
879
+ #
880
+ # @!attribute [rw] retry_after_seconds
881
+ # The number of seconds to wait before retrying the request.
882
+ # @return [Integer]
883
+ #
884
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/InternalServerException AWS API Documentation
885
+ #
886
+ class InternalServerException < Struct.new(
887
+ :message,
888
+ :retry_after_seconds)
889
+ SENSITIVE = []
890
+ include Aws::Structure
891
+ end
892
+
893
+ # One of the parameters in the request is not valid.
894
+ #
895
+ # @!attribute [rw] type
896
+ # The exception type.
897
+ # @return [String]
898
+ #
899
+ # @!attribute [rw] message
900
+ # @return [String]
901
+ #
902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/InvalidParameterValueException AWS API Documentation
903
+ #
904
+ class InvalidParameterValueException < Struct.new(
905
+ :type,
906
+ :message)
907
+ SENSITIVE = []
908
+ include Aws::Structure
909
+ end
910
+
911
+ # @!attribute [rw] max_results
912
+ # The maximum number of results to return in a single call.
913
+ # @return [Integer]
914
+ #
915
+ # @!attribute [rw] next_token
916
+ # The pagination token from a previous call. Use this token to
917
+ # retrieve the next page of results.
918
+ # @return [String]
919
+ #
920
+ # @!attribute [rw] image_identifier
921
+ # The unique identifier (ARN or ID) of the managed MicroVM image to
922
+ # list versions for.
923
+ # @return [String]
924
+ #
925
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListManagedMicrovmImageVersionsInput AWS API Documentation
926
+ #
927
+ class ListManagedMicrovmImageVersionsInput < Struct.new(
928
+ :max_results,
929
+ :next_token,
930
+ :image_identifier)
931
+ SENSITIVE = []
932
+ include Aws::Structure
933
+ end
934
+
935
+ # @!attribute [rw] next_token
936
+ # The pagination token to use in a subsequent request to retrieve the
937
+ # next page of results. This value is null when there are no more
938
+ # results to return.
939
+ # @return [String]
940
+ #
941
+ # @!attribute [rw] items
942
+ # The list of managed MicroVM image versions.
943
+ # @return [Array<Types::ManagedMicrovmImageVersion>]
944
+ #
945
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListManagedMicrovmImageVersionsOutput AWS API Documentation
946
+ #
947
+ class ListManagedMicrovmImageVersionsOutput < Struct.new(
948
+ :next_token,
949
+ :items)
950
+ SENSITIVE = []
951
+ include Aws::Structure
952
+ end
953
+
954
+ # @!attribute [rw] max_results
955
+ # The maximum number of results to return in a single call.
956
+ # @return [Integer]
957
+ #
958
+ # @!attribute [rw] next_token
959
+ # The pagination token from a previous call. Use this token to
960
+ # retrieve the next page of results.
961
+ # @return [String]
962
+ #
963
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListManagedMicrovmImagesInput AWS API Documentation
964
+ #
965
+ class ListManagedMicrovmImagesInput < Struct.new(
966
+ :max_results,
967
+ :next_token)
968
+ SENSITIVE = []
969
+ include Aws::Structure
970
+ end
971
+
972
+ # @!attribute [rw] next_token
973
+ # The pagination token to use in a subsequent request to retrieve the
974
+ # next page of results. This value is null when there are no more
975
+ # results to return.
976
+ # @return [String]
977
+ #
978
+ # @!attribute [rw] items
979
+ # The list of managed MicroVM images.
980
+ # @return [Array<Types::ManagedMicrovmImageSummary>]
981
+ #
982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListManagedMicrovmImagesOutput AWS API Documentation
983
+ #
984
+ class ListManagedMicrovmImagesOutput < Struct.new(
985
+ :next_token,
986
+ :items)
987
+ SENSITIVE = []
988
+ include Aws::Structure
989
+ end
990
+
991
+ # @!attribute [rw] max_results
992
+ # The maximum number of results to return in a single call.
993
+ # @return [Integer]
994
+ #
995
+ # @!attribute [rw] next_token
996
+ # The pagination token from a previous call. Use this token to
997
+ # retrieve the next page of results.
998
+ # @return [String]
999
+ #
1000
+ # @!attribute [rw] image_identifier
1001
+ # The unique identifier (ARN or ID) of the MicroVM image.
1002
+ # @return [String]
1003
+ #
1004
+ # @!attribute [rw] image_version
1005
+ # The version of the MicroVM image to list builds for.
1006
+ # @return [String]
1007
+ #
1008
+ # @!attribute [rw] architecture
1009
+ # Filters builds by target CPU architecture.
1010
+ # @return [String]
1011
+ #
1012
+ # @!attribute [rw] chipset
1013
+ # Filters builds by target chipset.
1014
+ # @return [String]
1015
+ #
1016
+ # @!attribute [rw] chipset_generation
1017
+ # Filters builds by target chipset generation.
1018
+ # @return [String]
1019
+ #
1020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmImageBuildsInput AWS API Documentation
1021
+ #
1022
+ class ListMicrovmImageBuildsInput < Struct.new(
1023
+ :max_results,
1024
+ :next_token,
1025
+ :image_identifier,
1026
+ :image_version,
1027
+ :architecture,
1028
+ :chipset,
1029
+ :chipset_generation)
1030
+ SENSITIVE = []
1031
+ include Aws::Structure
1032
+ end
1033
+
1034
+ # @!attribute [rw] next_token
1035
+ # The pagination token to use in a subsequent request to retrieve the
1036
+ # next page of results. This value is null when there are no more
1037
+ # results to return.
1038
+ # @return [String]
1039
+ #
1040
+ # @!attribute [rw] items
1041
+ # The list of MicroVM image builds.
1042
+ # @return [Array<Types::MicrovmImageBuildSummary>]
1043
+ #
1044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmImageBuildsOutput AWS API Documentation
1045
+ #
1046
+ class ListMicrovmImageBuildsOutput < Struct.new(
1047
+ :next_token,
1048
+ :items)
1049
+ SENSITIVE = []
1050
+ include Aws::Structure
1051
+ end
1052
+
1053
+ # @!attribute [rw] max_results
1054
+ # The maximum number of results to return in a single call.
1055
+ # @return [Integer]
1056
+ #
1057
+ # @!attribute [rw] next_token
1058
+ # The pagination token from a previous call. Use this token to
1059
+ # retrieve the next page of results.
1060
+ # @return [String]
1061
+ #
1062
+ # @!attribute [rw] image_identifier
1063
+ # The unique identifier (ARN or ID) of the MicroVM image to list
1064
+ # versions for.
1065
+ # @return [String]
1066
+ #
1067
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmImageVersionsInput AWS API Documentation
1068
+ #
1069
+ class ListMicrovmImageVersionsInput < Struct.new(
1070
+ :max_results,
1071
+ :next_token,
1072
+ :image_identifier)
1073
+ SENSITIVE = []
1074
+ include Aws::Structure
1075
+ end
1076
+
1077
+ # @!attribute [rw] next_token
1078
+ # The pagination token to use in a subsequent request to retrieve the
1079
+ # next page of results. This value is null when there are no more
1080
+ # results to return.
1081
+ # @return [String]
1082
+ #
1083
+ # @!attribute [rw] items
1084
+ # The list of MicroVM image versions.
1085
+ # @return [Array<Types::MicrovmImageVersionSummary>]
1086
+ #
1087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmImageVersionsOutput AWS API Documentation
1088
+ #
1089
+ class ListMicrovmImageVersionsOutput < Struct.new(
1090
+ :next_token,
1091
+ :items)
1092
+ SENSITIVE = []
1093
+ include Aws::Structure
1094
+ end
1095
+
1096
+ # @!attribute [rw] max_results
1097
+ # The maximum number of results to return in a single call.
1098
+ # @return [Integer]
1099
+ #
1100
+ # @!attribute [rw] next_token
1101
+ # The pagination token from a previous call. Use this token to
1102
+ # retrieve the next page of results.
1103
+ # @return [String]
1104
+ #
1105
+ # @!attribute [rw] name_filter
1106
+ # Filters images whose name contains the specified string.
1107
+ # @return [String]
1108
+ #
1109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmImagesRequest AWS API Documentation
1110
+ #
1111
+ class ListMicrovmImagesRequest < Struct.new(
1112
+ :max_results,
1113
+ :next_token,
1114
+ :name_filter)
1115
+ SENSITIVE = []
1116
+ include Aws::Structure
1117
+ end
1118
+
1119
+ # @!attribute [rw] next_token
1120
+ # The pagination token to use in a subsequent request to retrieve the
1121
+ # next page of results. This value is null when there are no more
1122
+ # results to return.
1123
+ # @return [String]
1124
+ #
1125
+ # @!attribute [rw] items
1126
+ # The list of MicroVM images.
1127
+ # @return [Array<Types::MicrovmImageSummary>]
1128
+ #
1129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmImagesResponse AWS API Documentation
1130
+ #
1131
+ class ListMicrovmImagesResponse < Struct.new(
1132
+ :next_token,
1133
+ :items)
1134
+ SENSITIVE = []
1135
+ include Aws::Structure
1136
+ end
1137
+
1138
+ # @!attribute [rw] max_results
1139
+ # The maximum number of results to return in a single call.
1140
+ # @return [Integer]
1141
+ #
1142
+ # @!attribute [rw] next_token
1143
+ # The pagination token from a previous call. Use this token to
1144
+ # retrieve the next page of results.
1145
+ # @return [String]
1146
+ #
1147
+ # @!attribute [rw] image_identifier
1148
+ # Optional filter to list only MicroVMs running the specified image.
1149
+ # @return [String]
1150
+ #
1151
+ # @!attribute [rw] image_version
1152
+ # Optional filter to list only MicroVMs running the specified image
1153
+ # version.
1154
+ # @return [String]
1155
+ #
1156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmsRequest AWS API Documentation
1157
+ #
1158
+ class ListMicrovmsRequest < Struct.new(
1159
+ :max_results,
1160
+ :next_token,
1161
+ :image_identifier,
1162
+ :image_version)
1163
+ SENSITIVE = []
1164
+ include Aws::Structure
1165
+ end
1166
+
1167
+ # @!attribute [rw] next_token
1168
+ # The pagination token to use in a subsequent request to retrieve the
1169
+ # next page of results. This value is null when there are no more
1170
+ # results to return.
1171
+ # @return [String]
1172
+ #
1173
+ # @!attribute [rw] items
1174
+ # The list of MicroVMs.
1175
+ # @return [Array<Types::MicrovmItem>]
1176
+ #
1177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListMicrovmsResponse AWS API Documentation
1178
+ #
1179
+ class ListMicrovmsResponse < Struct.new(
1180
+ :next_token,
1181
+ :items)
1182
+ SENSITIVE = []
1183
+ include Aws::Structure
1184
+ end
1185
+
1186
+ # @!attribute [rw] resource
1187
+ # The ARN of the resource to list tags for.
1188
+ # @return [String]
1189
+ #
1190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListTagsRequest AWS API Documentation
1191
+ #
1192
+ class ListTagsRequest < Struct.new(
1193
+ :resource)
1194
+ SENSITIVE = []
1195
+ include Aws::Structure
1196
+ end
1197
+
1198
+ # @!attribute [rw] tags
1199
+ # The key-value pairs of tags associated with the resource.
1200
+ # @return [Hash<String,String>]
1201
+ #
1202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ListTagsResponse AWS API Documentation
1203
+ #
1204
+ class ListTagsResponse < Struct.new(
1205
+ :tags)
1206
+ SENSITIVE = []
1207
+ include Aws::Structure
1208
+ end
1209
+
1210
+ # Configuration for MicroVM logging output. Specify exactly one:
1211
+ # cloudWatch to enable CloudWatch logging, or disabled to turn off
1212
+ # logging.
1213
+ #
1214
+ # @note Logging is a union - when making an API calls you must set exactly one of the members.
1215
+ #
1216
+ # @note Logging is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Logging corresponding to the set member.
1217
+ #
1218
+ # @!attribute [rw] disabled
1219
+ # Specifies that logging is disabled.
1220
+ # @return [Types::LoggingDisabled]
1221
+ #
1222
+ # @!attribute [rw] cloud_watch
1223
+ # Configuration for sending logs to Amazon CloudWatch Logs.
1224
+ # @return [Types::CloudWatchLogging]
1225
+ #
1226
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/Logging AWS API Documentation
1227
+ #
1228
+ class Logging < Struct.new(
1229
+ :disabled,
1230
+ :cloud_watch,
1231
+ :unknown)
1232
+ SENSITIVE = []
1233
+ include Aws::Structure
1234
+ include Aws::Structure::Union
1235
+
1236
+ class Disabled < Logging; end
1237
+ class CloudWatch < Logging; end
1238
+ class Unknown < Logging; end
1239
+ end
1240
+
1241
+ # Specifies that logging is disabled for the MicroVM.
1242
+ #
1243
+ # @api private
1244
+ #
1245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/LoggingDisabled AWS API Documentation
1246
+ #
1247
+ class LoggingDisabled < Aws::EmptyStructure; end
1248
+
1249
+ # Contains summary information about a managed MicroVM image.
1250
+ #
1251
+ # @!attribute [rw] image_arn
1252
+ # The ARN of the managed MicroVM image.
1253
+ # @return [String]
1254
+ #
1255
+ # @!attribute [rw] created_at
1256
+ # The timestamp when the managed MicroVM image was created.
1257
+ # @return [Time]
1258
+ #
1259
+ # @!attribute [rw] updated_at
1260
+ # The timestamp when the managed MicroVM image was last updated.
1261
+ # @return [Time]
1262
+ #
1263
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ManagedMicrovmImageSummary AWS API Documentation
1264
+ #
1265
+ class ManagedMicrovmImageSummary < Struct.new(
1266
+ :image_arn,
1267
+ :created_at,
1268
+ :updated_at)
1269
+ SENSITIVE = []
1270
+ include Aws::Structure
1271
+ end
1272
+
1273
+ # Contains version information for a managed MicroVM image.
1274
+ #
1275
+ # @!attribute [rw] image_arn
1276
+ # The ARN of the managed MicroVM image.
1277
+ # @return [String]
1278
+ #
1279
+ # @!attribute [rw] image_version
1280
+ # The version of the managed MicroVM image.
1281
+ # @return [String]
1282
+ #
1283
+ # @!attribute [rw] created_at
1284
+ # The timestamp when the version was created.
1285
+ # @return [Time]
1286
+ #
1287
+ # @!attribute [rw] updated_at
1288
+ # The timestamp when the version was last updated.
1289
+ # @return [Time]
1290
+ #
1291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ManagedMicrovmImageVersion AWS API Documentation
1292
+ #
1293
+ class ManagedMicrovmImageVersion < Struct.new(
1294
+ :image_arn,
1295
+ :image_version,
1296
+ :created_at,
1297
+ :updated_at)
1298
+ SENSITIVE = []
1299
+ include Aws::Structure
1300
+ end
1301
+
1302
+ # Configuration for lifecycle hooks invoked during MicroVM events such
1303
+ # as run, resume, suspend, and terminate.
1304
+ #
1305
+ # @!attribute [rw] run
1306
+ # The path of the hook invoked when the MicroVM starts running.
1307
+ # @return [String]
1308
+ #
1309
+ # @!attribute [rw] run_timeout_in_seconds
1310
+ # The maximum time in seconds for the run hook to complete.
1311
+ # @return [Integer]
1312
+ #
1313
+ # @!attribute [rw] resume
1314
+ # The path of the hook invoked when the MicroVM resumes from a
1315
+ # suspended state.
1316
+ # @return [String]
1317
+ #
1318
+ # @!attribute [rw] resume_timeout_in_seconds
1319
+ # The maximum time in seconds for the resume hook to complete.
1320
+ # @return [Integer]
1321
+ #
1322
+ # @!attribute [rw] suspend
1323
+ # The path of the hook invoked when the MicroVM is suspended.
1324
+ # @return [String]
1325
+ #
1326
+ # @!attribute [rw] suspend_timeout_in_seconds
1327
+ # The maximum time in seconds for the suspend hook to complete.
1328
+ # @return [Integer]
1329
+ #
1330
+ # @!attribute [rw] terminate
1331
+ # The path of the hook invoked when the MicroVM is terminated.
1332
+ # @return [String]
1333
+ #
1334
+ # @!attribute [rw] terminate_timeout_in_seconds
1335
+ # The maximum time in seconds for the terminate hook to complete.
1336
+ # @return [Integer]
1337
+ #
1338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/MicrovmHooks AWS API Documentation
1339
+ #
1340
+ class MicrovmHooks < Struct.new(
1341
+ :run,
1342
+ :run_timeout_in_seconds,
1343
+ :resume,
1344
+ :resume_timeout_in_seconds,
1345
+ :suspend,
1346
+ :suspend_timeout_in_seconds,
1347
+ :terminate,
1348
+ :terminate_timeout_in_seconds)
1349
+ SENSITIVE = []
1350
+ include Aws::Structure
1351
+ end
1352
+
1353
+ # Contains summary information about a MicroVM image build.
1354
+ #
1355
+ # @!attribute [rw] image_arn
1356
+ # The ARN of the MicroVM image.
1357
+ # @return [String]
1358
+ #
1359
+ # @!attribute [rw] image_version
1360
+ # The version of the MicroVM image.
1361
+ # @return [String]
1362
+ #
1363
+ # @!attribute [rw] build_id
1364
+ # The build request ID.
1365
+ # @return [String]
1366
+ #
1367
+ # @!attribute [rw] build_state
1368
+ # The current state of the build.
1369
+ # @return [String]
1370
+ #
1371
+ # @!attribute [rw] architecture
1372
+ # The target CPU architecture for the build. Supported value: ARM\_64.
1373
+ # @return [String]
1374
+ #
1375
+ # @!attribute [rw] chipset
1376
+ # The target chipset for the build.
1377
+ # @return [String]
1378
+ #
1379
+ # @!attribute [rw] chipset_generation
1380
+ # The target chipset generation for the build.
1381
+ # @return [String]
1382
+ #
1383
+ # @!attribute [rw] state_reason
1384
+ # The reason for the build state, if applicable.
1385
+ # @return [String]
1386
+ #
1387
+ # @!attribute [rw] created_at
1388
+ # The timestamp when the build was created.
1389
+ # @return [Time]
1390
+ #
1391
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/MicrovmImageBuildSummary AWS API Documentation
1392
+ #
1393
+ class MicrovmImageBuildSummary < Struct.new(
1394
+ :image_arn,
1395
+ :image_version,
1396
+ :build_id,
1397
+ :build_state,
1398
+ :architecture,
1399
+ :chipset,
1400
+ :chipset_generation,
1401
+ :state_reason,
1402
+ :created_at)
1403
+ SENSITIVE = []
1404
+ include Aws::Structure
1405
+ end
1406
+
1407
+ # Configuration for hooks invoked during MicroVM image build events such
1408
+ # as ready and validate.
1409
+ #
1410
+ # @!attribute [rw] ready
1411
+ # The path of the hook invoked when the MicroVM image build is ready.
1412
+ # @return [String]
1413
+ #
1414
+ # @!attribute [rw] ready_timeout_in_seconds
1415
+ # The maximum time in seconds for the ready hook to complete.
1416
+ # @return [Integer]
1417
+ #
1418
+ # @!attribute [rw] validate
1419
+ # The path of the hook invoked to validate the MicroVM image build.
1420
+ # @return [String]
1421
+ #
1422
+ # @!attribute [rw] validate_timeout_in_seconds
1423
+ # The maximum time in seconds for the validate hook to complete.
1424
+ # @return [Integer]
1425
+ #
1426
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/MicrovmImageHooks AWS API Documentation
1427
+ #
1428
+ class MicrovmImageHooks < Struct.new(
1429
+ :ready,
1430
+ :ready_timeout_in_seconds,
1431
+ :validate,
1432
+ :validate_timeout_in_seconds)
1433
+ SENSITIVE = []
1434
+ include Aws::Structure
1435
+ end
1436
+
1437
+ # Contains summary information about a MicroVM image.
1438
+ #
1439
+ # @!attribute [rw] image_arn
1440
+ # The ARN of the MicroVM image.
1441
+ # @return [String]
1442
+ #
1443
+ # @!attribute [rw] name
1444
+ # The name of the MicroVM image.
1445
+ # @return [String]
1446
+ #
1447
+ # @!attribute [rw] state
1448
+ # The current state of the MicroVM image.
1449
+ # @return [String]
1450
+ #
1451
+ # @!attribute [rw] latest_active_image_version
1452
+ # The latest active version of the MicroVM image.
1453
+ # @return [String]
1454
+ #
1455
+ # @!attribute [rw] latest_failed_image_version
1456
+ # The latest failed version of the MicroVM image, if any.
1457
+ # @return [String]
1458
+ #
1459
+ # @!attribute [rw] created_at
1460
+ # The timestamp when the MicroVM image was created.
1461
+ # @return [Time]
1462
+ #
1463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/MicrovmImageSummary AWS API Documentation
1464
+ #
1465
+ class MicrovmImageSummary < Struct.new(
1466
+ :image_arn,
1467
+ :name,
1468
+ :state,
1469
+ :latest_active_image_version,
1470
+ :latest_failed_image_version,
1471
+ :created_at)
1472
+ SENSITIVE = []
1473
+ include Aws::Structure
1474
+ end
1475
+
1476
+ # Contains summary information about a version of a MicroVM image.
1477
+ #
1478
+ # @!attribute [rw] base_image_arn
1479
+ # The ARN of the base MicroVM image used.
1480
+ # @return [String]
1481
+ #
1482
+ # @!attribute [rw] base_image_version
1483
+ # The specific version of the base MicroVM image.
1484
+ # @return [String]
1485
+ #
1486
+ # @!attribute [rw] build_role_arn
1487
+ # The ARN of the IAM build role.
1488
+ # @return [String]
1489
+ #
1490
+ # @!attribute [rw] description
1491
+ # The description of the version.
1492
+ # @return [String]
1493
+ #
1494
+ # @!attribute [rw] code_artifact
1495
+ # The code artifact for this version.
1496
+ # @return [Types::CodeArtifact]
1497
+ #
1498
+ # @!attribute [rw] logging
1499
+ # The logging configuration for this version.
1500
+ # @return [Types::Logging]
1501
+ #
1502
+ # @!attribute [rw] egress_network_connectors
1503
+ # The list of egress network connectors available to the MicroVM at
1504
+ # runtime.
1505
+ # @return [Array<String>]
1506
+ #
1507
+ # @!attribute [rw] cpu_configurations
1508
+ # The list of supported CPU configurations for the MicroVM.
1509
+ # @return [Array<Types::CpuConfiguration>]
1510
+ #
1511
+ # @!attribute [rw] resources
1512
+ # The resource requirements for the MicroVM.
1513
+ # @return [Array<Types::Resources>]
1514
+ #
1515
+ # @!attribute [rw] additional_os_capabilities
1516
+ # Additional OS capabilities granted to the MicroVM runtime
1517
+ # environment.
1518
+ # @return [Array<String>]
1519
+ #
1520
+ # @!attribute [rw] hooks
1521
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
1522
+ # @return [Types::Hooks]
1523
+ #
1524
+ # @!attribute [rw] environment_variables
1525
+ # Environment variables set in the MicroVM runtime environment.
1526
+ # @return [Hash<String,String>]
1527
+ #
1528
+ # @!attribute [rw] image_arn
1529
+ # The ARN of the MicroVM image.
1530
+ # @return [String]
1531
+ #
1532
+ # @!attribute [rw] image_version
1533
+ # The version of the MicroVM image.
1534
+ # @return [String]
1535
+ #
1536
+ # @!attribute [rw] state
1537
+ # The current state of the version.
1538
+ # @return [String]
1539
+ #
1540
+ # @!attribute [rw] status
1541
+ # The availability status of the version: ACTIVE (can be used by
1542
+ # RunMicrovm) or INACTIVE (blocked from launching new MicroVMs).
1543
+ # @return [String]
1544
+ #
1545
+ # @!attribute [rw] created_at
1546
+ # The timestamp when the version was created.
1547
+ # @return [Time]
1548
+ #
1549
+ # @!attribute [rw] updated_at
1550
+ # The timestamp when the version was last updated.
1551
+ # @return [Time]
1552
+ #
1553
+ # @!attribute [rw] state_reason
1554
+ # The reason for the current state. For example, one or more builds
1555
+ # failed.
1556
+ # @return [String]
1557
+ #
1558
+ # @!attribute [rw] tags
1559
+ # Key-value pairs associated with the version.
1560
+ # @return [Hash<String,String>]
1561
+ #
1562
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/MicrovmImageVersionSummary AWS API Documentation
1563
+ #
1564
+ class MicrovmImageVersionSummary < Struct.new(
1565
+ :base_image_arn,
1566
+ :base_image_version,
1567
+ :build_role_arn,
1568
+ :description,
1569
+ :code_artifact,
1570
+ :logging,
1571
+ :egress_network_connectors,
1572
+ :cpu_configurations,
1573
+ :resources,
1574
+ :additional_os_capabilities,
1575
+ :hooks,
1576
+ :environment_variables,
1577
+ :image_arn,
1578
+ :image_version,
1579
+ :state,
1580
+ :status,
1581
+ :created_at,
1582
+ :updated_at,
1583
+ :state_reason,
1584
+ :tags)
1585
+ SENSITIVE = []
1586
+ include Aws::Structure
1587
+ end
1588
+
1589
+ # Contains summary information about a MicroVM instance.
1590
+ #
1591
+ # @!attribute [rw] microvm_id
1592
+ # The unique identifier of the MicroVM.
1593
+ # @return [String]
1594
+ #
1595
+ # @!attribute [rw] state
1596
+ # The current lifecycle state of the MicroVM.
1597
+ # @return [String]
1598
+ #
1599
+ # @!attribute [rw] image_arn
1600
+ # The ARN of the MicroVM image used to run this MicroVM.
1601
+ # @return [String]
1602
+ #
1603
+ # @!attribute [rw] image_version
1604
+ # The version of the MicroVM image used to run this MicroVM.
1605
+ # @return [String]
1606
+ #
1607
+ # @!attribute [rw] started_at
1608
+ # The timestamp when the MicroVM started.
1609
+ # @return [Time]
1610
+ #
1611
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/MicrovmItem AWS API Documentation
1612
+ #
1613
+ class MicrovmItem < Struct.new(
1614
+ :microvm_id,
1615
+ :state,
1616
+ :image_arn,
1617
+ :image_version,
1618
+ :started_at)
1619
+ SENSITIVE = []
1620
+ include Aws::Structure
1621
+ end
1622
+
1623
+ # Specifies a range of ports.
1624
+ #
1625
+ # @!attribute [rw] start_port
1626
+ # The starting port number of the range.
1627
+ # @return [Integer]
1628
+ #
1629
+ # @!attribute [rw] end_port
1630
+ # The ending port number of the range.
1631
+ # @return [Integer]
1632
+ #
1633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/PortRange AWS API Documentation
1634
+ #
1635
+ class PortRange < Struct.new(
1636
+ :start_port,
1637
+ :end_port)
1638
+ SENSITIVE = []
1639
+ include Aws::Structure
1640
+ end
1641
+
1642
+ # Specifies which ports are accessible on a MicroVM. Only one of the
1643
+ # port specification options can be set.
1644
+ #
1645
+ # @note PortSpecification is a union - when making an API calls you must set exactly one of the members.
1646
+ #
1647
+ # @!attribute [rw] port
1648
+ # A single port number.
1649
+ # @return [Integer]
1650
+ #
1651
+ # @!attribute [rw] range
1652
+ # A range of ports.
1653
+ # @return [Types::PortRange]
1654
+ #
1655
+ # @!attribute [rw] all_ports
1656
+ # Indicates that all ports are accessible.
1657
+ # @return [Types::Unit]
1658
+ #
1659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/PortSpecification AWS API Documentation
1660
+ #
1661
+ class PortSpecification < Struct.new(
1662
+ :port,
1663
+ :range,
1664
+ :all_ports,
1665
+ :unknown)
1666
+ SENSITIVE = []
1667
+ include Aws::Structure
1668
+ include Aws::Structure::Union
1669
+
1670
+ class Port < PortSpecification; end
1671
+ class Range < PortSpecification; end
1672
+ class AllPorts < PortSpecification; end
1673
+ class Unknown < PortSpecification; end
1674
+ end
1675
+
1676
+ # The resource already exists, or another operation is in progress.
1677
+ #
1678
+ # @!attribute [rw] type
1679
+ # The exception type.
1680
+ # @return [String]
1681
+ #
1682
+ # @!attribute [rw] message
1683
+ # @return [String]
1684
+ #
1685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ResourceConflictException AWS API Documentation
1686
+ #
1687
+ class ResourceConflictException < Struct.new(
1688
+ :type,
1689
+ :message)
1690
+ SENSITIVE = []
1691
+ include Aws::Structure
1692
+ end
1693
+
1694
+ # The specified resource does not exist.
1695
+ #
1696
+ # @!attribute [rw] message
1697
+ # @return [String]
1698
+ #
1699
+ # @!attribute [rw] resource_type
1700
+ # The type of the resource that was not found.
1701
+ # @return [String]
1702
+ #
1703
+ # @!attribute [rw] resource_id
1704
+ # The identifier of the resource that was not found.
1705
+ # @return [String]
1706
+ #
1707
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ResourceNotFoundException AWS API Documentation
1708
+ #
1709
+ class ResourceNotFoundException < Struct.new(
1710
+ :message,
1711
+ :resource_type,
1712
+ :resource_id)
1713
+ SENSITIVE = []
1714
+ include Aws::Structure
1715
+ end
1716
+
1717
+ # Resource requirements for a MicroVM.
1718
+ #
1719
+ # @!attribute [rw] minimum_memory_in_mi_b
1720
+ # The minimum amount of memory in MiB to allocate to the MicroVM.
1721
+ # @return [Integer]
1722
+ #
1723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/Resources AWS API Documentation
1724
+ #
1725
+ class Resources < Struct.new(
1726
+ :minimum_memory_in_mi_b)
1727
+ SENSITIVE = []
1728
+ include Aws::Structure
1729
+ end
1730
+
1731
+ # @!attribute [rw] microvm_identifier
1732
+ # The ID of the MicroVM to resume.
1733
+ # @return [String]
1734
+ #
1735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ResumeMicrovmRequest AWS API Documentation
1736
+ #
1737
+ class ResumeMicrovmRequest < Struct.new(
1738
+ :microvm_identifier)
1739
+ SENSITIVE = []
1740
+ include Aws::Structure
1741
+ end
1742
+
1743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ResumeMicrovmResponse AWS API Documentation
1744
+ #
1745
+ class ResumeMicrovmResponse < Aws::EmptyStructure; end
1746
+
1747
+ # @!attribute [rw] ingress_network_connectors
1748
+ # The list of ingress network connectors to configure for the MicroVM.
1749
+ # @return [Array<String>]
1750
+ #
1751
+ # @!attribute [rw] egress_network_connectors
1752
+ # The list of egress network connectors to configure for the MicroVM.
1753
+ # @return [Array<String>]
1754
+ #
1755
+ # @!attribute [rw] image_identifier
1756
+ # The identifier (ARN or ID) of the MicroVM image to run.
1757
+ # @return [String]
1758
+ #
1759
+ # @!attribute [rw] image_version
1760
+ # The version of the MicroVM image to run.
1761
+ # @return [String]
1762
+ #
1763
+ # @!attribute [rw] execution_role_arn
1764
+ # The ARN of the IAM role to be assumed by the MicroVM during
1765
+ # execution.
1766
+ # @return [String]
1767
+ #
1768
+ # @!attribute [rw] idle_policy
1769
+ # Configuration to control auto-suspend and auto-resume behavior.
1770
+ # @return [Types::IdlePolicy]
1771
+ #
1772
+ # @!attribute [rw] logging
1773
+ # The logging configuration for this MicroVM instance. Specify
1774
+ # \{"cloudWatch": \{"logGroup": "..."}} to stream application
1775
+ # logs to a custom CloudWatch log group, or \{"disabled": \{}} to
1776
+ # turn off logging.
1777
+ # @return [Types::Logging]
1778
+ #
1779
+ # @!attribute [rw] run_hook_payload
1780
+ # Per-MicroVM initialization data delivered as the request body of the
1781
+ # /run lifecycle hook. Use to pass tenant-specific configuration such
1782
+ # as session IDs or secret references. Maximum: 16,384 bytes.
1783
+ # @return [String]
1784
+ #
1785
+ # @!attribute [rw] maximum_duration_in_seconds
1786
+ # The maximum duration in seconds that the MicroVM can exist before
1787
+ # being terminated by the platform. Valid range: 1–28,800 (8 hours).
1788
+ # @return [Integer]
1789
+ #
1790
+ # @!attribute [rw] client_token
1791
+ # A unique, case-sensitive identifier you provide to ensure the
1792
+ # idempotency of the request.
1793
+ #
1794
+ # **A suitable default value is auto-generated.** You should normally
1795
+ # not need to pass this option.
1796
+ # @return [String]
1797
+ #
1798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/RunMicrovmRequest AWS API Documentation
1799
+ #
1800
+ class RunMicrovmRequest < Struct.new(
1801
+ :ingress_network_connectors,
1802
+ :egress_network_connectors,
1803
+ :image_identifier,
1804
+ :image_version,
1805
+ :execution_role_arn,
1806
+ :idle_policy,
1807
+ :logging,
1808
+ :run_hook_payload,
1809
+ :maximum_duration_in_seconds,
1810
+ :client_token)
1811
+ SENSITIVE = []
1812
+ include Aws::Structure
1813
+ end
1814
+
1815
+ # @!attribute [rw] microvm_id
1816
+ # The unique identifier of the MicroVM.
1817
+ # @return [String]
1818
+ #
1819
+ # @!attribute [rw] state
1820
+ # The current lifecycle state of the MicroVM.
1821
+ # @return [String]
1822
+ #
1823
+ # @!attribute [rw] endpoint
1824
+ # The HTTPS endpoint URL for communicating with the MicroVM. Include a
1825
+ # valid authentication token in the X-aws-proxy-auth header when
1826
+ # sending requests.
1827
+ # @return [String]
1828
+ #
1829
+ # @!attribute [rw] image_arn
1830
+ # The ARN of the MicroVM image used to run this MicroVM.
1831
+ # @return [String]
1832
+ #
1833
+ # @!attribute [rw] image_version
1834
+ # The version of the MicroVM image used to run this MicroVM.
1835
+ # @return [String]
1836
+ #
1837
+ # @!attribute [rw] execution_role_arn
1838
+ # The ARN of the IAM execution role assumed by the MicroVM.
1839
+ # @return [String]
1840
+ #
1841
+ # @!attribute [rw] idle_policy
1842
+ # The idle policy configuration of the MicroVM.
1843
+ # @return [Types::IdlePolicy]
1844
+ #
1845
+ # @!attribute [rw] maximum_duration_in_seconds
1846
+ # The maximum duration in seconds that the MicroVM can exist.
1847
+ # @return [Integer]
1848
+ #
1849
+ # @!attribute [rw] started_at
1850
+ # The timestamp when the MicroVM first started.
1851
+ # @return [Time]
1852
+ #
1853
+ # @!attribute [rw] terminated_at
1854
+ # The timestamp when the MicroVM terminated.
1855
+ # @return [Time]
1856
+ #
1857
+ # @!attribute [rw] state_reason
1858
+ # The reason for why the MicroVM is in the current state.
1859
+ # @return [String]
1860
+ #
1861
+ # @!attribute [rw] ingress_network_connectors
1862
+ # The list of ingress network connectors configured for the MicroVM.
1863
+ # @return [Array<String>]
1864
+ #
1865
+ # @!attribute [rw] egress_network_connectors
1866
+ # The list of egress network connectors configured for the MicroVM.
1867
+ # @return [Array<String>]
1868
+ #
1869
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/RunMicrovmResponse AWS API Documentation
1870
+ #
1871
+ class RunMicrovmResponse < Struct.new(
1872
+ :microvm_id,
1873
+ :state,
1874
+ :endpoint,
1875
+ :image_arn,
1876
+ :image_version,
1877
+ :execution_role_arn,
1878
+ :idle_policy,
1879
+ :maximum_duration_in_seconds,
1880
+ :started_at,
1881
+ :terminated_at,
1882
+ :state_reason,
1883
+ :ingress_network_connectors,
1884
+ :egress_network_connectors)
1885
+ SENSITIVE = []
1886
+ include Aws::Structure
1887
+ end
1888
+
1889
+ # The AWS Lambda MicroVMs service encountered an internal error.
1890
+ #
1891
+ # @!attribute [rw] type
1892
+ # The exception type.
1893
+ # @return [String]
1894
+ #
1895
+ # @!attribute [rw] message
1896
+ # @return [String]
1897
+ #
1898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ServiceException AWS API Documentation
1899
+ #
1900
+ class ServiceException < Struct.new(
1901
+ :type,
1902
+ :message)
1903
+ SENSITIVE = []
1904
+ include Aws::Structure
1905
+ end
1906
+
1907
+ # You have exceeded a service quota for Lambda MicroVMs.
1908
+ #
1909
+ # @!attribute [rw] message
1910
+ # @return [String]
1911
+ #
1912
+ # @!attribute [rw] resource_id
1913
+ # The identifier of the resource that exceeded the quota.
1914
+ # @return [String]
1915
+ #
1916
+ # @!attribute [rw] resource_type
1917
+ # The type of the resource that exceeded the quota.
1918
+ # @return [String]
1919
+ #
1920
+ # @!attribute [rw] service_code
1921
+ # The service code of the exceeded service quota.
1922
+ # @return [String]
1923
+ #
1924
+ # @!attribute [rw] quota_code
1925
+ # The quota code of the exceeded service quota.
1926
+ # @return [String]
1927
+ #
1928
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ServiceQuotaExceededException AWS API Documentation
1929
+ #
1930
+ class ServiceQuotaExceededException < Struct.new(
1931
+ :message,
1932
+ :resource_id,
1933
+ :resource_type,
1934
+ :service_code,
1935
+ :quota_code)
1936
+ SENSITIVE = []
1937
+ include Aws::Structure
1938
+ end
1939
+
1940
+ # Contains size information about a MicroVM image snapshot build.
1941
+ #
1942
+ # @!attribute [rw] memory_snapshot_size_in_bytes
1943
+ # The size of the memory snapshot in bytes.
1944
+ # @return [Integer]
1945
+ #
1946
+ # @!attribute [rw] code_install_size_in_bytes
1947
+ # The size of the installed code in bytes.
1948
+ # @return [Integer]
1949
+ #
1950
+ # @!attribute [rw] disk_snapshot_size_in_bytes
1951
+ # The size of the disk snapshot in bytes.
1952
+ # @return [Integer]
1953
+ #
1954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/SnapshotBuild AWS API Documentation
1955
+ #
1956
+ class SnapshotBuild < Struct.new(
1957
+ :memory_snapshot_size_in_bytes,
1958
+ :code_install_size_in_bytes,
1959
+ :disk_snapshot_size_in_bytes)
1960
+ SENSITIVE = []
1961
+ include Aws::Structure
1962
+ end
1963
+
1964
+ # @!attribute [rw] microvm_identifier
1965
+ # The ID of the MicroVM to suspend.
1966
+ # @return [String]
1967
+ #
1968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/SuspendMicrovmRequest AWS API Documentation
1969
+ #
1970
+ class SuspendMicrovmRequest < Struct.new(
1971
+ :microvm_identifier)
1972
+ SENSITIVE = []
1973
+ include Aws::Structure
1974
+ end
1975
+
1976
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/SuspendMicrovmResponse AWS API Documentation
1977
+ #
1978
+ class SuspendMicrovmResponse < Aws::EmptyStructure; end
1979
+
1980
+ # @!attribute [rw] resource
1981
+ # The ARN of the resource to tag.
1982
+ # @return [String]
1983
+ #
1984
+ # @!attribute [rw] tags
1985
+ # The key-value pairs of tags to add to the resource.
1986
+ # @return [Hash<String,String>]
1987
+ #
1988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/TagResourceRequest AWS API Documentation
1989
+ #
1990
+ class TagResourceRequest < Struct.new(
1991
+ :resource,
1992
+ :tags)
1993
+ SENSITIVE = []
1994
+ include Aws::Structure
1995
+ end
1996
+
1997
+ # @!attribute [rw] microvm_identifier
1998
+ # The ID of the MicroVM to terminate.
1999
+ # @return [String]
2000
+ #
2001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/TerminateMicrovmRequest AWS API Documentation
2002
+ #
2003
+ class TerminateMicrovmRequest < Struct.new(
2004
+ :microvm_identifier)
2005
+ SENSITIVE = []
2006
+ include Aws::Structure
2007
+ end
2008
+
2009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/TerminateMicrovmResponse AWS API Documentation
2010
+ #
2011
+ class TerminateMicrovmResponse < Aws::EmptyStructure; end
2012
+
2013
+ # The request was denied due to request throttling. Retry the request
2014
+ # later.
2015
+ #
2016
+ # @!attribute [rw] message
2017
+ # @return [String]
2018
+ #
2019
+ # @!attribute [rw] service_code
2020
+ # The service code of the throttled service quota.
2021
+ # @return [String]
2022
+ #
2023
+ # @!attribute [rw] quota_code
2024
+ # The quota code of the throttled service quota.
2025
+ # @return [String]
2026
+ #
2027
+ # @!attribute [rw] retry_after_seconds
2028
+ # The number of seconds to wait before retrying the request.
2029
+ # @return [Integer]
2030
+ #
2031
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ThrottlingException AWS API Documentation
2032
+ #
2033
+ class ThrottlingException < Struct.new(
2034
+ :message,
2035
+ :service_code,
2036
+ :quota_code,
2037
+ :retry_after_seconds)
2038
+ SENSITIVE = []
2039
+ include Aws::Structure
2040
+ end
2041
+
2042
+ # The request throughput limit was exceeded. Retry the request later.
2043
+ #
2044
+ # @!attribute [rw] type
2045
+ # The exception type.
2046
+ # @return [String]
2047
+ #
2048
+ # @!attribute [rw] message
2049
+ # @return [String]
2050
+ #
2051
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/TooManyRequestsException AWS API Documentation
2052
+ #
2053
+ class TooManyRequestsException < Struct.new(
2054
+ :type,
2055
+ :message)
2056
+ SENSITIVE = []
2057
+ include Aws::Structure
2058
+ end
2059
+
2060
+ # @api private
2061
+ #
2062
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/Unit AWS API Documentation
2063
+ #
2064
+ class Unit < Aws::EmptyStructure; end
2065
+
2066
+ # @!attribute [rw] resource
2067
+ # The ARN of the resource to remove tags from.
2068
+ # @return [String]
2069
+ #
2070
+ # @!attribute [rw] tag_keys
2071
+ # The list of tag keys to remove from the resource.
2072
+ # @return [Array<String>]
2073
+ #
2074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/UntagResourceRequest AWS API Documentation
2075
+ #
2076
+ class UntagResourceRequest < Struct.new(
2077
+ :resource,
2078
+ :tag_keys)
2079
+ SENSITIVE = []
2080
+ include Aws::Structure
2081
+ end
2082
+
2083
+ # @!attribute [rw] base_image_arn
2084
+ # The ARN of the base MicroVM image.
2085
+ # @return [String]
2086
+ #
2087
+ # @!attribute [rw] base_image_version
2088
+ # The specific version of the base MicroVM image to use.
2089
+ # @return [String]
2090
+ #
2091
+ # @!attribute [rw] build_role_arn
2092
+ # The ARN of the IAM build role.
2093
+ # @return [String]
2094
+ #
2095
+ # @!attribute [rw] description
2096
+ # The description of the MicroVM image.
2097
+ # @return [String]
2098
+ #
2099
+ # @!attribute [rw] code_artifact
2100
+ # The code artifact containing the application code and metadata for
2101
+ # the MicroVM image.
2102
+ # @return [Types::CodeArtifact]
2103
+ #
2104
+ # @!attribute [rw] logging
2105
+ # The logging configuration for build-time and runtime logs. Specify
2106
+ # \{"cloudWatch": \{"logGroup": "..."}} to stream logs to a
2107
+ # custom CloudWatch log group, or \{"disabled": \{}} to turn off
2108
+ # logging.
2109
+ # @return [Types::Logging]
2110
+ #
2111
+ # @!attribute [rw] egress_network_connectors
2112
+ # The list of egress network connectors available to the MicroVM at
2113
+ # runtime.
2114
+ # @return [Array<String>]
2115
+ #
2116
+ # @!attribute [rw] cpu_configurations
2117
+ # The list of supported CPU configurations for the MicroVM.
2118
+ # @return [Array<Types::CpuConfiguration>]
2119
+ #
2120
+ # @!attribute [rw] resources
2121
+ # The resource requirements for the MicroVM.
2122
+ # @return [Array<Types::Resources>]
2123
+ #
2124
+ # @!attribute [rw] additional_os_capabilities
2125
+ # Additional OS capabilities granted to the MicroVM runtime
2126
+ # environment.
2127
+ # @return [Array<String>]
2128
+ #
2129
+ # @!attribute [rw] hooks
2130
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
2131
+ # @return [Types::Hooks]
2132
+ #
2133
+ # @!attribute [rw] environment_variables
2134
+ # Environment variables set in the MicroVM runtime environment.
2135
+ # @return [Hash<String,String>]
2136
+ #
2137
+ # @!attribute [rw] image_identifier
2138
+ # The unique identifier (ARN or ID) of the MicroVM image to update.
2139
+ # @return [String]
2140
+ #
2141
+ # @!attribute [rw] client_token
2142
+ # A unique, case-sensitive identifier you provide to ensure the
2143
+ # idempotency of the request.
2144
+ #
2145
+ # **A suitable default value is auto-generated.** You should normally
2146
+ # not need to pass this option.
2147
+ # @return [String]
2148
+ #
2149
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/UpdateMicrovmImageRequest AWS API Documentation
2150
+ #
2151
+ class UpdateMicrovmImageRequest < Struct.new(
2152
+ :base_image_arn,
2153
+ :base_image_version,
2154
+ :build_role_arn,
2155
+ :description,
2156
+ :code_artifact,
2157
+ :logging,
2158
+ :egress_network_connectors,
2159
+ :cpu_configurations,
2160
+ :resources,
2161
+ :additional_os_capabilities,
2162
+ :hooks,
2163
+ :environment_variables,
2164
+ :image_identifier,
2165
+ :client_token)
2166
+ SENSITIVE = []
2167
+ include Aws::Structure
2168
+ end
2169
+
2170
+ # @!attribute [rw] image_arn
2171
+ # The ARN of the MicroVM image.
2172
+ # @return [String]
2173
+ #
2174
+ # @!attribute [rw] name
2175
+ # The name of the MicroVM image.
2176
+ # @return [String]
2177
+ #
2178
+ # @!attribute [rw] state
2179
+ # The current state of the MicroVM image.
2180
+ # @return [String]
2181
+ #
2182
+ # @!attribute [rw] latest_active_image_version
2183
+ # The latest active version of the MicroVM image.
2184
+ # @return [String]
2185
+ #
2186
+ # @!attribute [rw] latest_failed_image_version
2187
+ # The latest failed version of the MicroVM image, if any.
2188
+ # @return [String]
2189
+ #
2190
+ # @!attribute [rw] created_at
2191
+ # The timestamp when the MicroVM image was created.
2192
+ # @return [Time]
2193
+ #
2194
+ # @!attribute [rw] base_image_arn
2195
+ # The ARN of the base MicroVM image.
2196
+ # @return [String]
2197
+ #
2198
+ # @!attribute [rw] base_image_version
2199
+ # The specific version of the base MicroVM image.
2200
+ # @return [String]
2201
+ #
2202
+ # @!attribute [rw] build_role_arn
2203
+ # The ARN of the IAM build role.
2204
+ # @return [String]
2205
+ #
2206
+ # @!attribute [rw] description
2207
+ # The description of the MicroVM image.
2208
+ # @return [String]
2209
+ #
2210
+ # @!attribute [rw] code_artifact
2211
+ # The code artifact containing the application code and metadata for
2212
+ # the MicroVM image.
2213
+ # @return [Types::CodeArtifact]
2214
+ #
2215
+ # @!attribute [rw] logging
2216
+ # The logging configuration for build-time and runtime logs. Specify
2217
+ # \{"cloudWatch": \{"logGroup": "..."}} to stream logs to a
2218
+ # custom CloudWatch log group, or \{"disabled": \{}} to turn off
2219
+ # logging.
2220
+ # @return [Types::Logging]
2221
+ #
2222
+ # @!attribute [rw] egress_network_connectors
2223
+ # The list of egress network connectors available to the MicroVM at
2224
+ # runtime.
2225
+ # @return [Array<String>]
2226
+ #
2227
+ # @!attribute [rw] cpu_configurations
2228
+ # The list of supported CPU configurations for the MicroVM.
2229
+ # @return [Array<Types::CpuConfiguration>]
2230
+ #
2231
+ # @!attribute [rw] resources
2232
+ # The resource requirements for the MicroVM.
2233
+ # @return [Array<Types::Resources>]
2234
+ #
2235
+ # @!attribute [rw] additional_os_capabilities
2236
+ # Additional OS capabilities granted to the MicroVM runtime
2237
+ # environment.
2238
+ # @return [Array<String>]
2239
+ #
2240
+ # @!attribute [rw] hooks
2241
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
2242
+ # @return [Types::Hooks]
2243
+ #
2244
+ # @!attribute [rw] environment_variables
2245
+ # Environment variables set in the MicroVM runtime environment.
2246
+ # @return [Hash<String,String>]
2247
+ #
2248
+ # @!attribute [rw] updated_at
2249
+ # The timestamp when the MicroVM image was last updated.
2250
+ # @return [Time]
2251
+ #
2252
+ # @!attribute [rw] image_version
2253
+ # The version of the MicroVM image.
2254
+ # @return [String]
2255
+ #
2256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/UpdateMicrovmImageResponse AWS API Documentation
2257
+ #
2258
+ class UpdateMicrovmImageResponse < Struct.new(
2259
+ :image_arn,
2260
+ :name,
2261
+ :state,
2262
+ :latest_active_image_version,
2263
+ :latest_failed_image_version,
2264
+ :created_at,
2265
+ :base_image_arn,
2266
+ :base_image_version,
2267
+ :build_role_arn,
2268
+ :description,
2269
+ :code_artifact,
2270
+ :logging,
2271
+ :egress_network_connectors,
2272
+ :cpu_configurations,
2273
+ :resources,
2274
+ :additional_os_capabilities,
2275
+ :hooks,
2276
+ :environment_variables,
2277
+ :updated_at,
2278
+ :image_version)
2279
+ SENSITIVE = []
2280
+ include Aws::Structure
2281
+ end
2282
+
2283
+ # @!attribute [rw] image_identifier
2284
+ # The unique identifier (ARN or ID) of the MicroVM image.
2285
+ # @return [String]
2286
+ #
2287
+ # @!attribute [rw] image_version
2288
+ # The version of the MicroVM image to update.
2289
+ # @return [String]
2290
+ #
2291
+ # @!attribute [rw] status
2292
+ # The new status to set for the MicroVM image version.
2293
+ # @return [String]
2294
+ #
2295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/UpdateMicrovmImageVersionRequest AWS API Documentation
2296
+ #
2297
+ class UpdateMicrovmImageVersionRequest < Struct.new(
2298
+ :image_identifier,
2299
+ :image_version,
2300
+ :status)
2301
+ SENSITIVE = []
2302
+ include Aws::Structure
2303
+ end
2304
+
2305
+ # @!attribute [rw] base_image_arn
2306
+ # The ARN of the base MicroVM image used.
2307
+ # @return [String]
2308
+ #
2309
+ # @!attribute [rw] base_image_version
2310
+ # The specific version of the base MicroVM image.
2311
+ # @return [String]
2312
+ #
2313
+ # @!attribute [rw] build_role_arn
2314
+ # The ARN of the IAM build role.
2315
+ # @return [String]
2316
+ #
2317
+ # @!attribute [rw] description
2318
+ # The description of the version.
2319
+ # @return [String]
2320
+ #
2321
+ # @!attribute [rw] code_artifact
2322
+ # The code artifact for this version.
2323
+ # @return [Types::CodeArtifact]
2324
+ #
2325
+ # @!attribute [rw] logging
2326
+ # The logging configuration for this version.
2327
+ # @return [Types::Logging]
2328
+ #
2329
+ # @!attribute [rw] egress_network_connectors
2330
+ # The list of egress network connectors available to the MicroVM at
2331
+ # runtime.
2332
+ # @return [Array<String>]
2333
+ #
2334
+ # @!attribute [rw] cpu_configurations
2335
+ # The list of supported CPU configurations for the MicroVM.
2336
+ # @return [Array<Types::CpuConfiguration>]
2337
+ #
2338
+ # @!attribute [rw] resources
2339
+ # The resource requirements for the MicroVM.
2340
+ # @return [Array<Types::Resources>]
2341
+ #
2342
+ # @!attribute [rw] additional_os_capabilities
2343
+ # Additional OS capabilities granted to the MicroVM runtime
2344
+ # environment.
2345
+ # @return [Array<String>]
2346
+ #
2347
+ # @!attribute [rw] hooks
2348
+ # Lifecycle hook configuration for MicroVMs and MicroVM images.
2349
+ # @return [Types::Hooks]
2350
+ #
2351
+ # @!attribute [rw] environment_variables
2352
+ # Environment variables set in the MicroVM runtime environment.
2353
+ # @return [Hash<String,String>]
2354
+ #
2355
+ # @!attribute [rw] image_arn
2356
+ # The ARN of the MicroVM image.
2357
+ # @return [String]
2358
+ #
2359
+ # @!attribute [rw] image_version
2360
+ # The version of the MicroVM image.
2361
+ # @return [String]
2362
+ #
2363
+ # @!attribute [rw] state
2364
+ # The current state of the version.
2365
+ # @return [String]
2366
+ #
2367
+ # @!attribute [rw] status
2368
+ # The availability status of the version: ACTIVE (can be used by
2369
+ # RunMicrovm) or INACTIVE (blocked from launching new MicroVMs).
2370
+ # @return [String]
2371
+ #
2372
+ # @!attribute [rw] created_at
2373
+ # The timestamp when the version was created.
2374
+ # @return [Time]
2375
+ #
2376
+ # @!attribute [rw] updated_at
2377
+ # The timestamp when the version was last updated.
2378
+ # @return [Time]
2379
+ #
2380
+ # @!attribute [rw] state_reason
2381
+ # The reason for the current state. For example, one or more builds
2382
+ # failed.
2383
+ # @return [String]
2384
+ #
2385
+ # @!attribute [rw] tags
2386
+ # Key-value pairs associated with the version.
2387
+ # @return [Hash<String,String>]
2388
+ #
2389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/UpdateMicrovmImageVersionResponse AWS API Documentation
2390
+ #
2391
+ class UpdateMicrovmImageVersionResponse < Struct.new(
2392
+ :base_image_arn,
2393
+ :base_image_version,
2394
+ :build_role_arn,
2395
+ :description,
2396
+ :code_artifact,
2397
+ :logging,
2398
+ :egress_network_connectors,
2399
+ :cpu_configurations,
2400
+ :resources,
2401
+ :additional_os_capabilities,
2402
+ :hooks,
2403
+ :environment_variables,
2404
+ :image_arn,
2405
+ :image_version,
2406
+ :state,
2407
+ :status,
2408
+ :created_at,
2409
+ :updated_at,
2410
+ :state_reason,
2411
+ :tags)
2412
+ SENSITIVE = []
2413
+ include Aws::Structure
2414
+ end
2415
+
2416
+ # The input does not satisfy the constraints specified by the service.
2417
+ #
2418
+ # @!attribute [rw] message
2419
+ # @return [String]
2420
+ #
2421
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-microvms-2025-09-09/ValidationException AWS API Documentation
2422
+ #
2423
+ class ValidationException < Struct.new(
2424
+ :message)
2425
+ SENSITIVE = []
2426
+ include Aws::Structure
2427
+ end
2428
+
2429
+ end
2430
+ end
2431
+