awscli 1.42.7__py3-none-any.whl → 1.44.26__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. awscli/__init__.py +1 -1
  2. awscli/alias.py +3 -3
  3. awscli/argprocess.py +7 -2
  4. awscli/arguments.py +1 -1
  5. awscli/bcdoc/docevents.py +3 -0
  6. awscli/clidocs.py +19 -2
  7. awscli/clidriver.py +55 -9
  8. awscli/customizations/argrename.py +1 -3
  9. awscli/customizations/cliinputjson.py +4 -0
  10. awscli/customizations/cloudformation/deploy.py +19 -3
  11. awscli/customizations/cloudtrail/validation.py +22 -2
  12. awscli/customizations/commands.py +2 -1
  13. awscli/customizations/eks/update_kubeconfig.py +12 -1
  14. awscli/customizations/emr/argumentschema.py +355 -344
  15. awscli/customizations/emr/createcluster.py +12 -0
  16. awscli/customizations/emr/emrutils.py +83 -50
  17. awscli/customizations/emr/helptext.py +10 -0
  18. awscli/customizations/emr/steputils.py +92 -52
  19. awscli/customizations/gamelift/uploadbuild.py +24 -11
  20. awscli/customizations/globalargs.py +169 -0
  21. awscli/customizations/paginate.py +66 -1
  22. awscli/customizations/s3/filegenerator.py +4 -1
  23. awscli/customizations/s3/fileinfo.py +4 -1
  24. awscli/customizations/s3/fileinfobuilder.py +6 -0
  25. awscli/customizations/s3/s3handler.py +9 -0
  26. awscli/customizations/s3/subcommands.py +147 -6
  27. awscli/customizations/s3/syncstrategy/base.py +9 -0
  28. awscli/customizations/s3/syncstrategy/caseconflict.py +96 -0
  29. awscli/customizations/s3/utils.py +14 -0
  30. awscli/customizations/scalarparse.py +48 -9
  31. awscli/data/cli.json +5 -0
  32. awscli/examples/apigateway/update-vpc-link.rst +47 -0
  33. awscli/examples/application-signals/batch-get-service-level-objective-budget-report.rst +99 -0
  34. awscli/examples/application-signals/create-service-level-objective.rst +88 -0
  35. awscli/examples/application-signals/delete-service-level-objective.rst +10 -0
  36. awscli/examples/application-signals/get-service-level-objective.rst +53 -0
  37. awscli/examples/application-signals/get-service.rst +72 -0
  38. awscli/examples/application-signals/list-service-dependencies.rst +96 -0
  39. awscli/examples/application-signals/list-service-dependents.rst +36 -0
  40. awscli/examples/application-signals/list-service-level-objectives.rst +17 -0
  41. awscli/examples/application-signals/list-service-operations.rst +63 -0
  42. awscli/examples/application-signals/list-services.rst +61 -0
  43. awscli/examples/application-signals/list-tags-for-resource.rst +17 -0
  44. awscli/examples/application-signals/start-discovery.rst +9 -0
  45. awscli/examples/application-signals/tag-resource.rst +11 -0
  46. awscli/examples/application-signals/untag-resource.rst +11 -0
  47. awscli/examples/application-signals/update-service-level-objective.rst +69 -0
  48. awscli/examples/cloudformation/create-generated-template.rst +50 -0
  49. awscli/examples/cloudformation/create-stack-refactor.rst +16 -0
  50. awscli/examples/cloudformation/delete-generated-template.rst +10 -0
  51. awscli/examples/cloudformation/describe-generated-template.rst +62 -0
  52. awscli/examples/cloudformation/describe-resource-scan.rst +38 -0
  53. awscli/examples/cloudformation/describe-stack-refactor.rst +20 -0
  54. awscli/examples/cloudformation/execute-stack-refactor.rst +10 -0
  55. awscli/examples/cloudformation/list-generated-templates.rst +41 -0
  56. awscli/examples/cloudformation/list-resource-scan-related-resources.rst +47 -0
  57. awscli/examples/cloudformation/list-resource-scan-resources.rst +30 -0
  58. awscli/examples/cloudformation/list-stack-refactor-actions.rst +71 -0
  59. awscli/examples/cloudformation/start-resource-scan.rst +14 -0
  60. awscli/examples/ec2/authorize-security-group-ingress.rst +1 -1
  61. awscli/examples/global_options.rst +4 -0
  62. awscli/examples/global_synopsis.rst +1 -0
  63. awscli/examples/guardduty/update-detector.rst +23 -0
  64. awscli/examples/ivs-realtime/get-composition.rst +7 -4
  65. awscli/examples/ivs-realtime/start-composition.rst +88 -3
  66. awscli/examples/lambda/create-function.rst +4 -4
  67. awscli/examples/lambda/get-function.rst +3 -3
  68. awscli/examples/lambda/list-functions.rst +6 -6
  69. awscli/examples/medical-imaging/create-datastore.rst +19 -2
  70. awscli/examples/medical-imaging/get-datastore.rst +24 -1
  71. awscli/examples/networkmanager/get-vpc-attachment.rst +1 -1
  72. awscli/examples/securityhub/describe-hub.rst +6 -4
  73. awscli/examples/servicediscovery/create-service.rst +50 -10
  74. awscli/examples/servicediscovery/delete-namespace.rst +18 -4
  75. awscli/examples/servicediscovery/delete-service-attributes.rst +15 -3
  76. awscli/examples/servicediscovery/delete-service.rst +13 -3
  77. awscli/examples/servicediscovery/deregister-instance.rst +18 -2
  78. awscli/examples/servicediscovery/discover-instances-revision.rst +18 -1
  79. awscli/examples/servicediscovery/discover-instances.rst +32 -2
  80. awscli/examples/servicediscovery/get-instance.rst +30 -4
  81. awscli/examples/servicediscovery/get-instances-health-status.rst +19 -1
  82. awscli/examples/servicediscovery/get-namespace.rst +40 -9
  83. awscli/examples/servicediscovery/get-operation.rst +32 -6
  84. awscli/examples/servicediscovery/get-service-attributes.rst +25 -3
  85. awscli/examples/servicediscovery/get-service.rst +35 -7
  86. awscli/examples/servicediscovery/list-instances.rst +38 -3
  87. awscli/examples/servicediscovery/list-namespaces.rst +45 -22
  88. awscli/examples/servicediscovery/list-services.rst +30 -2
  89. awscli/examples/servicediscovery/register-instance.rst +18 -2
  90. awscli/examples/servicediscovery/update-http-namespace.rst +22 -5
  91. awscli/examples/servicediscovery/update-instance-custom-health-status.rst +14 -1
  92. awscli/examples/servicediscovery/update-private-dns-namespace.rst +22 -5
  93. awscli/examples/servicediscovery/update-public-dns-namespace.rst +22 -5
  94. awscli/examples/servicediscovery/update-service-attributes.rst +14 -2
  95. awscli/examples/servicediscovery/update-service.rst +20 -4
  96. awscli/handlers.py +0 -4
  97. awscli/paramfile.py +21 -4
  98. awscli/testutils.py +17 -0
  99. awscli/topics/config-vars.rst +1 -1
  100. awscli/topics/s3-case-insensitivity.rst +105 -0
  101. awscli/topics/topic-tags.json +16 -0
  102. awscli/utils.py +19 -2
  103. {awscli-1.42.7.dist-info → awscli-1.44.26.dist-info}/METADATA +16 -3
  104. {awscli-1.42.7.dist-info → awscli-1.44.26.dist-info}/RECORD +112 -231
  105. awscli/customizations/opsworks.py +0 -543
  106. awscli/customizations/opsworkscm.py +0 -21
  107. awscli/examples/elastictranscoder/cancel-job.rst +0 -8
  108. awscli/examples/elastictranscoder/create-job.rst +0 -94
  109. awscli/examples/elastictranscoder/create-pipeline.rst +0 -94
  110. awscli/examples/elastictranscoder/create-preset.rst +0 -141
  111. awscli/examples/elastictranscoder/delete-pipeline.rst +0 -13
  112. awscli/examples/elastictranscoder/delete-preset.rst +0 -8
  113. awscli/examples/elastictranscoder/list-jobs-by-pipeline.rst +0 -13
  114. awscli/examples/elastictranscoder/list-jobs-by-status.rst +0 -14
  115. awscli/examples/elastictranscoder/list-pipelines.rst +0 -84
  116. awscli/examples/elastictranscoder/list-presets.rst +0 -95
  117. awscli/examples/elastictranscoder/read-job.rst +0 -65
  118. awscli/examples/elastictranscoder/read-pipeline.rst +0 -59
  119. awscli/examples/elastictranscoder/read-preset.rst +0 -100
  120. awscli/examples/elastictranscoder/update-pipeline-notifications.rst +0 -52
  121. awscli/examples/elastictranscoder/update-pipeline-status.rst +0 -53
  122. awscli/examples/elastictranscoder/update-pipeline.rst +0 -95
  123. awscli/examples/opsworks/assign-instance.rst +0 -14
  124. awscli/examples/opsworks/assign-volume.rst +0 -17
  125. awscli/examples/opsworks/associate-elastic-ip.rst +0 -14
  126. awscli/examples/opsworks/attach-elastic-load-balancer.rst +0 -14
  127. awscli/examples/opsworks/create-app.rst +0 -64
  128. awscli/examples/opsworks/create-deployment.rst +0 -66
  129. awscli/examples/opsworks/create-instance.rst +0 -25
  130. awscli/examples/opsworks/create-layer.rst +0 -17
  131. awscli/examples/opsworks/create-server.rst +0 -43
  132. awscli/examples/opsworks/create-stack.rst +0 -25
  133. awscli/examples/opsworks/create-user-profile.rst +0 -24
  134. awscli/examples/opsworks/delete-app.rst +0 -17
  135. awscli/examples/opsworks/delete-instance.rst +0 -15
  136. awscli/examples/opsworks/delete-layer.rst +0 -17
  137. awscli/examples/opsworks/delete-stack.rst +0 -18
  138. awscli/examples/opsworks/delete-user-profile.rst +0 -17
  139. awscli/examples/opsworks/deregister-elastic-ip.rst +0 -13
  140. awscli/examples/opsworks/deregister-instance.rst +0 -14
  141. awscli/examples/opsworks/deregister-rds-db-instance.rst +0 -20
  142. awscli/examples/opsworks/deregister-volume.rst +0 -15
  143. awscli/examples/opsworks/describe-apps.rst +0 -38
  144. awscli/examples/opsworks/describe-commands.rst +0 -43
  145. awscli/examples/opsworks/describe-deployments.rst +0 -52
  146. awscli/examples/opsworks/describe-elastic-ips.rst +0 -24
  147. awscli/examples/opsworks/describe-elastic-load-balancers.rst +0 -37
  148. awscli/examples/opsworks/describe-instances.rst +0 -95
  149. awscli/examples/opsworks/describe-layers.rst +0 -171
  150. awscli/examples/opsworks/describe-load-based-auto-scaling.rst +0 -37
  151. awscli/examples/opsworks/describe-my-user-profile.rst +0 -24
  152. awscli/examples/opsworks/describe-permissions.rst +0 -26
  153. awscli/examples/opsworks/describe-raid-arrays.rst +0 -31
  154. awscli/examples/opsworks/describe-rds-db-instances.rst +0 -29
  155. awscli/examples/opsworks/describe-stack-provisioning-parameters.rst +0 -32
  156. awscli/examples/opsworks/describe-stack-summary.rst +0 -27
  157. awscli/examples/opsworks/describe-stacks.rst +0 -65
  158. awscli/examples/opsworks/describe-timebased-auto-scaling.rst +0 -39
  159. awscli/examples/opsworks/describe-user-profiles.rst +0 -32
  160. awscli/examples/opsworks/describe-volumes.rst +0 -31
  161. awscli/examples/opsworks/detach-elastic-load-balancer.rst +0 -14
  162. awscli/examples/opsworks/disassociate-elastic-ip.rst +0 -14
  163. awscli/examples/opsworks/get-hostname-suggestion.rst +0 -21
  164. awscli/examples/opsworks/reboot-instance.rst +0 -14
  165. awscli/examples/opsworks/register-elastic-ip.rst +0 -19
  166. awscli/examples/opsworks/register-rds-db-instance.rst +0 -15
  167. awscli/examples/opsworks/register-volume.rst +0 -18
  168. awscli/examples/opsworks/register.rst +0 -105
  169. awscli/examples/opsworks/set-load-based-auto-scaling.rst +0 -38
  170. awscli/examples/opsworks/set-permission.rst +0 -23
  171. awscli/examples/opsworks/set-time-based-auto-scaling.rst +0 -33
  172. awscli/examples/opsworks/start-instance.rst +0 -20
  173. awscli/examples/opsworks/start-stack.rst +0 -15
  174. awscli/examples/opsworks/stop-instance.rst +0 -20
  175. awscli/examples/opsworks/stop-stack.rst +0 -15
  176. awscli/examples/opsworks/unassign-instance.rst +0 -14
  177. awscli/examples/opsworks/unassign-volume.rst +0 -16
  178. awscli/examples/opsworks/update-app.rst +0 -14
  179. awscli/examples/opsworks/update-elastic-ip.rst +0 -14
  180. awscli/examples/opsworks/update-instance.rst +0 -14
  181. awscli/examples/opsworks/update-layer.rst +0 -14
  182. awscli/examples/opsworks/update-my-user-profile.rst +0 -16
  183. awscli/examples/opsworks/update-rds-db-instance.rst +0 -18
  184. awscli/examples/opsworks/update-volume.rst +0 -16
  185. awscli/examples/opsworkscm/associate-node.rst +0 -22
  186. awscli/examples/opsworkscm/create-backup.rst +0 -46
  187. awscli/examples/opsworkscm/create-server.rst +0 -48
  188. awscli/examples/opsworkscm/delete-backup.rst +0 -17
  189. awscli/examples/opsworkscm/delete-server.rst +0 -16
  190. awscli/examples/opsworkscm/describe-account-attributes.rst +0 -26
  191. awscli/examples/opsworkscm/describe-backups.rst +0 -44
  192. awscli/examples/opsworkscm/describe-events.rst +0 -21
  193. awscli/examples/opsworkscm/describe-node-association-status.rst +0 -20
  194. awscli/examples/opsworkscm/describe-servers.rst +0 -48
  195. awscli/examples/opsworkscm/disassociate-node.rst +0 -19
  196. awscli/examples/opsworkscm/restore-server.rst +0 -20
  197. awscli/examples/opsworkscm/start-maintenance.rst +0 -39
  198. awscli/examples/opsworkscm/update-server-engine-attributes.rst +0 -43
  199. awscli/examples/opsworkscm/update-server.rst +0 -42
  200. awscli/examples/qldb/cancel-journal-kinesis-stream.rst +0 -15
  201. awscli/examples/qldb/create-ledger.rst +0 -43
  202. awscli/examples/qldb/delete-ledger.rst +0 -10
  203. awscli/examples/qldb/describe-journal-kinesis-stream.rst +0 -29
  204. awscli/examples/qldb/describe-journal-s3-export.rst +0 -30
  205. awscli/examples/qldb/describe-ledger.rst +0 -23
  206. awscli/examples/qldb/export-journal-to-s3.rst +0 -28
  207. awscli/examples/qldb/get-block.rst +0 -55
  208. awscli/examples/qldb/get-digest.rst +0 -17
  209. awscli/examples/qldb/get-revision.rst +0 -57
  210. awscli/examples/qldb/list-journal-kinesis-streams-for-ledger.rst +0 -30
  211. awscli/examples/qldb/list-journal-s3-exports-for-ledger.rst +0 -31
  212. awscli/examples/qldb/list-journal-s3-exports.rst +0 -46
  213. awscli/examples/qldb/list-ledgers.rst +0 -24
  214. awscli/examples/qldb/list-tags-for-resource.rst +0 -17
  215. awscli/examples/qldb/stream-journal-to-kinesis.rst +0 -46
  216. awscli/examples/qldb/tag-resource.rst +0 -11
  217. awscli/examples/qldb/untag-resource.rst +0 -11
  218. awscli/examples/qldb/update-ledger-permissions-mode.rst +0 -34
  219. awscli/examples/qldb/update-ledger.rst +0 -63
  220. awscli/examples/robomaker/batch-describe-simulation-job.rst +0 -150
  221. awscli/examples/robomaker/cancel-simulation-job.rst +0 -6
  222. awscli/examples/robomaker/create-deployment-job.rst +0 -37
  223. awscli/examples/robomaker/create-fleet.rst +0 -18
  224. awscli/examples/robomaker/create-robot-application-version.rst +0 -31
  225. awscli/examples/robomaker/create-robot-application.rst +0 -29
  226. awscli/examples/robomaker/create-robot.rst +0 -20
  227. awscli/examples/robomaker/create-simulation-application-version.rst +0 -39
  228. awscli/examples/robomaker/create-simulation-application.rst +0 -38
  229. awscli/examples/robomaker/create-simulation-job.rst +0 -43
  230. awscli/examples/robomaker/delete-fleet.rst +0 -7
  231. awscli/examples/robomaker/delete-robot-application.rst +0 -7
  232. awscli/examples/robomaker/delete-robot.rst +0 -7
  233. awscli/examples/robomaker/delete-simulation-application.rst +0 -7
  234. awscli/examples/robomaker/deregister-robot.rst +0 -14
  235. awscli/examples/robomaker/describe-deployment-job.rst +0 -38
  236. awscli/examples/robomaker/describe-fleet.rst +0 -28
  237. awscli/examples/robomaker/describe-robot-application.rst +0 -29
  238. awscli/examples/robomaker/describe-robot.rst +0 -21
  239. awscli/examples/robomaker/describe-simulation-application.rst +0 -37
  240. awscli/examples/robomaker/describe-simulation-job.rst +0 -45
  241. awscli/examples/robomaker/list-deployment-jobs.rst +0 -57
  242. awscli/examples/robomaker/list-fleets.rst +0 -22
  243. awscli/examples/robomaker/list-robot-applications.rst +0 -32
  244. awscli/examples/robomaker/list-robots.rst +0 -45
  245. awscli/examples/robomaker/list-simulation-applications.rst +0 -50
  246. awscli/examples/robomaker/list-simulation-jobs.rst +0 -80
  247. awscli/examples/robomaker/list-tags-for-resource.rst +0 -16
  248. awscli/examples/robomaker/register-robot.rst +0 -14
  249. awscli/examples/robomaker/restart-simulation-job.rst +0 -7
  250. awscli/examples/robomaker/sync-deployment-job.rst +0 -30
  251. awscli/examples/robomaker/tag-resource.rst +0 -7
  252. awscli/examples/robomaker/untag-resource.rst +0 -7
  253. awscli/examples/robomaker/update-robot-application.rst +0 -28
  254. awscli/examples/robomaker/update-simulation-application.rst +0 -36
  255. {awscli-1.42.7.data → awscli-1.44.26.data}/scripts/aws +0 -0
  256. {awscli-1.42.7.data → awscli-1.44.26.data}/scripts/aws.cmd +0 -0
  257. {awscli-1.42.7.data → awscli-1.44.26.data}/scripts/aws_bash_completer +0 -0
  258. {awscli-1.42.7.data → awscli-1.44.26.data}/scripts/aws_completer +0 -0
  259. {awscli-1.42.7.data → awscli-1.44.26.data}/scripts/aws_zsh_completer.sh +0 -0
  260. {awscli-1.42.7.dist-info → awscli-1.44.26.dist-info}/LICENSE.txt +0 -0
  261. {awscli-1.42.7.dist-info → awscli-1.44.26.dist-info}/WHEEL +0 -0
  262. {awscli-1.42.7.dist-info → awscli-1.44.26.dist-info}/top_level.txt +0 -0
@@ -1,4 +1,4 @@
1
- **To list namespaces**
1
+ **Example 1: To list namespaces**
2
2
 
3
3
  The following ``list-namespaces`` example lists namespaces. ::
4
4
 
@@ -9,50 +9,73 @@ Output::
9
9
  {
10
10
  "Namespaces": [
11
11
  {
12
- "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-a3ccy2e7e3a7rile",
13
- "CreateDate": 1585354387.357,
14
- "Id": "ns-a3ccy2e7e3a7rile",
12
+ "Id": "ns-abcd1234xmpl5678",
13
+ "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678",
14
+ "ResourceOwner": "123456789012",
15
15
  "Name": "local",
16
+ "Type": "DNS_PRIVATE",
16
17
  "Properties": {
17
18
  "DnsProperties": {
18
- "HostedZoneId": "Z06752353VBUDTC32S84S"
19
+ "HostedZoneId": "Z06752353VBUDTC32S84S",
20
+ "SOA": {}
19
21
  },
20
22
  "HttpProperties": {
21
23
  "HttpName": "local"
22
24
  }
23
25
  },
24
- "Type": "DNS_PRIVATE"
26
+ "CreateDate": "2023-07-17T13:37:27.872000-05:00"
25
27
  },
26
28
  {
27
- "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-pocfyjtrsmwtvcxx",
28
- "CreateDate": 1586468974.698,
29
- "Description": "My second namespace",
30
- "Id": "ns-pocfyjtrsmwtvcxx",
29
+ "Id": "ns-abcd1234xmpl9012",
30
+ "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl9012",
31
+ "ResourceOwner": "123456789012",
31
32
  "Name": "My-second-namespace",
33
+ "Type": "HTTP",
34
+ "Description": "My second namespace",
32
35
  "Properties": {
33
- "DnsProperties": {},
36
+ "DnsProperties": {
37
+ "SOA": {}
38
+ },
34
39
  "HttpProperties": {
35
40
  "HttpName": "My-second-namespace"
36
41
  }
37
42
  },
38
- "Type": "HTTP"
39
- },
43
+ "CreateDate": "2023-11-14T10:35:47.840000-06:00"
44
+ }
45
+ ]
46
+ }
47
+
48
+ For more information, see `Listing AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/listing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
49
+
50
+ **Example 2: To list namespaces shared by other accounts**
51
+
52
+ The following ``list-namespaces`` example lists namespaces that are shared with the caller account by other AWS accounts using the ``RESOURCE_OWNER`` filter. ::
53
+
54
+ aws servicediscovery list-namespaces \
55
+ --filters Name=RESOURCE_OWNER,Values=OTHER_ACCOUNTS,Condition=EQ
56
+
57
+ Output::
58
+
59
+ {
60
+ "Namespaces": [
40
61
  {
41
- "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-ylexjili4cdxy3xm",
42
- "CreateDate": 1587055896.798,
43
- "Id": "ns-ylexjili4cdxy3xm",
44
- "Name": "example.com",
62
+ "Id": "ns-abcd1234xmpl5678",
63
+ "Arn": "arn:aws:servicediscovery:us-west-2:123456789111:namespace/ns-abcd1234xmpl5678",
64
+ "ResourceOwner": "123456789111",
65
+ "Name": "shared-namespace",
66
+ "Type": "HTTP",
67
+ "Description": "Namespace shared from another account",
45
68
  "Properties": {
46
69
  "DnsProperties": {
47
- "HostedZoneId": "Z09983722P0QME1B3KC8I"
70
+ "SOA": {}
48
71
  },
49
- "HttpProperties": {
50
- "HttpName": "example.com"
72
+ "HttpProperties": {
73
+ "HttpName": "shared-namespace"
51
74
  }
52
75
  },
53
- "Type": "DNS_PRIVATE"
76
+ "CreateDate": "2025-01-13T13:35:21.874000-06:00"
54
77
  }
55
78
  ]
56
79
  }
57
80
 
58
- For more information, see `Viewing a list of namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/listing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
81
+ For more information, see `Shared AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/sharing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,4 +1,4 @@
1
- **To list services**
1
+ **Example 1: To list services**
2
2
 
3
3
  The following ``list-services`` example lists services. ::
4
4
 
@@ -26,5 +26,33 @@ Output::
26
26
  ]
27
27
  }
28
28
 
29
- For more information, see `Viewing a list of services <https://docs.aws.amazon.com/cloud-map/latest/dg/listing-services.html>`__ in the *AWS Cloud Map Developer Guide*.
29
+ For more information, see `Listing AWS Cloud Map services in a namespace <https://docs.aws.amazon.com/cloud-map/latest/dg/listing-services.html>`__ in the *AWS Cloud Map Developer Guide*.
30
30
 
31
+ **Example 2: To list services created in shared namespaces**
32
+
33
+ The following ``list-services`` example lists services that are created in namespaces shared with the caller account ``123456789012`` by other AWS accounts using the ``RESOURCE_OWNER`` filter. ::
34
+
35
+ aws servicediscovery list-services \
36
+ --filters Name=RESOURCE_OWNER,Values=OTHER_ACCOUNTS,Condition=EQ
37
+
38
+ Output::
39
+
40
+ {
41
+ "Services": [
42
+ {
43
+ "Id": "srv-abcd1234xmpl5678",
44
+ "Arn": "arn:aws:servicediscovery:us-west-2:123456789111:service/srv-abcd1234xmpl5678",
45
+ "ResourceOwner": "123456789111",
46
+ "Name": "shared-service",
47
+ "NamespaceId": "ns-abcd1234xmpl5678",
48
+ "Type": "HTTP",
49
+ "Description": "Service in shared namespace",
50
+ "DnsConfig": {},
51
+ "CreateDate": "2025-01-13T13:35:21.874000-06:00",
52
+ "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678",
53
+ "CreatedByAccount": "123456789012"
54
+ }
55
+ ]
56
+ }
57
+
58
+ For more information, see `Shared AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/sharing-namespaces.html>`__ and `Listing AWS Cloud Map services in a namespace <https://docs.aws.amazon.com/cloud-map/latest/dg/listing-services.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,4 +1,4 @@
1
- **To register a service instance**
1
+ **Example 1: To register a service instance using service ID**
2
2
 
3
3
  The following ``register-instance`` example registers a service instance. ::
4
4
 
@@ -15,5 +15,21 @@ Output::
15
15
 
16
16
  To confirm that the operation succeeded, you can run ``get-operation``. For more information, see `get-operation <https://docs.aws.amazon.com/cli/latest/reference/servicediscovery/get-operation.html>`__ .
17
17
 
18
- For more information, see `Registering instances <https://docs.aws.amazon.com/cloud-map/latest/dg/registering-instances.html>`__ in the *AWS Cloud Map Developer Guide*.
18
+ For more information about registering an instance, see `Registering a resource as an AWS Cloud Map service instance <https://docs.aws.amazon.com/cloud-map/latest/dg/registering-instances.html>`__ in the *AWS Cloud Map Developer Guide*.
19
19
 
20
+ **Example 2: To register a service instance using service ARN**
21
+
22
+ The following ``register-instance`` example registers a service instance using a service ARN. Specifying the ARN is required when registering instances in services that are shared with your account. ::
23
+
24
+ aws servicediscovery register-instance \
25
+ --service-id arn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita \
26
+ --instance-id web-server-01 \
27
+ --attributes=AWS_INSTANCE_IPV4=203.0.113.15,AWS_INSTANCE_PORT=80
28
+
29
+ Output::
30
+
31
+ {
32
+ "OperationId": "gv4g5meo7ndmkqjrhpn39wk42xmpl"
33
+ }
34
+
35
+ For more information about cross-account namespace sharing, see `Shared AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/sharing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,18 +1,35 @@
1
- **To update an HTTP namespace**
1
+ **Example 1: To update an HTTP namespace**
2
2
 
3
3
  The following ``update-http-namespace`` example updates the specified HTTP namespace's description. ::
4
4
 
5
5
  aws servicediscovery update-http-namespace \
6
- --id ns-vh4nbmEXAMPLE \
7
- --updater-request-id example-request-id \
6
+ --id ns-abcd1234xmpl5678 \
7
+ --updater-request-id abcd1234-5678-90ab-cdef-xmpl12345678 \
8
8
  --namespace Description="The updated namespace description."
9
9
 
10
10
  Output::
11
11
 
12
12
  {
13
- "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd"
13
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
14
14
  }
15
15
 
16
16
  To confirm that the operation succeeded, you can run ``get-operation``. For more information, see `get-operation <https://docs.aws.amazon.com/cli/latest/reference/servicediscovery/get-operation.html>`__ .
17
17
 
18
- For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
18
+ For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
19
+
20
+ **Example 2: To update an HTTP namespace using ARN**
21
+
22
+ The following ``update-http-namespace`` example updates the specified HTTP namespace using its ARN. ::
23
+
24
+ aws servicediscovery update-http-namespace \
25
+ --id arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678 \
26
+ --updater-request-id abcd1234-5678-90ab-cdef-xmpl12345678 \
27
+ --namespace Description="The updated namespace description."
28
+
29
+ Output::
30
+
31
+ {
32
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
33
+ }
34
+
35
+ For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,4 +1,4 @@
1
- **To update a custom health check**
1
+ **Example 1: To update a custom health check**
2
2
 
3
3
  The following ``update-instance-custom-health-status`` example updates the status of the custom health check for the specified service and example service instance to ``HEALTHY``. ::
4
4
 
@@ -10,3 +10,16 @@ The following ``update-instance-custom-health-status`` example updates the statu
10
10
  This command produces no output.
11
11
 
12
12
  For more information, see `AWS Cloud Map service health check configuration <https://docs.aws.amazon.com/cloud-map/latest/dg/services-health-checks.html>`__ in the *AWS Cloud Map Developer Guide*.
13
+
14
+ **Example 2: To update a custom health check using service ARN**
15
+
16
+ The following ``update-instance-custom-health-status`` example updates the status of the custom health check using a service ARN. The ARN is required when updating health status for instances associated with namespaces that are shared with the your account. ::
17
+
18
+ aws servicediscovery update-instance-custom-health-status \
19
+ --service-id arn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita \
20
+ --instance-id web-server-01 \
21
+ --status HEALTHY
22
+
23
+ This command produces no output.
24
+
25
+ For more information, see `AWS Cloud Map service health check configuration <https://docs.aws.amazon.com/cloud-map/latest/dg/services-health-checks.html>`__ and `Cross-account AWS Cloud Map namespace sharing <https://docs.aws.amazon.com/cloud-map/latest/dg/sharing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,18 +1,35 @@
1
- **To update a private DNS namespace**
1
+ **Example 1: To update a private DNS namespace using ID**
2
2
 
3
- The following ``update-private-dns-namespace`` example updates the description of a private DNS namespace. ::
3
+ The following ``update-private-dns-namespace`` example updates the description of a private DNS namespace using namespace ID. ::
4
4
 
5
5
  aws servicediscovery update-private-dns-namespace \
6
- --id ns-bk3aEXAMPLE \
7
- --updater-request-id example-private-request-id \
6
+ --id ns-abcd1234xmpl5678 \
7
+ --updater-request-id abcd1234-5678-90ab-cdef-xmpl12345678 \
8
8
  --namespace Description="The updated namespace description."
9
9
 
10
10
  Output::
11
11
 
12
12
  {
13
- "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd"
13
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
14
14
  }
15
15
 
16
16
  To confirm that the operation succeeded, you can run ``get-operation``.
17
17
 
18
18
  For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
19
+
20
+ **Example 2: To update a private DNS namespace using ARN**
21
+
22
+ The following ``update-private-dns-namespace`` example updates a private DNS namespace using its ARN. ::
23
+
24
+ aws servicediscovery update-private-dns-namespace \
25
+ --id arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678 \
26
+ --updater-request-id abcd1234-5678-90ab-cdef-xmpl12345678 \
27
+ --namespace Description="The updated namespace description."
28
+
29
+ Output::
30
+
31
+ {
32
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
33
+ }
34
+
35
+ For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,18 +1,35 @@
1
- **To update a public DNS namespace**
1
+ **Example 1: To update a public DNS namespace using ID**
2
2
 
3
- The following ``update-public-dns-namespace`` example updates the description of a public DNS namespace. ::
3
+ The following ``update-public-dns-namespace`` example updates the description of a public DNS namespace using its ID. ::
4
4
 
5
5
  aws servicediscovery update-public-dns-namespace \
6
- --id ns-bk3aEXAMPLE \
7
- --updater-request-id example-public-request-id \
6
+ --id ns-abcd1234xmpl5678 \
7
+ --updater-request-id abcd1234-5678-90ab-cdef-xmpl12345678 \
8
8
  --namespace Description="The updated namespace description."
9
9
 
10
10
  Output::
11
11
 
12
12
  {
13
- "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd"
13
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
14
14
  }
15
15
 
16
16
  To confirm that the operation succeeded, you can run ``get-operation``.
17
17
 
18
18
  For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
19
+
20
+ **Example 2: To update a public DNS namespace using ARN**
21
+
22
+ The following ``update-public-dns-namespace`` example updates a public DNS namespace using its ARN. ::
23
+
24
+ aws servicediscovery update-public-dns-namespace \
25
+ --id arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678 \
26
+ --updater-request-id abcd1234-5678-90ab-cdef-xmpl12345678 \
27
+ --namespace Description="The updated namespace description."
28
+
29
+ Output::
30
+
31
+ {
32
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
33
+ }
34
+
35
+ For more information, see `AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,11 +1,23 @@
1
- **To update a service to add an attribute**
1
+ **Example 1: To update a service to add an attribute**
2
2
 
3
3
  The following ``update-service-attributes`` example updates the specified service to add a service attribute with a key ``Port`` and a value ``80``. ::
4
4
 
5
5
  aws servicediscovery update-service-attributes \
6
- --service-id srv-e4anhexample0004 \
6
+ --service-id srv-abcd1234xmpl5678 \
7
7
  --attributes Port=80
8
8
 
9
9
  This command produces no output.
10
10
 
11
11
  For more information, see `AWS Cloud Map services <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html>`__ in the *AWS Cloud Map Developer Guide*.
12
+
13
+ **Example 2: To update a service attributes using ARN**
14
+
15
+ The following ``update-service-attributes`` example updates a service using its ARN to add a service attribute. Specifying the ARN is necessary for adding attributes to services created in namespaces shared with your account. ::
16
+
17
+ aws servicediscovery update-service-attributes \
18
+ --service-id arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678 \
19
+ --attributes Port=80
20
+
21
+ This command produces no output.
22
+
23
+ For more information, see `AWS Cloud Map services <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html>`__ and `Shared AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/sharing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
@@ -1,17 +1,33 @@
1
- **To update a service**
1
+ **Example 1: To update a service**
2
2
 
3
3
  The following ``update-service`` example updates a service to update the ``DnsConfig`` and ``HealthCheckConfig`` settings. ::
4
4
 
5
5
  aws servicediscovery update-service \
6
- --id srv-e4anhexample0004 \
7
- --service "DnsConfig={DnsRecords=[{"Type"="A","TTL"=60}]},HealthCheckConfig={"Type"="HTTP","ResourcePath"="/","FailureThreshold"="2"}"
6
+ --id srv-abcd1234xmpl5678 \
7
+ --service "DnsConfig={DnsRecords=[{Type=A,TTL=60}]},HealthCheckConfig={Type=HTTP,ResourcePath=/,FailureThreshold=2}"
8
8
 
9
9
  Output::
10
10
 
11
11
  {
12
- "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd"
12
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
13
13
  }
14
14
 
15
15
  To confirm that the operation succeeded, you can run ``get-operation``.
16
16
 
17
17
  For more information about updating a service, see `Updating an AWS Cloud Map service <https://docs.aws.amazon.com/cloud-map/latest/dg/editing-services.html>`__ in the *AWS Cloud Map Developer Guide*.
18
+
19
+ **Example 2: To update a service using ARN**
20
+
21
+ The following ``update-service`` example updates a service using its ARN. Specifying an ARN is necessary for services that are created in namespaces shared with your account. ::
22
+
23
+ aws servicediscovery update-service \
24
+ --id arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678 \
25
+ --service "DnsConfig={DnsRecords=[{Type=A,TTL=60}]},HealthCheckConfig={Type=HTTP,ResourcePath=/,FailureThreshold=2}"
26
+
27
+ Output::
28
+
29
+ {
30
+ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678"
31
+ }
32
+
33
+ For more information about updating a service, see `Updating an AWS Cloud Map service <https://docs.aws.amazon.com/cloud-map/latest/dg/editing-services.html>`__ and `Shared AWS Cloud Map namespaces <https://docs.aws.amazon.com/cloud-map/latest/dg/sharing-namespaces.html>`__ in the *AWS Cloud Map Developer Guide*.
awscli/handlers.py CHANGED
@@ -83,8 +83,6 @@ from awscli.customizations.kinesis import (
83
83
  from awscli.customizations.kms import register_fix_kms_create_grant_docs
84
84
  from awscli.customizations.logs import register_logs_commands
85
85
  from awscli.customizations.mturk import register_alias_mturk_command
86
- from awscli.customizations.opsworks import initialize as opsworks_init
87
- from awscli.customizations.opsworkscm import register_alias_opsworks_cm
88
86
  from awscli.customizations.overridesslcommonname import (
89
87
  register_override_ssl_common_name,
90
88
  )
@@ -188,7 +186,6 @@ def awscli_initialize(event_handlers):
188
186
  register_get_status(event_handlers)
189
187
  register_rename_config(event_handlers)
190
188
  register_scalar_parser(event_handlers)
191
- opsworks_init(event_handlers)
192
189
  register_lambda_create_function(event_handlers)
193
190
  register_fix_kms_create_grant_docs(event_handlers)
194
191
  register_create_hosted_zone_doc_fix(event_handlers)
@@ -208,7 +205,6 @@ def awscli_initialize(event_handlers):
208
205
  register_gamelift_commands(event_handlers)
209
206
  register_ec2_page_size_injector(event_handlers)
210
207
  cloudformation_init(event_handlers)
211
- register_alias_opsworks_cm(event_handlers)
212
208
  register_alias_mturk_command(event_handlers)
213
209
  register_alias_sagemaker_runtime_command(event_handlers)
214
210
  register_alias_socialmessaging_command(event_handlers)
awscli/paramfile.py CHANGED
@@ -10,6 +10,8 @@
10
10
  # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
+ import sys
14
+
13
15
  import copy
14
16
  import logging
15
17
  import os
@@ -20,6 +22,7 @@ from botocore.httpsession import URLLib3Session
20
22
 
21
23
  from awscli import argprocess
22
24
  from awscli.compat import compat_open
25
+ from awscli.utils import resolve_v2_debug_mode
23
26
 
24
27
  logger = logging.getLogger(__name__)
25
28
 
@@ -166,7 +169,7 @@ class URIArgumentHandler:
166
169
  prefixes.update(REMOTE_PREFIX_MAP)
167
170
  self._prefixes = prefixes
168
171
 
169
- def __call__(self, event_name, param, value, **kwargs):
172
+ def __call__(self, event_name, param, value, parsed_globals=None, **kwargs):
170
173
  """Handler that supports param values from URIs."""
171
174
  cli_argument = param
172
175
  qualified_param_name = '.'.join(event_name.split('.')[1:])
@@ -175,13 +178,27 @@ class URIArgumentHandler:
175
178
  ):
176
179
  return
177
180
  else:
178
- return self._check_for_uri_param(cli_argument, value)
181
+ return self._check_for_uri_param(cli_argument, value, parsed_globals)
179
182
 
180
- def _check_for_uri_param(self, param, value):
183
+ def _check_for_uri_param(self, param, value, parsed_globals):
181
184
  if isinstance(value, list) and len(value) == 1:
182
185
  value = value[0]
183
186
  try:
184
- return get_paramfile(value, self._prefixes)
187
+ param_file = get_paramfile(value, self._prefixes)
188
+ if param_file is not None and resolve_v2_debug_mode(parsed_globals):
189
+ print(
190
+ '\nAWS CLI v2 UPGRADE WARNING: For input parameters that '
191
+ 'have a prefix of `http://` or `https://`, AWS CLI v2 '
192
+ 'will not automatically request the content of the URL '
193
+ 'for the parameter, and the `cli_follow_urlparam` option '
194
+ 'has been removed. For guidance on how to adapt this '
195
+ 'command to AWS CLI v2 usage, see '
196
+ 'https://docs.aws.amazon.com/cli/latest/userguide/'
197
+ 'cliv2-migration-changes.html'
198
+ '#cliv2-migration-paramfile.\n',
199
+ file=sys.stderr,
200
+ )
201
+ return param_file
185
202
  except ResourceLoadingError as e:
186
203
  raise argprocess.ParamError(param.cli_name, str(e))
187
204
 
awscli/testutils.py CHANGED
@@ -27,7 +27,9 @@ import json
27
27
  import logging
28
28
  import os
29
29
  import platform
30
+ import random
30
31
  import shutil
32
+ import string
31
33
  import sys
32
34
  import tempfile
33
35
  import time
@@ -36,6 +38,7 @@ import uuid
36
38
  from pprint import pformat
37
39
  from subprocess import PIPE, Popen
38
40
  from unittest import mock
41
+ from pathlib import Path
39
42
 
40
43
  import botocore.loaders
41
44
  from botocore.awsrequest import AWSResponse
@@ -49,6 +52,11 @@ _LOADER = botocore.loaders.Loader()
49
52
  INTEG_LOG = logging.getLogger('awscli.tests.integration')
50
53
  AWS_CMD = None
51
54
 
55
+ with tempfile.TemporaryDirectory() as tmpdir:
56
+ with open(Path(tmpdir) / 'aws-cli-tmp-file', 'w') as f:
57
+ pass
58
+ CASE_INSENSITIVE = (Path(tmpdir) / 'AWS-CLI-TMP-FILE').exists()
59
+
52
60
 
53
61
  def skip_if_windows(reason):
54
62
  """Decorator to skip tests that should not be run on windows.
@@ -69,6 +77,15 @@ def skip_if_windows(reason):
69
77
  return decorator
70
78
 
71
79
 
80
+ def skip_if_case_sensitive():
81
+ def decorator(func):
82
+ return unittest.skipIf(
83
+ not CASE_INSENSITIVE,
84
+ "This test requires a case-insensitive filesystem."
85
+ )(func)
86
+ return decorator
87
+
88
+
72
89
  def create_clidriver():
73
90
  driver = awscli.clidriver.create_clidriver()
74
91
  session = driver.session
@@ -98,7 +98,7 @@ The valid values of the ``output`` configuration variable are:
98
98
  ``cli_timestamp_format`` controls the format of timestamps displayed by the AWS CLI.
99
99
  The valid values of the ``cli_timestamp_format`` configuration variable are:
100
100
 
101
- * none - Display the timestamp exactly as received from the HTTP response.
101
+ * wire - Display the timestamp exactly as received from the HTTP response.
102
102
  * iso8601 - Reformat timestamp using iso8601 in the UTC timezone.
103
103
 
104
104
  ``cli_follow_urlparam`` controls whether or not the CLI will attempt to follow
@@ -0,0 +1,105 @@
1
+ :title: AWS CLI S3 Case-Insensitivity
2
+ :description: Using 'aws s3' commands on case-insensitive filesystems
3
+ :category: S3
4
+ :related command: s3 cp, s3 sync, s3 mv
5
+
6
+
7
+ This page explains how to detect and handle potential case conflicts when
8
+ downloading multiple objects from S3 to a local case-insensitive filesystem
9
+ using a single AWS CLI command.
10
+
11
+ Case conflicts
12
+ ==============
13
+ S3 object keys are case-sensitive meaning that a bucket can have a set of
14
+ key names that differ only by case, for example, ``a.txt`` and ``A.txt``.
15
+
16
+ The AWS CLI offers high-level S3 commands that manage transfers of
17
+ multiple S3 objects using a single command:
18
+
19
+ * ``aws s3 sync``
20
+ * ``aws s3 cp --recursive``
21
+ * ``aws s3 mv --recursive``
22
+
23
+ Case conflicts can occur on case-insensitive filesystems when an S3 bucket
24
+ has multiple objects whose keys differ only by case and a single AWS CLI
25
+ command is called to download multiple S3 objects **OR** a local file
26
+ already exists whose name differs only by case.
27
+
28
+ For example, consider an S3 bucket with the following stored objects:
29
+
30
+ * ``a.txt``
31
+ * ``A.txt``
32
+
33
+ When the following AWS CLI command is called, the AWS CLI will submit
34
+ requests to download ``a.txt`` and ``A.txt``. Since only
35
+ one can exist on a case-insensitive filesystem, the last download to finish
36
+ will be the file that's locally available.
37
+
38
+ .. code-block::
39
+
40
+ aws s3 sync s3://examplebucket ./mylocaldir
41
+
42
+ Detecting and handling case conflicts
43
+ =====================================
44
+ To detect and handle case conflicts, you can specify the ``--case-conflict``
45
+ parameter. The following values are valid options:
46
+
47
+ * ``error`` - When a case conflict is detected, the command will immediately
48
+ fail and abort in-progress downloads.
49
+ * ``warn`` - When a case conflict is detected, the AWS CLI will
50
+ display a warning.
51
+ * ``skip`` - When a case conflict is detected, the command will skip
52
+ downloading the object and continue and display a warning.
53
+ * ``ignore`` - (Default) Case conflicts will not be detected or handled.
54
+
55
+
56
+ Continuing the prior example, the following describes what happens when
57
+ appending the ``--case-conflict`` parameter with possible values:
58
+
59
+ ``--case-conflict error``
60
+
61
+ 1. Submit a download request for ``A.txt``.
62
+ 2. Detect that ``a.txt`` conflicts with an object that's been submitted for download.
63
+ 3. Throw an error. If ``A.txt`` finished downloading, it will be locally available. Otherwise, the download request for ``A.txt`` will be aborted.
64
+
65
+ ``--case-conflict warn``
66
+
67
+ 1. Submit a download request for ``A.txt``.
68
+ 2. Detect that ``a.txt`` conflicts with an object that's been submitted for download.
69
+ 3. Display a warning.
70
+ 4. Submit a download request for ``a.txt``, downloading ``A.txt`` and ``a.txt`` in parallel.
71
+
72
+ ``--case-conflict skip``
73
+
74
+ 1. Submit a download request for ``A.txt``.
75
+ 2. Detect that ``a.txt`` conflicts with an object that's been submitted for download.
76
+ 3. Skip downloading ``a.txt`` and continue.
77
+
78
+ ``--case-conflict ignore``
79
+
80
+ 1. Submit a download request for ``A.txt``.
81
+ 2. Submit a download request for ``a.txt``, downloading ``A.txt`` and ``a.txt`` in parallel.
82
+
83
+ If your local filesystem is case-sensitive, there's no need to detect and
84
+ handle case conflicts. We recommend setting ``--case-conflict ignore``
85
+ in this case.
86
+
87
+ S3 Express directory buckets
88
+ ============================
89
+ Detecting case conflicts is **NOT** supported when the source is an S3 Express
90
+ directory bucket. When operating on directory buckets, valid values for the
91
+ ``--case-conflict`` parameter are:
92
+
93
+ * ``warn``
94
+ * ``ignore``
95
+
96
+ The following values are invalid when operating on directory buckets:
97
+
98
+ * ``error``
99
+ * ``skip``
100
+
101
+ For example, calling the following command will fail:
102
+
103
+ .. code-block::
104
+
105
+ aws s3 cp s3://mydirbucket--usw2-az1--x-s3 ./mylocaldir --recursive --case-conflict error
@@ -69,5 +69,21 @@
69
69
  "title": [
70
70
  "AWS CLI S3 FAQ"
71
71
  ]
72
+ },
73
+ "s3-case-insensitivity": {
74
+ "category": [
75
+ "S3"
76
+ ],
77
+ "description": [
78
+ "Using 'aws s3' commands on case-insensitive filesystems"
79
+ ],
80
+ "related command": [
81
+ "s3 cp",
82
+ "s3 sync",
83
+ "s3 mv"
84
+ ],
85
+ "title": [
86
+ "AWS CLI S3 Case-Insensitivity"
87
+ ]
72
88
  }
73
89
  }