amazonka-mwaa (empty) → 2.0
raw patch · 62 files changed
+6786/−0 lines, 62 filesdep +amazonka-coredep +amazonka-mwaadep +amazonka-test
Dependencies added: amazonka-core, amazonka-mwaa, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-mwaa.cabal +111/−0
- fixture/CreateCliToken.yaml +10/−0
- fixture/CreateCliTokenResponse.proto +0/−0
- fixture/CreateEnvironment.yaml +10/−0
- fixture/CreateEnvironmentResponse.proto +0/−0
- fixture/CreateWebLoginToken.yaml +10/−0
- fixture/CreateWebLoginTokenResponse.proto +0/−0
- fixture/DeleteEnvironment.yaml +10/−0
- fixture/DeleteEnvironmentResponse.proto +0/−0
- fixture/GetEnvironment.yaml +10/−0
- fixture/GetEnvironmentResponse.proto +0/−0
- fixture/ListEnvironments.yaml +10/−0
- fixture/ListEnvironmentsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/PublishMetrics.yaml +10/−0
- fixture/PublishMetricsResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateEnvironment.yaml +10/−0
- fixture/UpdateEnvironmentResponse.proto +0/−0
- gen/Amazonka/MwAA.hs +256/−0
- gen/Amazonka/MwAA/CreateCliToken.hs +176/−0
- gen/Amazonka/MwAA/CreateEnvironment.hs +623/−0
- gen/Amazonka/MwAA/CreateWebLoginToken.hs +177/−0
- gen/Amazonka/MwAA/DeleteEnvironment.hs +150/−0
- gen/Amazonka/MwAA/GetEnvironment.hs +162/−0
- gen/Amazonka/MwAA/Lens.hs +223/−0
- gen/Amazonka/MwAA/ListEnvironments.hs +212/−0
- gen/Amazonka/MwAA/ListTagsForResource.hs +173/−0
- gen/Amazonka/MwAA/PublishMetrics.hs +175/−0
- gen/Amazonka/MwAA/TagResource.hs +176/−0
- gen/Amazonka/MwAA/Types.hs +277/−0
- gen/Amazonka/MwAA/Types/Dimension.hs +85/−0
- gen/Amazonka/MwAA/Types/Environment.hs +590/−0
- gen/Amazonka/MwAA/Types/EnvironmentStatus.hs +101/−0
- gen/Amazonka/MwAA/Types/LastUpdate.hs +117/−0
- gen/Amazonka/MwAA/Types/LoggingConfiguration.hs +132/−0
- gen/Amazonka/MwAA/Types/LoggingConfigurationInput.hs +122/−0
- gen/Amazonka/MwAA/Types/LoggingLevel.hs +86/−0
- gen/Amazonka/MwAA/Types/MetricDatum.hs +141/−0
- gen/Amazonka/MwAA/Types/ModuleLoggingConfiguration.hs +114/−0
- gen/Amazonka/MwAA/Types/ModuleLoggingConfigurationInput.hs +106/−0
- gen/Amazonka/MwAA/Types/NetworkConfiguration.hs +104/−0
- gen/Amazonka/MwAA/Types/StatisticSet.hs +110/−0
- gen/Amazonka/MwAA/Types/Unit.hs +193/−0
- gen/Amazonka/MwAA/Types/UpdateError.hs +85/−0
- gen/Amazonka/MwAA/Types/UpdateNetworkConfigurationInput.hs +91/−0
- gen/Amazonka/MwAA/Types/UpdateStatus.hs +76/−0
- gen/Amazonka/MwAA/Types/WebserverAccessMode.hs +71/−0
- gen/Amazonka/MwAA/UntagResource.hs +172/−0
- gen/Amazonka/MwAA/UpdateEnvironment.hs +545/−0
- gen/Amazonka/MwAA/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/MwAA.hs +258/−0
- test/Test/Amazonka/MwAA.hs +20/−0
- test/Test/Amazonka/MwAA/Internal.hs +8/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon MWAA SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2020-07-01@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-mwaa)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.MwAA](http://hackage.haskell.org/package/amazonka-mwaa/docs/Amazonka-MwAA.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-mwaa` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-mwaa.cabal view
@@ -0,0 +1,111 @@+cabal-version: 2.2+name: amazonka-mwaa+version: 2.0+synopsis: Amazon MWAA SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2020-07-01@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.MwAA.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.MwAA" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-mwaa++library+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields++ exposed-modules:+ Amazonka.MwAA+ Amazonka.MwAA.CreateCliToken+ Amazonka.MwAA.CreateEnvironment+ Amazonka.MwAA.CreateWebLoginToken+ Amazonka.MwAA.DeleteEnvironment+ Amazonka.MwAA.GetEnvironment+ Amazonka.MwAA.Lens+ Amazonka.MwAA.ListEnvironments+ Amazonka.MwAA.ListTagsForResource+ Amazonka.MwAA.PublishMetrics+ Amazonka.MwAA.TagResource+ Amazonka.MwAA.Types+ Amazonka.MwAA.Types.Dimension+ Amazonka.MwAA.Types.Environment+ Amazonka.MwAA.Types.EnvironmentStatus+ Amazonka.MwAA.Types.LastUpdate+ Amazonka.MwAA.Types.LoggingConfiguration+ Amazonka.MwAA.Types.LoggingConfigurationInput+ Amazonka.MwAA.Types.LoggingLevel+ Amazonka.MwAA.Types.MetricDatum+ Amazonka.MwAA.Types.ModuleLoggingConfiguration+ Amazonka.MwAA.Types.ModuleLoggingConfigurationInput+ Amazonka.MwAA.Types.NetworkConfiguration+ Amazonka.MwAA.Types.StatisticSet+ Amazonka.MwAA.Types.Unit+ Amazonka.MwAA.Types.UpdateError+ Amazonka.MwAA.Types.UpdateNetworkConfigurationInput+ Amazonka.MwAA.Types.UpdateStatus+ Amazonka.MwAA.Types.WebserverAccessMode+ Amazonka.MwAA.UntagResource+ Amazonka.MwAA.UpdateEnvironment+ Amazonka.MwAA.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-mwaa-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.Gen.MwAA+ Test.Amazonka.MwAA+ Test.Amazonka.MwAA.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-mwaa+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/CreateCliToken.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateCliTokenResponse.proto view
+ fixture/CreateEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateEnvironmentResponse.proto view
+ fixture/CreateWebLoginToken.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateWebLoginTokenResponse.proto view
+ fixture/DeleteEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteEnvironmentResponse.proto view
+ fixture/GetEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetEnvironmentResponse.proto view
+ fixture/ListEnvironments.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListEnvironmentsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/PublishMetrics.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PublishMetricsResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdateEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/airflow/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: airflow.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateEnvironmentResponse.proto view
+ gen/Amazonka/MwAA.hs view
@@ -0,0 +1,256 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.MwAA+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2020-07-01@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Amazon Managed Workflows for Apache Airflow+--+-- This section contains the Amazon Managed Workflows for Apache Airflow+-- (MWAA) API reference documentation. For more information, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/what-is-mwaa.html What Is Amazon MWAA?>.+--+-- __Endpoints__+--+-- - @api.airflow.{region}.amazonaws.com@ - This endpoint is used for+-- environment management.+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_CreateEnvironment.html CreateEnvironment>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_DeleteEnvironment.html DeleteEnvironment>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_GetEnvironment.html GetEnvironment>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_ListEnvironments.html ListEnvironments>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_ListTagsForResource.html ListTagsForResource>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_TagResource.html TagResource>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_UntagResource.html UntagResource>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_UpdateEnvironment.html UpdateEnvironment>+--+-- - @env.airflow.{region}.amazonaws.com@ - This endpoint is used to+-- operate the Airflow environment.+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_CreateCliToken.html%20 CreateCliToken>+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_CreateWebLoginToken.html CreateWebLoginToken>+--+-- - @ops.airflow.{region}.amazonaws.com@ - This endpoint is used to push+-- environment metrics that track environment health.+--+-- - <https://docs.aws.amazon.com/mwaa/latest/API/API_PublishMetrics.html%20 PublishMetrics>+--+-- __Regions__+--+-- For a list of regions that Amazon MWAA supports, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/what-is-mwaa.html#regions-mwaa Region availability>+-- in the /Amazon MWAA User Guide/.+module Amazonka.MwAA+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** CreateCliToken+ CreateCliToken (CreateCliToken'),+ newCreateCliToken,+ CreateCliTokenResponse (CreateCliTokenResponse'),+ newCreateCliTokenResponse,++ -- ** CreateEnvironment+ CreateEnvironment (CreateEnvironment'),+ newCreateEnvironment,+ CreateEnvironmentResponse (CreateEnvironmentResponse'),+ newCreateEnvironmentResponse,++ -- ** CreateWebLoginToken+ CreateWebLoginToken (CreateWebLoginToken'),+ newCreateWebLoginToken,+ CreateWebLoginTokenResponse (CreateWebLoginTokenResponse'),+ newCreateWebLoginTokenResponse,++ -- ** DeleteEnvironment+ DeleteEnvironment (DeleteEnvironment'),+ newDeleteEnvironment,+ DeleteEnvironmentResponse (DeleteEnvironmentResponse'),+ newDeleteEnvironmentResponse,++ -- ** GetEnvironment+ GetEnvironment (GetEnvironment'),+ newGetEnvironment,+ GetEnvironmentResponse (GetEnvironmentResponse'),+ newGetEnvironmentResponse,++ -- ** ListEnvironments (Paginated)+ ListEnvironments (ListEnvironments'),+ newListEnvironments,+ ListEnvironmentsResponse (ListEnvironmentsResponse'),+ newListEnvironmentsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** PublishMetrics+ PublishMetrics (PublishMetrics'),+ newPublishMetrics,+ PublishMetricsResponse (PublishMetricsResponse'),+ newPublishMetricsResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateEnvironment+ UpdateEnvironment (UpdateEnvironment'),+ newUpdateEnvironment,+ UpdateEnvironmentResponse (UpdateEnvironmentResponse'),+ newUpdateEnvironmentResponse,++ -- * Types++ -- ** EnvironmentStatus+ EnvironmentStatus (..),++ -- ** LoggingLevel+ LoggingLevel (..),++ -- ** Unit+ Unit (..),++ -- ** UpdateStatus+ UpdateStatus (..),++ -- ** WebserverAccessMode+ WebserverAccessMode (..),++ -- ** Dimension+ Dimension (Dimension'),+ newDimension,++ -- ** Environment+ Environment (Environment'),+ newEnvironment,++ -- ** LastUpdate+ LastUpdate (LastUpdate'),+ newLastUpdate,++ -- ** LoggingConfiguration+ LoggingConfiguration (LoggingConfiguration'),+ newLoggingConfiguration,++ -- ** LoggingConfigurationInput+ LoggingConfigurationInput (LoggingConfigurationInput'),+ newLoggingConfigurationInput,++ -- ** MetricDatum+ MetricDatum (MetricDatum'),+ newMetricDatum,++ -- ** ModuleLoggingConfiguration+ ModuleLoggingConfiguration (ModuleLoggingConfiguration'),+ newModuleLoggingConfiguration,++ -- ** ModuleLoggingConfigurationInput+ ModuleLoggingConfigurationInput (ModuleLoggingConfigurationInput'),+ newModuleLoggingConfigurationInput,++ -- ** NetworkConfiguration+ NetworkConfiguration (NetworkConfiguration'),+ newNetworkConfiguration,++ -- ** StatisticSet+ StatisticSet (StatisticSet'),+ newStatisticSet,++ -- ** UpdateError+ UpdateError (UpdateError'),+ newUpdateError,++ -- ** UpdateNetworkConfigurationInput+ UpdateNetworkConfigurationInput (UpdateNetworkConfigurationInput'),+ newUpdateNetworkConfigurationInput,+ )+where++import Amazonka.MwAA.CreateCliToken+import Amazonka.MwAA.CreateEnvironment+import Amazonka.MwAA.CreateWebLoginToken+import Amazonka.MwAA.DeleteEnvironment+import Amazonka.MwAA.GetEnvironment+import Amazonka.MwAA.Lens+import Amazonka.MwAA.ListEnvironments+import Amazonka.MwAA.ListTagsForResource+import Amazonka.MwAA.PublishMetrics+import Amazonka.MwAA.TagResource+import Amazonka.MwAA.Types+import Amazonka.MwAA.UntagResource+import Amazonka.MwAA.UpdateEnvironment+import Amazonka.MwAA.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'MwAA'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/MwAA/CreateCliToken.hs view
@@ -0,0 +1,176 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.CreateCliToken+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a CLI token for the Airflow CLI. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/call-mwaa-apis-cli.html Creating an Apache Airflow CLI token>.+module Amazonka.MwAA.CreateCliToken+ ( -- * Creating a Request+ CreateCliToken (..),+ newCreateCliToken,++ -- * Request Lenses+ createCliToken_name,++ -- * Destructuring the Response+ CreateCliTokenResponse (..),+ newCreateCliTokenResponse,++ -- * Response Lenses+ createCliTokenResponse_cliToken,+ createCliTokenResponse_webServerHostname,+ createCliTokenResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateCliToken' smart constructor.+data CreateCliToken = CreateCliToken'+ { -- | The name of the Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateCliToken' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'createCliToken_name' - The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+newCreateCliToken ::+ -- | 'name'+ Prelude.Text ->+ CreateCliToken+newCreateCliToken pName_ =+ CreateCliToken' {name = pName_}++-- | The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+createCliToken_name :: Lens.Lens' CreateCliToken Prelude.Text+createCliToken_name = Lens.lens (\CreateCliToken' {name} -> name) (\s@CreateCliToken' {} a -> s {name = a} :: CreateCliToken)++instance Core.AWSRequest CreateCliToken where+ type+ AWSResponse CreateCliToken =+ CreateCliTokenResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateCliTokenResponse'+ Prelude.<$> (x Data..?> "CliToken")+ Prelude.<*> (x Data..?> "WebServerHostname")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateCliToken where+ hashWithSalt _salt CreateCliToken' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData CreateCliToken where+ rnf CreateCliToken' {..} = Prelude.rnf name++instance Data.ToHeaders CreateCliToken where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateCliToken where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath CreateCliToken where+ toPath CreateCliToken' {..} =+ Prelude.mconcat ["/clitoken/", Data.toBS name]++instance Data.ToQuery CreateCliToken where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateCliTokenResponse' smart constructor.+data CreateCliTokenResponse = CreateCliTokenResponse'+ { -- | An Airflow CLI login token.+ cliToken :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | The Airflow web server hostname for the environment.+ webServerHostname :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateCliTokenResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cliToken', 'createCliTokenResponse_cliToken' - An Airflow CLI login token.+--+-- 'webServerHostname', 'createCliTokenResponse_webServerHostname' - The Airflow web server hostname for the environment.+--+-- 'httpStatus', 'createCliTokenResponse_httpStatus' - The response's http status code.+newCreateCliTokenResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateCliTokenResponse+newCreateCliTokenResponse pHttpStatus_ =+ CreateCliTokenResponse'+ { cliToken = Prelude.Nothing,+ webServerHostname = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An Airflow CLI login token.+createCliTokenResponse_cliToken :: Lens.Lens' CreateCliTokenResponse (Prelude.Maybe Prelude.Text)+createCliTokenResponse_cliToken = Lens.lens (\CreateCliTokenResponse' {cliToken} -> cliToken) (\s@CreateCliTokenResponse' {} a -> s {cliToken = a} :: CreateCliTokenResponse) Prelude.. Lens.mapping Data._Sensitive++-- | The Airflow web server hostname for the environment.+createCliTokenResponse_webServerHostname :: Lens.Lens' CreateCliTokenResponse (Prelude.Maybe Prelude.Text)+createCliTokenResponse_webServerHostname = Lens.lens (\CreateCliTokenResponse' {webServerHostname} -> webServerHostname) (\s@CreateCliTokenResponse' {} a -> s {webServerHostname = a} :: CreateCliTokenResponse)++-- | The response's http status code.+createCliTokenResponse_httpStatus :: Lens.Lens' CreateCliTokenResponse Prelude.Int+createCliTokenResponse_httpStatus = Lens.lens (\CreateCliTokenResponse' {httpStatus} -> httpStatus) (\s@CreateCliTokenResponse' {} a -> s {httpStatus = a} :: CreateCliTokenResponse)++instance Prelude.NFData CreateCliTokenResponse where+ rnf CreateCliTokenResponse' {..} =+ Prelude.rnf cliToken+ `Prelude.seq` Prelude.rnf webServerHostname+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/CreateEnvironment.hs view
@@ -0,0 +1,623 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.CreateEnvironment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon Managed Workflows for Apache Airflow (MWAA)+-- environment.+module Amazonka.MwAA.CreateEnvironment+ ( -- * Creating a Request+ CreateEnvironment (..),+ newCreateEnvironment,++ -- * Request Lenses+ createEnvironment_airflowConfigurationOptions,+ createEnvironment_airflowVersion,+ createEnvironment_environmentClass,+ createEnvironment_kmsKey,+ createEnvironment_loggingConfiguration,+ createEnvironment_maxWorkers,+ createEnvironment_minWorkers,+ createEnvironment_pluginsS3ObjectVersion,+ createEnvironment_pluginsS3Path,+ createEnvironment_requirementsS3ObjectVersion,+ createEnvironment_requirementsS3Path,+ createEnvironment_schedulers,+ createEnvironment_tags,+ createEnvironment_webserverAccessMode,+ createEnvironment_weeklyMaintenanceWindowStart,+ createEnvironment_dagS3Path,+ createEnvironment_executionRoleArn,+ createEnvironment_name,+ createEnvironment_networkConfiguration,+ createEnvironment_sourceBucketArn,++ -- * Destructuring the Response+ CreateEnvironmentResponse (..),+ newCreateEnvironmentResponse,++ -- * Response Lenses+ createEnvironmentResponse_arn,+ createEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | This section contains the Amazon Managed Workflows for Apache Airflow+-- (MWAA) API reference documentation to create an environment. For more+-- information, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/get-started.html Get started with Amazon Managed Workflows for Apache Airflow>.+--+-- /See:/ 'newCreateEnvironment' smart constructor.+data CreateEnvironment = CreateEnvironment'+ { -- | A list of key-value pairs containing the Apache Airflow configuration+ -- options you want to attach to your environment. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+ airflowConfigurationOptions :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text (Data.Sensitive Prelude.Text))),+ -- | The Apache Airflow version for your environment. If no value is+ -- specified, it defaults to the latest version. Valid values: @1.10.12@,+ -- @2.0.2@, @2.2.2@, and @2.4.3@. For more information, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/airflow-versions.html Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA)>.+ airflowVersion :: Prelude.Maybe Prelude.Text,+ -- | The environment class type. Valid values: @mw1.small@, @mw1.medium@,+ -- @mw1.large@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+ environmentClass :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services Key Management Service (KMS) key to encrypt the+ -- data in your environment. You can use an Amazon Web Services owned CMK,+ -- or a Customer managed CMK (advanced). To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/create-environment.html Create an Amazon MWAA environment>.+ kmsKey :: Prelude.Maybe Prelude.Text,+ -- | Defines the Apache Airflow logs to send to CloudWatch Logs.+ loggingConfiguration :: Prelude.Maybe LoggingConfigurationInput,+ -- | The maximum number of workers that you want to run in your environment.+ -- MWAA scales the number of Apache Airflow workers up to the number you+ -- specify in the @MaxWorkers@ field. For example, @20@. When there are no+ -- more tasks running, and no more in the queue, MWAA disposes of the extra+ -- workers leaving the one worker that is included with your environment,+ -- or the number you specify in @MinWorkers@.+ maxWorkers :: Prelude.Maybe Prelude.Natural,+ -- | The minimum number of workers that you want to run in your environment.+ -- MWAA scales the number of Apache Airflow workers up to the number you+ -- specify in the @MaxWorkers@ field. When there are no more tasks running,+ -- and no more in the queue, MWAA disposes of the extra workers leaving the+ -- worker count you specify in the @MinWorkers@ field. For example, @2@.+ minWorkers :: Prelude.Maybe Prelude.Natural,+ -- | The version of the plugins.zip file on your Amazon S3 bucket. A version+ -- must be specified each time a plugins.zip file is updated. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+ pluginsS3ObjectVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+ -- For example, @plugins.zip@. If specified, then the plugins.zip version+ -- is required. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+ pluginsS3Path :: Prelude.Maybe Prelude.Text,+ -- | The version of the requirements.txt file on your Amazon S3 bucket. A+ -- version must be specified each time a requirements.txt file is updated.+ -- To learn more, see+ -- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+ requirementsS3ObjectVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the @requirements.txt@ file on your Amazon S3+ -- bucket. For example, @requirements.txt@. If specified, then a file+ -- version is required. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+ requirementsS3Path :: Prelude.Maybe Prelude.Text,+ -- | The number of Apache Airflow schedulers to run in your environment.+ -- Valid values:+ --+ -- - v2 - Accepts between 2 to 5. Defaults to 2.+ --+ -- - v1 - Accepts 1.+ schedulers :: Prelude.Maybe Prelude.Int,+ -- | The key-value tag pairs you want to associate to your environment. For+ -- example, @\"Environment\": \"Staging\"@. To learn more, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The Apache Airflow /Web server/ access mode. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+ webserverAccessMode :: Prelude.Maybe WebserverAccessMode,+ -- | The day and time of the week in Coordinated Universal Time (UTC) 24-hour+ -- standard time to start weekly maintenance updates of your environment in+ -- the following format: @DAY:HH:MM@. For example: @TUE:03:30@. You can+ -- specify a start time in 30 minute increments only.+ weeklyMaintenanceWindowStart :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the DAGs folder on your Amazon S3 bucket. For+ -- example, @dags@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+ dagS3Path :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the execution role for your+ -- environment. An execution role is an Amazon Web Services Identity and+ -- Access Management (IAM) role that grants MWAA permission to access+ -- Amazon Web Services services and resources used by your environment. For+ -- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+ executionRoleArn :: Prelude.Text,+ -- | The name of the Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Text,+ -- | The VPC networking components used to secure and enable network traffic+ -- between the Amazon Web Services resources for your environment. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+ networkConfiguration :: NetworkConfiguration,+ -- | The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+ -- code and supporting files are stored. For example,+ -- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+ sourceBucketArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'airflowConfigurationOptions', 'createEnvironment_airflowConfigurationOptions' - A list of key-value pairs containing the Apache Airflow configuration+-- options you want to attach to your environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+--+-- 'airflowVersion', 'createEnvironment_airflowVersion' - The Apache Airflow version for your environment. If no value is+-- specified, it defaults to the latest version. Valid values: @1.10.12@,+-- @2.0.2@, @2.2.2@, and @2.4.3@. For more information, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/airflow-versions.html Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA)>.+--+-- 'environmentClass', 'createEnvironment_environmentClass' - The environment class type. Valid values: @mw1.small@, @mw1.medium@,+-- @mw1.large@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+--+-- 'kmsKey', 'createEnvironment_kmsKey' - The Amazon Web Services Key Management Service (KMS) key to encrypt the+-- data in your environment. You can use an Amazon Web Services owned CMK,+-- or a Customer managed CMK (advanced). To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/create-environment.html Create an Amazon MWAA environment>.+--+-- 'loggingConfiguration', 'createEnvironment_loggingConfiguration' - Defines the Apache Airflow logs to send to CloudWatch Logs.+--+-- 'maxWorkers', 'createEnvironment_maxWorkers' - The maximum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. For example, @20@. When there are no+-- more tasks running, and no more in the queue, MWAA disposes of the extra+-- workers leaving the one worker that is included with your environment,+-- or the number you specify in @MinWorkers@.+--+-- 'minWorkers', 'createEnvironment_minWorkers' - The minimum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. When there are no more tasks running,+-- and no more in the queue, MWAA disposes of the extra workers leaving the+-- worker count you specify in the @MinWorkers@ field. For example, @2@.+--+-- 'pluginsS3ObjectVersion', 'createEnvironment_pluginsS3ObjectVersion' - The version of the plugins.zip file on your Amazon S3 bucket. A version+-- must be specified each time a plugins.zip file is updated. To learn+-- more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+--+-- 'pluginsS3Path', 'createEnvironment_pluginsS3Path' - The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+-- For example, @plugins.zip@. If specified, then the plugins.zip version+-- is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+--+-- 'requirementsS3ObjectVersion', 'createEnvironment_requirementsS3ObjectVersion' - The version of the requirements.txt file on your Amazon S3 bucket. A+-- version must be specified each time a requirements.txt file is updated.+-- To learn more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+--+-- 'requirementsS3Path', 'createEnvironment_requirementsS3Path' - The relative path to the @requirements.txt@ file on your Amazon S3+-- bucket. For example, @requirements.txt@. If specified, then a file+-- version is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+--+-- 'schedulers', 'createEnvironment_schedulers' - The number of Apache Airflow schedulers to run in your environment.+-- Valid values:+--+-- - v2 - Accepts between 2 to 5. Defaults to 2.+--+-- - v1 - Accepts 1.+--+-- 'tags', 'createEnvironment_tags' - The key-value tag pairs you want to associate to your environment. For+-- example, @\"Environment\": \"Staging\"@. To learn more, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+--+-- 'webserverAccessMode', 'createEnvironment_webserverAccessMode' - The Apache Airflow /Web server/ access mode. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+--+-- 'weeklyMaintenanceWindowStart', 'createEnvironment_weeklyMaintenanceWindowStart' - The day and time of the week in Coordinated Universal Time (UTC) 24-hour+-- standard time to start weekly maintenance updates of your environment in+-- the following format: @DAY:HH:MM@. For example: @TUE:03:30@. You can+-- specify a start time in 30 minute increments only.+--+-- 'dagS3Path', 'createEnvironment_dagS3Path' - The relative path to the DAGs folder on your Amazon S3 bucket. For+-- example, @dags@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+--+-- 'executionRoleArn', 'createEnvironment_executionRoleArn' - The Amazon Resource Name (ARN) of the execution role for your+-- environment. An execution role is an Amazon Web Services Identity and+-- Access Management (IAM) role that grants MWAA permission to access+-- Amazon Web Services services and resources used by your environment. For+-- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+--+-- 'name', 'createEnvironment_name' - The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+--+-- 'networkConfiguration', 'createEnvironment_networkConfiguration' - The VPC networking components used to secure and enable network traffic+-- between the Amazon Web Services resources for your environment. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+--+-- 'sourceBucketArn', 'createEnvironment_sourceBucketArn' - The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+-- code and supporting files are stored. For example,+-- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+newCreateEnvironment ::+ -- | 'dagS3Path'+ Prelude.Text ->+ -- | 'executionRoleArn'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'networkConfiguration'+ NetworkConfiguration ->+ -- | 'sourceBucketArn'+ Prelude.Text ->+ CreateEnvironment+newCreateEnvironment+ pDagS3Path_+ pExecutionRoleArn_+ pName_+ pNetworkConfiguration_+ pSourceBucketArn_ =+ CreateEnvironment'+ { airflowConfigurationOptions =+ Prelude.Nothing,+ airflowVersion = Prelude.Nothing,+ environmentClass = Prelude.Nothing,+ kmsKey = Prelude.Nothing,+ loggingConfiguration = Prelude.Nothing,+ maxWorkers = Prelude.Nothing,+ minWorkers = Prelude.Nothing,+ pluginsS3ObjectVersion = Prelude.Nothing,+ pluginsS3Path = Prelude.Nothing,+ requirementsS3ObjectVersion = Prelude.Nothing,+ requirementsS3Path = Prelude.Nothing,+ schedulers = Prelude.Nothing,+ tags = Prelude.Nothing,+ webserverAccessMode = Prelude.Nothing,+ weeklyMaintenanceWindowStart = Prelude.Nothing,+ dagS3Path = pDagS3Path_,+ executionRoleArn = pExecutionRoleArn_,+ name = pName_,+ networkConfiguration = pNetworkConfiguration_,+ sourceBucketArn = pSourceBucketArn_+ }++-- | A list of key-value pairs containing the Apache Airflow configuration+-- options you want to attach to your environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+createEnvironment_airflowConfigurationOptions :: Lens.Lens' CreateEnvironment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createEnvironment_airflowConfigurationOptions = Lens.lens (\CreateEnvironment' {airflowConfigurationOptions} -> airflowConfigurationOptions) (\s@CreateEnvironment' {} a -> s {airflowConfigurationOptions = a} :: CreateEnvironment) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The Apache Airflow version for your environment. If no value is+-- specified, it defaults to the latest version. Valid values: @1.10.12@,+-- @2.0.2@, @2.2.2@, and @2.4.3@. For more information, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/airflow-versions.html Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA)>.+createEnvironment_airflowVersion :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_airflowVersion = Lens.lens (\CreateEnvironment' {airflowVersion} -> airflowVersion) (\s@CreateEnvironment' {} a -> s {airflowVersion = a} :: CreateEnvironment)++-- | The environment class type. Valid values: @mw1.small@, @mw1.medium@,+-- @mw1.large@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+createEnvironment_environmentClass :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_environmentClass = Lens.lens (\CreateEnvironment' {environmentClass} -> environmentClass) (\s@CreateEnvironment' {} a -> s {environmentClass = a} :: CreateEnvironment)++-- | The Amazon Web Services Key Management Service (KMS) key to encrypt the+-- data in your environment. You can use an Amazon Web Services owned CMK,+-- or a Customer managed CMK (advanced). To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/create-environment.html Create an Amazon MWAA environment>.+createEnvironment_kmsKey :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_kmsKey = Lens.lens (\CreateEnvironment' {kmsKey} -> kmsKey) (\s@CreateEnvironment' {} a -> s {kmsKey = a} :: CreateEnvironment)++-- | Defines the Apache Airflow logs to send to CloudWatch Logs.+createEnvironment_loggingConfiguration :: Lens.Lens' CreateEnvironment (Prelude.Maybe LoggingConfigurationInput)+createEnvironment_loggingConfiguration = Lens.lens (\CreateEnvironment' {loggingConfiguration} -> loggingConfiguration) (\s@CreateEnvironment' {} a -> s {loggingConfiguration = a} :: CreateEnvironment)++-- | The maximum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. For example, @20@. When there are no+-- more tasks running, and no more in the queue, MWAA disposes of the extra+-- workers leaving the one worker that is included with your environment,+-- or the number you specify in @MinWorkers@.+createEnvironment_maxWorkers :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Natural)+createEnvironment_maxWorkers = Lens.lens (\CreateEnvironment' {maxWorkers} -> maxWorkers) (\s@CreateEnvironment' {} a -> s {maxWorkers = a} :: CreateEnvironment)++-- | The minimum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. When there are no more tasks running,+-- and no more in the queue, MWAA disposes of the extra workers leaving the+-- worker count you specify in the @MinWorkers@ field. For example, @2@.+createEnvironment_minWorkers :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Natural)+createEnvironment_minWorkers = Lens.lens (\CreateEnvironment' {minWorkers} -> minWorkers) (\s@CreateEnvironment' {} a -> s {minWorkers = a} :: CreateEnvironment)++-- | The version of the plugins.zip file on your Amazon S3 bucket. A version+-- must be specified each time a plugins.zip file is updated. To learn+-- more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+createEnvironment_pluginsS3ObjectVersion :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_pluginsS3ObjectVersion = Lens.lens (\CreateEnvironment' {pluginsS3ObjectVersion} -> pluginsS3ObjectVersion) (\s@CreateEnvironment' {} a -> s {pluginsS3ObjectVersion = a} :: CreateEnvironment)++-- | The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+-- For example, @plugins.zip@. If specified, then the plugins.zip version+-- is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+createEnvironment_pluginsS3Path :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_pluginsS3Path = Lens.lens (\CreateEnvironment' {pluginsS3Path} -> pluginsS3Path) (\s@CreateEnvironment' {} a -> s {pluginsS3Path = a} :: CreateEnvironment)++-- | The version of the requirements.txt file on your Amazon S3 bucket. A+-- version must be specified each time a requirements.txt file is updated.+-- To learn more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+createEnvironment_requirementsS3ObjectVersion :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_requirementsS3ObjectVersion = Lens.lens (\CreateEnvironment' {requirementsS3ObjectVersion} -> requirementsS3ObjectVersion) (\s@CreateEnvironment' {} a -> s {requirementsS3ObjectVersion = a} :: CreateEnvironment)++-- | The relative path to the @requirements.txt@ file on your Amazon S3+-- bucket. For example, @requirements.txt@. If specified, then a file+-- version is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+createEnvironment_requirementsS3Path :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_requirementsS3Path = Lens.lens (\CreateEnvironment' {requirementsS3Path} -> requirementsS3Path) (\s@CreateEnvironment' {} a -> s {requirementsS3Path = a} :: CreateEnvironment)++-- | The number of Apache Airflow schedulers to run in your environment.+-- Valid values:+--+-- - v2 - Accepts between 2 to 5. Defaults to 2.+--+-- - v1 - Accepts 1.+createEnvironment_schedulers :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Int)+createEnvironment_schedulers = Lens.lens (\CreateEnvironment' {schedulers} -> schedulers) (\s@CreateEnvironment' {} a -> s {schedulers = a} :: CreateEnvironment)++-- | The key-value tag pairs you want to associate to your environment. For+-- example, @\"Environment\": \"Staging\"@. To learn more, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+createEnvironment_tags :: Lens.Lens' CreateEnvironment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createEnvironment_tags = Lens.lens (\CreateEnvironment' {tags} -> tags) (\s@CreateEnvironment' {} a -> s {tags = a} :: CreateEnvironment) Prelude.. Lens.mapping Lens.coerced++-- | The Apache Airflow /Web server/ access mode. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+createEnvironment_webserverAccessMode :: Lens.Lens' CreateEnvironment (Prelude.Maybe WebserverAccessMode)+createEnvironment_webserverAccessMode = Lens.lens (\CreateEnvironment' {webserverAccessMode} -> webserverAccessMode) (\s@CreateEnvironment' {} a -> s {webserverAccessMode = a} :: CreateEnvironment)++-- | The day and time of the week in Coordinated Universal Time (UTC) 24-hour+-- standard time to start weekly maintenance updates of your environment in+-- the following format: @DAY:HH:MM@. For example: @TUE:03:30@. You can+-- specify a start time in 30 minute increments only.+createEnvironment_weeklyMaintenanceWindowStart :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_weeklyMaintenanceWindowStart = Lens.lens (\CreateEnvironment' {weeklyMaintenanceWindowStart} -> weeklyMaintenanceWindowStart) (\s@CreateEnvironment' {} a -> s {weeklyMaintenanceWindowStart = a} :: CreateEnvironment)++-- | The relative path to the DAGs folder on your Amazon S3 bucket. For+-- example, @dags@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+createEnvironment_dagS3Path :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_dagS3Path = Lens.lens (\CreateEnvironment' {dagS3Path} -> dagS3Path) (\s@CreateEnvironment' {} a -> s {dagS3Path = a} :: CreateEnvironment)++-- | The Amazon Resource Name (ARN) of the execution role for your+-- environment. An execution role is an Amazon Web Services Identity and+-- Access Management (IAM) role that grants MWAA permission to access+-- Amazon Web Services services and resources used by your environment. For+-- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+createEnvironment_executionRoleArn :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_executionRoleArn = Lens.lens (\CreateEnvironment' {executionRoleArn} -> executionRoleArn) (\s@CreateEnvironment' {} a -> s {executionRoleArn = a} :: CreateEnvironment)++-- | The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+createEnvironment_name :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_name = Lens.lens (\CreateEnvironment' {name} -> name) (\s@CreateEnvironment' {} a -> s {name = a} :: CreateEnvironment)++-- | The VPC networking components used to secure and enable network traffic+-- between the Amazon Web Services resources for your environment. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+createEnvironment_networkConfiguration :: Lens.Lens' CreateEnvironment NetworkConfiguration+createEnvironment_networkConfiguration = Lens.lens (\CreateEnvironment' {networkConfiguration} -> networkConfiguration) (\s@CreateEnvironment' {} a -> s {networkConfiguration = a} :: CreateEnvironment)++-- | The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+-- code and supporting files are stored. For example,+-- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+createEnvironment_sourceBucketArn :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_sourceBucketArn = Lens.lens (\CreateEnvironment' {sourceBucketArn} -> sourceBucketArn) (\s@CreateEnvironment' {} a -> s {sourceBucketArn = a} :: CreateEnvironment)++instance Core.AWSRequest CreateEnvironment where+ type+ AWSResponse CreateEnvironment =+ CreateEnvironmentResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateEnvironmentResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateEnvironment where+ hashWithSalt _salt CreateEnvironment' {..} =+ _salt+ `Prelude.hashWithSalt` airflowConfigurationOptions+ `Prelude.hashWithSalt` airflowVersion+ `Prelude.hashWithSalt` environmentClass+ `Prelude.hashWithSalt` kmsKey+ `Prelude.hashWithSalt` loggingConfiguration+ `Prelude.hashWithSalt` maxWorkers+ `Prelude.hashWithSalt` minWorkers+ `Prelude.hashWithSalt` pluginsS3ObjectVersion+ `Prelude.hashWithSalt` pluginsS3Path+ `Prelude.hashWithSalt` requirementsS3ObjectVersion+ `Prelude.hashWithSalt` requirementsS3Path+ `Prelude.hashWithSalt` schedulers+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` webserverAccessMode+ `Prelude.hashWithSalt` weeklyMaintenanceWindowStart+ `Prelude.hashWithSalt` dagS3Path+ `Prelude.hashWithSalt` executionRoleArn+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` networkConfiguration+ `Prelude.hashWithSalt` sourceBucketArn++instance Prelude.NFData CreateEnvironment where+ rnf CreateEnvironment' {..} =+ Prelude.rnf airflowConfigurationOptions+ `Prelude.seq` Prelude.rnf airflowVersion+ `Prelude.seq` Prelude.rnf environmentClass+ `Prelude.seq` Prelude.rnf kmsKey+ `Prelude.seq` Prelude.rnf loggingConfiguration+ `Prelude.seq` Prelude.rnf maxWorkers+ `Prelude.seq` Prelude.rnf minWorkers+ `Prelude.seq` Prelude.rnf pluginsS3ObjectVersion+ `Prelude.seq` Prelude.rnf pluginsS3Path+ `Prelude.seq` Prelude.rnf requirementsS3ObjectVersion+ `Prelude.seq` Prelude.rnf requirementsS3Path+ `Prelude.seq` Prelude.rnf schedulers+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf webserverAccessMode+ `Prelude.seq` Prelude.rnf weeklyMaintenanceWindowStart+ `Prelude.seq` Prelude.rnf dagS3Path+ `Prelude.seq` Prelude.rnf executionRoleArn+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkConfiguration+ `Prelude.seq` Prelude.rnf sourceBucketArn++instance Data.ToHeaders CreateEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateEnvironment where+ toJSON CreateEnvironment' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AirflowConfigurationOptions" Data..=)+ Prelude.<$> airflowConfigurationOptions,+ ("AirflowVersion" Data..=)+ Prelude.<$> airflowVersion,+ ("EnvironmentClass" Data..=)+ Prelude.<$> environmentClass,+ ("KmsKey" Data..=) Prelude.<$> kmsKey,+ ("LoggingConfiguration" Data..=)+ Prelude.<$> loggingConfiguration,+ ("MaxWorkers" Data..=) Prelude.<$> maxWorkers,+ ("MinWorkers" Data..=) Prelude.<$> minWorkers,+ ("PluginsS3ObjectVersion" Data..=)+ Prelude.<$> pluginsS3ObjectVersion,+ ("PluginsS3Path" Data..=) Prelude.<$> pluginsS3Path,+ ("RequirementsS3ObjectVersion" Data..=)+ Prelude.<$> requirementsS3ObjectVersion,+ ("RequirementsS3Path" Data..=)+ Prelude.<$> requirementsS3Path,+ ("Schedulers" Data..=) Prelude.<$> schedulers,+ ("Tags" Data..=) Prelude.<$> tags,+ ("WebserverAccessMode" Data..=)+ Prelude.<$> webserverAccessMode,+ ("WeeklyMaintenanceWindowStart" Data..=)+ Prelude.<$> weeklyMaintenanceWindowStart,+ Prelude.Just ("DagS3Path" Data..= dagS3Path),+ Prelude.Just+ ("ExecutionRoleArn" Data..= executionRoleArn),+ Prelude.Just+ ( "NetworkConfiguration"+ Data..= networkConfiguration+ ),+ Prelude.Just+ ("SourceBucketArn" Data..= sourceBucketArn)+ ]+ )++instance Data.ToPath CreateEnvironment where+ toPath CreateEnvironment' {..} =+ Prelude.mconcat ["/environments/", Data.toBS name]++instance Data.ToQuery CreateEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateEnvironmentResponse' smart constructor.+data CreateEnvironmentResponse = CreateEnvironmentResponse'+ { -- | The Amazon Resource Name (ARN) returned in the response for the+ -- environment.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'createEnvironmentResponse_arn' - The Amazon Resource Name (ARN) returned in the response for the+-- environment.+--+-- 'httpStatus', 'createEnvironmentResponse_httpStatus' - The response's http status code.+newCreateEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateEnvironmentResponse+newCreateEnvironmentResponse pHttpStatus_ =+ CreateEnvironmentResponse'+ { arn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) returned in the response for the+-- environment.+createEnvironmentResponse_arn :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.Text)+createEnvironmentResponse_arn = Lens.lens (\CreateEnvironmentResponse' {arn} -> arn) (\s@CreateEnvironmentResponse' {} a -> s {arn = a} :: CreateEnvironmentResponse)++-- | The response's http status code.+createEnvironmentResponse_httpStatus :: Lens.Lens' CreateEnvironmentResponse Prelude.Int+createEnvironmentResponse_httpStatus = Lens.lens (\CreateEnvironmentResponse' {httpStatus} -> httpStatus) (\s@CreateEnvironmentResponse' {} a -> s {httpStatus = a} :: CreateEnvironmentResponse)++instance Prelude.NFData CreateEnvironmentResponse where+ rnf CreateEnvironmentResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/CreateWebLoginToken.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.CreateWebLoginToken+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a web login token for the Airflow Web UI. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/call-mwaa-apis-web.html Creating an Apache Airflow web login token>.+module Amazonka.MwAA.CreateWebLoginToken+ ( -- * Creating a Request+ CreateWebLoginToken (..),+ newCreateWebLoginToken,++ -- * Request Lenses+ createWebLoginToken_name,++ -- * Destructuring the Response+ CreateWebLoginTokenResponse (..),+ newCreateWebLoginTokenResponse,++ -- * Response Lenses+ createWebLoginTokenResponse_webServerHostname,+ createWebLoginTokenResponse_webToken,+ createWebLoginTokenResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateWebLoginToken' smart constructor.+data CreateWebLoginToken = CreateWebLoginToken'+ { -- | The name of the Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWebLoginToken' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'createWebLoginToken_name' - The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+newCreateWebLoginToken ::+ -- | 'name'+ Prelude.Text ->+ CreateWebLoginToken+newCreateWebLoginToken pName_ =+ CreateWebLoginToken' {name = pName_}++-- | The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+createWebLoginToken_name :: Lens.Lens' CreateWebLoginToken Prelude.Text+createWebLoginToken_name = Lens.lens (\CreateWebLoginToken' {name} -> name) (\s@CreateWebLoginToken' {} a -> s {name = a} :: CreateWebLoginToken)++instance Core.AWSRequest CreateWebLoginToken where+ type+ AWSResponse CreateWebLoginToken =+ CreateWebLoginTokenResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWebLoginTokenResponse'+ Prelude.<$> (x Data..?> "WebServerHostname")+ Prelude.<*> (x Data..?> "WebToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateWebLoginToken where+ hashWithSalt _salt CreateWebLoginToken' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData CreateWebLoginToken where+ rnf CreateWebLoginToken' {..} = Prelude.rnf name++instance Data.ToHeaders CreateWebLoginToken where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWebLoginToken where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath CreateWebLoginToken where+ toPath CreateWebLoginToken' {..} =+ Prelude.mconcat ["/webtoken/", Data.toBS name]++instance Data.ToQuery CreateWebLoginToken where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWebLoginTokenResponse' smart constructor.+data CreateWebLoginTokenResponse = CreateWebLoginTokenResponse'+ { -- | The Airflow web server hostname for the environment.+ webServerHostname :: Prelude.Maybe Prelude.Text,+ -- | An Airflow web server login token.+ webToken :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWebLoginTokenResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'webServerHostname', 'createWebLoginTokenResponse_webServerHostname' - The Airflow web server hostname for the environment.+--+-- 'webToken', 'createWebLoginTokenResponse_webToken' - An Airflow web server login token.+--+-- 'httpStatus', 'createWebLoginTokenResponse_httpStatus' - The response's http status code.+newCreateWebLoginTokenResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateWebLoginTokenResponse+newCreateWebLoginTokenResponse pHttpStatus_ =+ CreateWebLoginTokenResponse'+ { webServerHostname =+ Prelude.Nothing,+ webToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Airflow web server hostname for the environment.+createWebLoginTokenResponse_webServerHostname :: Lens.Lens' CreateWebLoginTokenResponse (Prelude.Maybe Prelude.Text)+createWebLoginTokenResponse_webServerHostname = Lens.lens (\CreateWebLoginTokenResponse' {webServerHostname} -> webServerHostname) (\s@CreateWebLoginTokenResponse' {} a -> s {webServerHostname = a} :: CreateWebLoginTokenResponse)++-- | An Airflow web server login token.+createWebLoginTokenResponse_webToken :: Lens.Lens' CreateWebLoginTokenResponse (Prelude.Maybe Prelude.Text)+createWebLoginTokenResponse_webToken = Lens.lens (\CreateWebLoginTokenResponse' {webToken} -> webToken) (\s@CreateWebLoginTokenResponse' {} a -> s {webToken = a} :: CreateWebLoginTokenResponse) Prelude.. Lens.mapping Data._Sensitive++-- | The response's http status code.+createWebLoginTokenResponse_httpStatus :: Lens.Lens' CreateWebLoginTokenResponse Prelude.Int+createWebLoginTokenResponse_httpStatus = Lens.lens (\CreateWebLoginTokenResponse' {httpStatus} -> httpStatus) (\s@CreateWebLoginTokenResponse' {} a -> s {httpStatus = a} :: CreateWebLoginTokenResponse)++instance Prelude.NFData CreateWebLoginTokenResponse where+ rnf CreateWebLoginTokenResponse' {..} =+ Prelude.rnf webServerHostname+ `Prelude.seq` Prelude.rnf webToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/DeleteEnvironment.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.DeleteEnvironment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an Amazon Managed Workflows for Apache Airflow (MWAA)+-- environment.+module Amazonka.MwAA.DeleteEnvironment+ ( -- * Creating a Request+ DeleteEnvironment (..),+ newDeleteEnvironment,++ -- * Request Lenses+ deleteEnvironment_name,++ -- * Destructuring the Response+ DeleteEnvironmentResponse (..),+ newDeleteEnvironmentResponse,++ -- * Response Lenses+ deleteEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteEnvironment' smart constructor.+data DeleteEnvironment = DeleteEnvironment'+ { -- | The name of the Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'deleteEnvironment_name' - The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+newDeleteEnvironment ::+ -- | 'name'+ Prelude.Text ->+ DeleteEnvironment+newDeleteEnvironment pName_ =+ DeleteEnvironment' {name = pName_}++-- | The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+deleteEnvironment_name :: Lens.Lens' DeleteEnvironment Prelude.Text+deleteEnvironment_name = Lens.lens (\DeleteEnvironment' {name} -> name) (\s@DeleteEnvironment' {} a -> s {name = a} :: DeleteEnvironment)++instance Core.AWSRequest DeleteEnvironment where+ type+ AWSResponse DeleteEnvironment =+ DeleteEnvironmentResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteEnvironmentResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteEnvironment where+ hashWithSalt _salt DeleteEnvironment' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData DeleteEnvironment where+ rnf DeleteEnvironment' {..} = Prelude.rnf name++instance Data.ToHeaders DeleteEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteEnvironment where+ toPath DeleteEnvironment' {..} =+ Prelude.mconcat ["/environments/", Data.toBS name]++instance Data.ToQuery DeleteEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteEnvironmentResponse' smart constructor.+data DeleteEnvironmentResponse = DeleteEnvironmentResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteEnvironmentResponse_httpStatus' - The response's http status code.+newDeleteEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteEnvironmentResponse+newDeleteEnvironmentResponse pHttpStatus_ =+ DeleteEnvironmentResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteEnvironmentResponse_httpStatus :: Lens.Lens' DeleteEnvironmentResponse Prelude.Int+deleteEnvironmentResponse_httpStatus = Lens.lens (\DeleteEnvironmentResponse' {httpStatus} -> httpStatus) (\s@DeleteEnvironmentResponse' {} a -> s {httpStatus = a} :: DeleteEnvironmentResponse)++instance Prelude.NFData DeleteEnvironmentResponse where+ rnf DeleteEnvironmentResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/GetEnvironment.hs view
@@ -0,0 +1,162 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.GetEnvironment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes an Amazon Managed Workflows for Apache Airflow (MWAA)+-- environment.+module Amazonka.MwAA.GetEnvironment+ ( -- * Creating a Request+ GetEnvironment (..),+ newGetEnvironment,++ -- * Request Lenses+ getEnvironment_name,++ -- * Destructuring the Response+ GetEnvironmentResponse (..),+ newGetEnvironmentResponse,++ -- * Response Lenses+ getEnvironmentResponse_environment,+ getEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetEnvironment' smart constructor.+data GetEnvironment = GetEnvironment'+ { -- | The name of the Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'getEnvironment_name' - The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+newGetEnvironment ::+ -- | 'name'+ Prelude.Text ->+ GetEnvironment+newGetEnvironment pName_ =+ GetEnvironment' {name = pName_}++-- | The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+getEnvironment_name :: Lens.Lens' GetEnvironment Prelude.Text+getEnvironment_name = Lens.lens (\GetEnvironment' {name} -> name) (\s@GetEnvironment' {} a -> s {name = a} :: GetEnvironment)++instance Core.AWSRequest GetEnvironment where+ type+ AWSResponse GetEnvironment =+ GetEnvironmentResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetEnvironmentResponse'+ Prelude.<$> (x Data..?> "Environment")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetEnvironment where+ hashWithSalt _salt GetEnvironment' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData GetEnvironment where+ rnf GetEnvironment' {..} = Prelude.rnf name++instance Data.ToHeaders GetEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetEnvironment where+ toPath GetEnvironment' {..} =+ Prelude.mconcat ["/environments/", Data.toBS name]++instance Data.ToQuery GetEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetEnvironmentResponse' smart constructor.+data GetEnvironmentResponse = GetEnvironmentResponse'+ { -- | An object containing all available details about the environment.+ environment :: Prelude.Maybe Environment,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environment', 'getEnvironmentResponse_environment' - An object containing all available details about the environment.+--+-- 'httpStatus', 'getEnvironmentResponse_httpStatus' - The response's http status code.+newGetEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetEnvironmentResponse+newGetEnvironmentResponse pHttpStatus_ =+ GetEnvironmentResponse'+ { environment =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An object containing all available details about the environment.+getEnvironmentResponse_environment :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Environment)+getEnvironmentResponse_environment = Lens.lens (\GetEnvironmentResponse' {environment} -> environment) (\s@GetEnvironmentResponse' {} a -> s {environment = a} :: GetEnvironmentResponse)++-- | The response's http status code.+getEnvironmentResponse_httpStatus :: Lens.Lens' GetEnvironmentResponse Prelude.Int+getEnvironmentResponse_httpStatus = Lens.lens (\GetEnvironmentResponse' {httpStatus} -> httpStatus) (\s@GetEnvironmentResponse' {} a -> s {httpStatus = a} :: GetEnvironmentResponse)++instance Prelude.NFData GetEnvironmentResponse where+ rnf GetEnvironmentResponse' {..} =+ Prelude.rnf environment+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/Lens.hs view
@@ -0,0 +1,223 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Lens+ ( -- * Operations++ -- ** CreateCliToken+ createCliToken_name,+ createCliTokenResponse_cliToken,+ createCliTokenResponse_webServerHostname,+ createCliTokenResponse_httpStatus,++ -- ** CreateEnvironment+ createEnvironment_airflowConfigurationOptions,+ createEnvironment_airflowVersion,+ createEnvironment_environmentClass,+ createEnvironment_kmsKey,+ createEnvironment_loggingConfiguration,+ createEnvironment_maxWorkers,+ createEnvironment_minWorkers,+ createEnvironment_pluginsS3ObjectVersion,+ createEnvironment_pluginsS3Path,+ createEnvironment_requirementsS3ObjectVersion,+ createEnvironment_requirementsS3Path,+ createEnvironment_schedulers,+ createEnvironment_tags,+ createEnvironment_webserverAccessMode,+ createEnvironment_weeklyMaintenanceWindowStart,+ createEnvironment_dagS3Path,+ createEnvironment_executionRoleArn,+ createEnvironment_name,+ createEnvironment_networkConfiguration,+ createEnvironment_sourceBucketArn,+ createEnvironmentResponse_arn,+ createEnvironmentResponse_httpStatus,++ -- ** CreateWebLoginToken+ createWebLoginToken_name,+ createWebLoginTokenResponse_webServerHostname,+ createWebLoginTokenResponse_webToken,+ createWebLoginTokenResponse_httpStatus,++ -- ** DeleteEnvironment+ deleteEnvironment_name,+ deleteEnvironmentResponse_httpStatus,++ -- ** GetEnvironment+ getEnvironment_name,+ getEnvironmentResponse_environment,+ getEnvironmentResponse_httpStatus,++ -- ** ListEnvironments+ listEnvironments_maxResults,+ listEnvironments_nextToken,+ listEnvironmentsResponse_nextToken,+ listEnvironmentsResponse_httpStatus,+ listEnvironmentsResponse_environments,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** PublishMetrics+ publishMetrics_environmentName,+ publishMetrics_metricData,+ publishMetricsResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateEnvironment+ updateEnvironment_airflowConfigurationOptions,+ updateEnvironment_airflowVersion,+ updateEnvironment_dagS3Path,+ updateEnvironment_environmentClass,+ updateEnvironment_executionRoleArn,+ updateEnvironment_loggingConfiguration,+ updateEnvironment_maxWorkers,+ updateEnvironment_minWorkers,+ updateEnvironment_networkConfiguration,+ updateEnvironment_pluginsS3ObjectVersion,+ updateEnvironment_pluginsS3Path,+ updateEnvironment_requirementsS3ObjectVersion,+ updateEnvironment_requirementsS3Path,+ updateEnvironment_schedulers,+ updateEnvironment_sourceBucketArn,+ updateEnvironment_webserverAccessMode,+ updateEnvironment_weeklyMaintenanceWindowStart,+ updateEnvironment_name,+ updateEnvironmentResponse_arn,+ updateEnvironmentResponse_httpStatus,++ -- * Types++ -- ** Dimension+ dimension_name,+ dimension_value,++ -- ** Environment+ environment_airflowConfigurationOptions,+ environment_airflowVersion,+ environment_arn,+ environment_createdAt,+ environment_dagS3Path,+ environment_environmentClass,+ environment_executionRoleArn,+ environment_kmsKey,+ environment_lastUpdate,+ environment_loggingConfiguration,+ environment_maxWorkers,+ environment_minWorkers,+ environment_name,+ environment_networkConfiguration,+ environment_pluginsS3ObjectVersion,+ environment_pluginsS3Path,+ environment_requirementsS3ObjectVersion,+ environment_requirementsS3Path,+ environment_schedulers,+ environment_serviceRoleArn,+ environment_sourceBucketArn,+ environment_status,+ environment_tags,+ environment_webserverAccessMode,+ environment_webserverUrl,+ environment_weeklyMaintenanceWindowStart,++ -- ** LastUpdate+ lastUpdate_createdAt,+ lastUpdate_error,+ lastUpdate_source,+ lastUpdate_status,++ -- ** LoggingConfiguration+ loggingConfiguration_dagProcessingLogs,+ loggingConfiguration_schedulerLogs,+ loggingConfiguration_taskLogs,+ loggingConfiguration_webserverLogs,+ loggingConfiguration_workerLogs,++ -- ** LoggingConfigurationInput+ loggingConfigurationInput_dagProcessingLogs,+ loggingConfigurationInput_schedulerLogs,+ loggingConfigurationInput_taskLogs,+ loggingConfigurationInput_webserverLogs,+ loggingConfigurationInput_workerLogs,++ -- ** MetricDatum+ metricDatum_dimensions,+ metricDatum_statisticValues,+ metricDatum_unit,+ metricDatum_value,+ metricDatum_metricName,+ metricDatum_timestamp,++ -- ** ModuleLoggingConfiguration+ moduleLoggingConfiguration_cloudWatchLogGroupArn,+ moduleLoggingConfiguration_enabled,+ moduleLoggingConfiguration_logLevel,++ -- ** ModuleLoggingConfigurationInput+ moduleLoggingConfigurationInput_enabled,+ moduleLoggingConfigurationInput_logLevel,++ -- ** NetworkConfiguration+ networkConfiguration_securityGroupIds,+ networkConfiguration_subnetIds,++ -- ** StatisticSet+ statisticSet_maximum,+ statisticSet_minimum,+ statisticSet_sampleCount,+ statisticSet_sum,++ -- ** UpdateError+ updateError_errorCode,+ updateError_errorMessage,++ -- ** UpdateNetworkConfigurationInput+ updateNetworkConfigurationInput_securityGroupIds,+ )+where++import Amazonka.MwAA.CreateCliToken+import Amazonka.MwAA.CreateEnvironment+import Amazonka.MwAA.CreateWebLoginToken+import Amazonka.MwAA.DeleteEnvironment+import Amazonka.MwAA.GetEnvironment+import Amazonka.MwAA.ListEnvironments+import Amazonka.MwAA.ListTagsForResource+import Amazonka.MwAA.PublishMetrics+import Amazonka.MwAA.TagResource+import Amazonka.MwAA.Types.Dimension+import Amazonka.MwAA.Types.Environment+import Amazonka.MwAA.Types.LastUpdate+import Amazonka.MwAA.Types.LoggingConfiguration+import Amazonka.MwAA.Types.LoggingConfigurationInput+import Amazonka.MwAA.Types.MetricDatum+import Amazonka.MwAA.Types.ModuleLoggingConfiguration+import Amazonka.MwAA.Types.ModuleLoggingConfigurationInput+import Amazonka.MwAA.Types.NetworkConfiguration+import Amazonka.MwAA.Types.StatisticSet+import Amazonka.MwAA.Types.UpdateError+import Amazonka.MwAA.Types.UpdateNetworkConfigurationInput+import Amazonka.MwAA.UntagResource+import Amazonka.MwAA.UpdateEnvironment
+ gen/Amazonka/MwAA/ListEnvironments.hs view
@@ -0,0 +1,212 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.ListEnvironments+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the Amazon Managed Workflows for Apache Airflow (MWAA)+-- environments.+--+-- This operation returns paginated results.+module Amazonka.MwAA.ListEnvironments+ ( -- * Creating a Request+ ListEnvironments (..),+ newListEnvironments,++ -- * Request Lenses+ listEnvironments_maxResults,+ listEnvironments_nextToken,++ -- * Destructuring the Response+ ListEnvironmentsResponse (..),+ newListEnvironmentsResponse,++ -- * Response Lenses+ listEnvironmentsResponse_nextToken,+ listEnvironmentsResponse_httpStatus,+ listEnvironmentsResponse_environments,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEnvironments' smart constructor.+data ListEnvironments = ListEnvironments'+ { -- | The maximum number of results to retrieve per page. For example, @5@+ -- environments per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Retrieves the next page of the results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironments' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listEnvironments_maxResults' - The maximum number of results to retrieve per page. For example, @5@+-- environments per page.+--+-- 'nextToken', 'listEnvironments_nextToken' - Retrieves the next page of the results.+newListEnvironments ::+ ListEnvironments+newListEnvironments =+ ListEnvironments'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results to retrieve per page. For example, @5@+-- environments per page.+listEnvironments_maxResults :: Lens.Lens' ListEnvironments (Prelude.Maybe Prelude.Natural)+listEnvironments_maxResults = Lens.lens (\ListEnvironments' {maxResults} -> maxResults) (\s@ListEnvironments' {} a -> s {maxResults = a} :: ListEnvironments)++-- | Retrieves the next page of the results.+listEnvironments_nextToken :: Lens.Lens' ListEnvironments (Prelude.Maybe Prelude.Text)+listEnvironments_nextToken = Lens.lens (\ListEnvironments' {nextToken} -> nextToken) (\s@ListEnvironments' {} a -> s {nextToken = a} :: ListEnvironments)++instance Core.AWSPager ListEnvironments where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listEnvironmentsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ (rs Lens.^. listEnvironmentsResponse_environments) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listEnvironments_nextToken+ Lens..~ rs+ Lens.^? listEnvironmentsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListEnvironments where+ type+ AWSResponse ListEnvironments =+ ListEnvironmentsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListEnvironmentsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "Environments" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ListEnvironments where+ hashWithSalt _salt ListEnvironments' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListEnvironments where+ rnf ListEnvironments' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListEnvironments where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListEnvironments where+ toPath = Prelude.const "/environments"++instance Data.ToQuery ListEnvironments where+ toQuery ListEnvironments' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListEnvironmentsResponse' smart constructor.+data ListEnvironmentsResponse = ListEnvironmentsResponse'+ { -- | Retrieves the next page of the results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Returns a list of Amazon MWAA environments.+ environments :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironmentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listEnvironmentsResponse_nextToken' - Retrieves the next page of the results.+--+-- 'httpStatus', 'listEnvironmentsResponse_httpStatus' - The response's http status code.+--+-- 'environments', 'listEnvironmentsResponse_environments' - Returns a list of Amazon MWAA environments.+newListEnvironmentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListEnvironmentsResponse+newListEnvironmentsResponse pHttpStatus_ =+ ListEnvironmentsResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ environments = Prelude.mempty+ }++-- | Retrieves the next page of the results.+listEnvironmentsResponse_nextToken :: Lens.Lens' ListEnvironmentsResponse (Prelude.Maybe Prelude.Text)+listEnvironmentsResponse_nextToken = Lens.lens (\ListEnvironmentsResponse' {nextToken} -> nextToken) (\s@ListEnvironmentsResponse' {} a -> s {nextToken = a} :: ListEnvironmentsResponse)++-- | The response's http status code.+listEnvironmentsResponse_httpStatus :: Lens.Lens' ListEnvironmentsResponse Prelude.Int+listEnvironmentsResponse_httpStatus = Lens.lens (\ListEnvironmentsResponse' {httpStatus} -> httpStatus) (\s@ListEnvironmentsResponse' {} a -> s {httpStatus = a} :: ListEnvironmentsResponse)++-- | Returns a list of Amazon MWAA environments.+listEnvironmentsResponse_environments :: Lens.Lens' ListEnvironmentsResponse [Prelude.Text]+listEnvironmentsResponse_environments = Lens.lens (\ListEnvironmentsResponse' {environments} -> environments) (\s@ListEnvironmentsResponse' {} a -> s {environments = a} :: ListEnvironmentsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListEnvironmentsResponse where+ rnf ListEnvironmentsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf environments
+ gen/Amazonka/MwAA/ListTagsForResource.hs view
@@ -0,0 +1,173 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the key-value tag pairs associated to the Amazon Managed Workflows+-- for Apache Airflow (MWAA) environment. For example,+-- @\"Environment\": \"Staging\"@.+module Amazonka.MwAA.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+ -- example,+ -- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'listTagsForResource_resourceArn' - The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf resourceArn++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath ListTagsForResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The key-value tag pairs associated to your environment. To learn more,+ -- see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - The key-value tag pairs associated to your environment. To learn more,+-- see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The key-value tag pairs associated to your environment. To learn more,+-- see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/PublishMetrics.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.PublishMetrics+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- __Internal only__. Publishes environment health metrics to Amazon+-- CloudWatch.+module Amazonka.MwAA.PublishMetrics+ ( -- * Creating a Request+ PublishMetrics (..),+ newPublishMetrics,++ -- * Request Lenses+ publishMetrics_environmentName,+ publishMetrics_metricData,++ -- * Destructuring the Response+ PublishMetricsResponse (..),+ newPublishMetricsResponse,++ -- * Response Lenses+ publishMetricsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPublishMetrics' smart constructor.+data PublishMetrics = PublishMetrics'+ { -- | __Internal only__. The name of the environment.+ environmentName :: Prelude.Text,+ -- | __Internal only__. Publishes metrics to Amazon CloudWatch. To learn more+ -- about the metrics published to Amazon CloudWatch, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html Amazon MWAA performance metrics in Amazon CloudWatch>.+ metricData :: [MetricDatum]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PublishMetrics' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentName', 'publishMetrics_environmentName' - __Internal only__. The name of the environment.+--+-- 'metricData', 'publishMetrics_metricData' - __Internal only__. Publishes metrics to Amazon CloudWatch. To learn more+-- about the metrics published to Amazon CloudWatch, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html Amazon MWAA performance metrics in Amazon CloudWatch>.+newPublishMetrics ::+ -- | 'environmentName'+ Prelude.Text ->+ PublishMetrics+newPublishMetrics pEnvironmentName_ =+ PublishMetrics'+ { environmentName =+ pEnvironmentName_,+ metricData = Prelude.mempty+ }++-- | __Internal only__. The name of the environment.+publishMetrics_environmentName :: Lens.Lens' PublishMetrics Prelude.Text+publishMetrics_environmentName = Lens.lens (\PublishMetrics' {environmentName} -> environmentName) (\s@PublishMetrics' {} a -> s {environmentName = a} :: PublishMetrics)++-- | __Internal only__. Publishes metrics to Amazon CloudWatch. To learn more+-- about the metrics published to Amazon CloudWatch, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html Amazon MWAA performance metrics in Amazon CloudWatch>.+publishMetrics_metricData :: Lens.Lens' PublishMetrics [MetricDatum]+publishMetrics_metricData = Lens.lens (\PublishMetrics' {metricData} -> metricData) (\s@PublishMetrics' {} a -> s {metricData = a} :: PublishMetrics) Prelude.. Lens.coerced++instance Core.AWSRequest PublishMetrics where+ type+ AWSResponse PublishMetrics =+ PublishMetricsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ PublishMetricsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable PublishMetrics where+ hashWithSalt _salt PublishMetrics' {..} =+ _salt+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` metricData++instance Prelude.NFData PublishMetrics where+ rnf PublishMetrics' {..} =+ Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf metricData++instance Data.ToHeaders PublishMetrics where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PublishMetrics where+ toJSON PublishMetrics' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("MetricData" Data..= metricData)]+ )++instance Data.ToPath PublishMetrics where+ toPath PublishMetrics' {..} =+ Prelude.mconcat+ ["/metrics/environments/", Data.toBS environmentName]++instance Data.ToQuery PublishMetrics where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPublishMetricsResponse' smart constructor.+data PublishMetricsResponse = PublishMetricsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PublishMetricsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'publishMetricsResponse_httpStatus' - The response's http status code.+newPublishMetricsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PublishMetricsResponse+newPublishMetricsResponse pHttpStatus_ =+ PublishMetricsResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+publishMetricsResponse_httpStatus :: Lens.Lens' PublishMetricsResponse Prelude.Int+publishMetricsResponse_httpStatus = Lens.lens (\PublishMetricsResponse' {httpStatus} -> httpStatus) (\s@PublishMetricsResponse' {} a -> s {httpStatus = a} :: PublishMetricsResponse)++instance Prelude.NFData PublishMetricsResponse where+ rnf PublishMetricsResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/TagResource.hs view
@@ -0,0 +1,176 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associates key-value tag pairs to your Amazon Managed Workflows for+-- Apache Airflow (MWAA) environment.+module Amazonka.MwAA.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+ -- example,+ -- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+ resourceArn :: Prelude.Text,+ -- | The key-value tag pairs you want to associate to your environment. For+ -- example, @\"Environment\": \"Staging\"@. To learn more, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' - The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+--+-- 'tags', 'tagResource_tags' - The key-value tag pairs you want to associate to your environment. For+-- example, @\"Environment\": \"Staging\"@. To learn more, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | The key-value tag pairs you want to associate to your environment. For+-- example, @\"Environment\": \"Staging\"@. To learn more, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Tags" Data..= tags)]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/Types.hs view
@@ -0,0 +1,277 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ValidationException,++ -- * EnvironmentStatus+ EnvironmentStatus (..),++ -- * LoggingLevel+ LoggingLevel (..),++ -- * Unit+ Unit (..),++ -- * UpdateStatus+ UpdateStatus (..),++ -- * WebserverAccessMode+ WebserverAccessMode (..),++ -- * Dimension+ Dimension (..),+ newDimension,+ dimension_name,+ dimension_value,++ -- * Environment+ Environment (..),+ newEnvironment,+ environment_airflowConfigurationOptions,+ environment_airflowVersion,+ environment_arn,+ environment_createdAt,+ environment_dagS3Path,+ environment_environmentClass,+ environment_executionRoleArn,+ environment_kmsKey,+ environment_lastUpdate,+ environment_loggingConfiguration,+ environment_maxWorkers,+ environment_minWorkers,+ environment_name,+ environment_networkConfiguration,+ environment_pluginsS3ObjectVersion,+ environment_pluginsS3Path,+ environment_requirementsS3ObjectVersion,+ environment_requirementsS3Path,+ environment_schedulers,+ environment_serviceRoleArn,+ environment_sourceBucketArn,+ environment_status,+ environment_tags,+ environment_webserverAccessMode,+ environment_webserverUrl,+ environment_weeklyMaintenanceWindowStart,++ -- * LastUpdate+ LastUpdate (..),+ newLastUpdate,+ lastUpdate_createdAt,+ lastUpdate_error,+ lastUpdate_source,+ lastUpdate_status,++ -- * LoggingConfiguration+ LoggingConfiguration (..),+ newLoggingConfiguration,+ loggingConfiguration_dagProcessingLogs,+ loggingConfiguration_schedulerLogs,+ loggingConfiguration_taskLogs,+ loggingConfiguration_webserverLogs,+ loggingConfiguration_workerLogs,++ -- * LoggingConfigurationInput+ LoggingConfigurationInput (..),+ newLoggingConfigurationInput,+ loggingConfigurationInput_dagProcessingLogs,+ loggingConfigurationInput_schedulerLogs,+ loggingConfigurationInput_taskLogs,+ loggingConfigurationInput_webserverLogs,+ loggingConfigurationInput_workerLogs,++ -- * MetricDatum+ MetricDatum (..),+ newMetricDatum,+ metricDatum_dimensions,+ metricDatum_statisticValues,+ metricDatum_unit,+ metricDatum_value,+ metricDatum_metricName,+ metricDatum_timestamp,++ -- * ModuleLoggingConfiguration+ ModuleLoggingConfiguration (..),+ newModuleLoggingConfiguration,+ moduleLoggingConfiguration_cloudWatchLogGroupArn,+ moduleLoggingConfiguration_enabled,+ moduleLoggingConfiguration_logLevel,++ -- * ModuleLoggingConfigurationInput+ ModuleLoggingConfigurationInput (..),+ newModuleLoggingConfigurationInput,+ moduleLoggingConfigurationInput_enabled,+ moduleLoggingConfigurationInput_logLevel,++ -- * NetworkConfiguration+ NetworkConfiguration (..),+ newNetworkConfiguration,+ networkConfiguration_securityGroupIds,+ networkConfiguration_subnetIds,++ -- * StatisticSet+ StatisticSet (..),+ newStatisticSet,+ statisticSet_maximum,+ statisticSet_minimum,+ statisticSet_sampleCount,+ statisticSet_sum,++ -- * UpdateError+ UpdateError (..),+ newUpdateError,+ updateError_errorCode,+ updateError_errorMessage,++ -- * UpdateNetworkConfigurationInput+ UpdateNetworkConfigurationInput (..),+ newUpdateNetworkConfigurationInput,+ updateNetworkConfigurationInput_securityGroupIds,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.MwAA.Types.Dimension+import Amazonka.MwAA.Types.Environment+import Amazonka.MwAA.Types.EnvironmentStatus+import Amazonka.MwAA.Types.LastUpdate+import Amazonka.MwAA.Types.LoggingConfiguration+import Amazonka.MwAA.Types.LoggingConfigurationInput+import Amazonka.MwAA.Types.LoggingLevel+import Amazonka.MwAA.Types.MetricDatum+import Amazonka.MwAA.Types.ModuleLoggingConfiguration+import Amazonka.MwAA.Types.ModuleLoggingConfigurationInput+import Amazonka.MwAA.Types.NetworkConfiguration+import Amazonka.MwAA.Types.StatisticSet+import Amazonka.MwAA.Types.Unit+import Amazonka.MwAA.Types.UpdateError+import Amazonka.MwAA.Types.UpdateNetworkConfigurationInput+import Amazonka.MwAA.Types.UpdateStatus+import Amazonka.MwAA.Types.WebserverAccessMode+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2020-07-01@ of the Amazon MWAA SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "MwAA",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "airflow",+ Core.signingName = "airflow",+ Core.version = "2020-07-01",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "MwAA",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | Access to the Apache Airflow Web UI or CLI has been denied due to+-- insufficient permissions. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/access-policies.html Accessing an Amazon MWAA environment>.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | InternalServerException: An internal error has occurred.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | ResourceNotFoundException: The resource is not available.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | ValidationException: The provided input is not valid.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/MwAA/Types/Dimension.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.Dimension+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.Dimension where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | __Internal only__. Represents the dimensions of a metric. To learn more+-- about the metrics published to Amazon CloudWatch, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html Amazon MWAA performance metrics in Amazon CloudWatch>.+--+-- /See:/ 'newDimension' smart constructor.+data Dimension = Dimension'+ { -- | __Internal only__. The name of the dimension.+ name :: Prelude.Text,+ -- | __Internal only__. The value of the dimension.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Dimension' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'dimension_name' - __Internal only__. The name of the dimension.+--+-- 'value', 'dimension_value' - __Internal only__. The value of the dimension.+newDimension ::+ -- | 'name'+ Prelude.Text ->+ -- | 'value'+ Prelude.Text ->+ Dimension+newDimension pName_ pValue_ =+ Dimension' {name = pName_, value = pValue_}++-- | __Internal only__. The name of the dimension.+dimension_name :: Lens.Lens' Dimension Prelude.Text+dimension_name = Lens.lens (\Dimension' {name} -> name) (\s@Dimension' {} a -> s {name = a} :: Dimension)++-- | __Internal only__. The value of the dimension.+dimension_value :: Lens.Lens' Dimension Prelude.Text+dimension_value = Lens.lens (\Dimension' {value} -> value) (\s@Dimension' {} a -> s {value = a} :: Dimension)++instance Prelude.Hashable Dimension where+ hashWithSalt _salt Dimension' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` value++instance Prelude.NFData Dimension where+ rnf Dimension' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf value++instance Data.ToJSON Dimension where+ toJSON Dimension' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Name" Data..= name),+ Prelude.Just ("Value" Data..= value)+ ]+ )
+ gen/Amazonka/MwAA/Types/Environment.hs view
@@ -0,0 +1,590 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.Environment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.Environment where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.EnvironmentStatus+import Amazonka.MwAA.Types.LastUpdate+import Amazonka.MwAA.Types.LoggingConfiguration+import Amazonka.MwAA.Types.NetworkConfiguration+import Amazonka.MwAA.Types.WebserverAccessMode+import qualified Amazonka.Prelude as Prelude++-- | Describes an Amazon Managed Workflows for Apache Airflow (MWAA)+-- environment.+--+-- /See:/ 'newEnvironment' smart constructor.+data Environment = Environment'+ { -- | A list of key-value pairs containing the Apache Airflow configuration+ -- options attached to your environment. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+ airflowConfigurationOptions :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text (Data.Sensitive Prelude.Text))),+ -- | The Apache Airflow version on your environment. Valid values: @1.10.12@,+ -- @2.0.2@, @2.2.2@, and @2.4.3@.+ airflowVersion :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the Amazon MWAA environment.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The day and time the environment was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The relative path to the DAGs folder on your Amazon S3 bucket. For+ -- example, @dags@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+ dagS3Path :: Prelude.Maybe Prelude.Text,+ -- | The environment class type. Valid values: @mw1.small@, @mw1.medium@,+ -- @mw1.large@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+ environmentClass :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the execution role in IAM that allows+ -- MWAA to access Amazon Web Services resources in your environment. For+ -- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+ executionRoleArn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services Key Management Service (KMS) encryption key used+ -- to encrypt the data in your environment.+ kmsKey :: Prelude.Maybe Prelude.Text,+ -- | The status of the last update on the environment.+ lastUpdate :: Prelude.Maybe LastUpdate,+ -- | The Apache Airflow logs published to CloudWatch Logs.+ loggingConfiguration :: Prelude.Maybe LoggingConfiguration,+ -- | The maximum number of workers that run in your environment. For example,+ -- @20@.+ maxWorkers :: Prelude.Maybe Prelude.Natural,+ -- | The minimum number of workers that run in your environment. For example,+ -- @2@.+ minWorkers :: Prelude.Maybe Prelude.Natural,+ -- | The name of the Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Maybe Prelude.Text,+ -- | Describes the VPC networking components used to secure and enable+ -- network traffic between the Amazon Web Services resources for your+ -- environment. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+ networkConfiguration :: Prelude.Maybe NetworkConfiguration,+ -- | The version of the plugins.zip file on your Amazon S3 bucket. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+ pluginsS3ObjectVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+ -- For example, @plugins.zip@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+ pluginsS3Path :: Prelude.Maybe Prelude.Text,+ -- | The version of the requirements.txt file on your Amazon S3 bucket. To+ -- learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+ requirementsS3ObjectVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the @requirements.txt@ file on your Amazon S3+ -- bucket. For example, @requirements.txt@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+ requirementsS3Path :: Prelude.Maybe Prelude.Text,+ -- | The number of Apache Airflow schedulers that run in your Amazon MWAA+ -- environment.+ schedulers :: Prelude.Maybe Prelude.Int,+ -- | The Amazon Resource Name (ARN) for the service-linked role of the+ -- environment. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-slr.html Amazon MWAA Service-linked role>.+ serviceRoleArn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+ -- code and supporting files are stored. For example,+ -- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+ sourceBucketArn :: Prelude.Maybe Prelude.Text,+ -- | The status of the Amazon MWAA environment. Valid values:+ --+ -- - @CREATING@ - Indicates the request to create the environment is in+ -- progress.+ --+ -- - @CREATE_FAILED@ - Indicates the request to create the environment+ -- failed, and the environment could not be created.+ --+ -- - @AVAILABLE@ - Indicates the request was successful and the+ -- environment is ready to use.+ --+ -- - @UPDATING@ - Indicates the request to update the environment is in+ -- progress.+ --+ -- - @DELETING@ - Indicates the request to delete the environment is in+ -- progress.+ --+ -- - @DELETED@ - Indicates the request to delete the environment is+ -- complete, and the environment has been deleted.+ --+ -- - @UNAVAILABLE@ - Indicates the request failed, but the environment+ -- was unable to rollback and is not in a stable state.+ --+ -- - @UPDATE_FAILED@ - Indicates the request to update the environment+ -- failed, and the environment has rolled back successfully and is+ -- ready to use.+ --+ -- We recommend reviewing our troubleshooting guide for a list of common+ -- errors and their solutions. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/troubleshooting.html Amazon MWAA troubleshooting>.+ status :: Prelude.Maybe EnvironmentStatus,+ -- | The key-value tag pairs associated to your environment. For example,+ -- @\"Environment\": \"Staging\"@. To learn more, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The Apache Airflow /Web server/ access mode. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+ webserverAccessMode :: Prelude.Maybe WebserverAccessMode,+ -- | The Apache Airflow /Web server/ host name for the Amazon MWAA+ -- environment. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/access-airflow-ui.html Accessing the Apache Airflow UI>.+ webserverUrl :: Prelude.Maybe Prelude.Text,+ -- | The day and time of the week in Coordinated Universal Time (UTC) 24-hour+ -- standard time that weekly maintenance updates are scheduled. For+ -- example: @TUE:03:30@.+ weeklyMaintenanceWindowStart :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Environment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'airflowConfigurationOptions', 'environment_airflowConfigurationOptions' - A list of key-value pairs containing the Apache Airflow configuration+-- options attached to your environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+--+-- 'airflowVersion', 'environment_airflowVersion' - The Apache Airflow version on your environment. Valid values: @1.10.12@,+-- @2.0.2@, @2.2.2@, and @2.4.3@.+--+-- 'arn', 'environment_arn' - The Amazon Resource Name (ARN) of the Amazon MWAA environment.+--+-- 'createdAt', 'environment_createdAt' - The day and time the environment was created.+--+-- 'dagS3Path', 'environment_dagS3Path' - The relative path to the DAGs folder on your Amazon S3 bucket. For+-- example, @dags@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+--+-- 'environmentClass', 'environment_environmentClass' - The environment class type. Valid values: @mw1.small@, @mw1.medium@,+-- @mw1.large@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+--+-- 'executionRoleArn', 'environment_executionRoleArn' - The Amazon Resource Name (ARN) of the execution role in IAM that allows+-- MWAA to access Amazon Web Services resources in your environment. For+-- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+--+-- 'kmsKey', 'environment_kmsKey' - The Amazon Web Services Key Management Service (KMS) encryption key used+-- to encrypt the data in your environment.+--+-- 'lastUpdate', 'environment_lastUpdate' - The status of the last update on the environment.+--+-- 'loggingConfiguration', 'environment_loggingConfiguration' - The Apache Airflow logs published to CloudWatch Logs.+--+-- 'maxWorkers', 'environment_maxWorkers' - The maximum number of workers that run in your environment. For example,+-- @20@.+--+-- 'minWorkers', 'environment_minWorkers' - The minimum number of workers that run in your environment. For example,+-- @2@.+--+-- 'name', 'environment_name' - The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+--+-- 'networkConfiguration', 'environment_networkConfiguration' - Describes the VPC networking components used to secure and enable+-- network traffic between the Amazon Web Services resources for your+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+--+-- 'pluginsS3ObjectVersion', 'environment_pluginsS3ObjectVersion' - The version of the plugins.zip file on your Amazon S3 bucket. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+--+-- 'pluginsS3Path', 'environment_pluginsS3Path' - The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+-- For example, @plugins.zip@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+--+-- 'requirementsS3ObjectVersion', 'environment_requirementsS3ObjectVersion' - The version of the requirements.txt file on your Amazon S3 bucket. To+-- learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+--+-- 'requirementsS3Path', 'environment_requirementsS3Path' - The relative path to the @requirements.txt@ file on your Amazon S3+-- bucket. For example, @requirements.txt@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+--+-- 'schedulers', 'environment_schedulers' - The number of Apache Airflow schedulers that run in your Amazon MWAA+-- environment.+--+-- 'serviceRoleArn', 'environment_serviceRoleArn' - The Amazon Resource Name (ARN) for the service-linked role of the+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-slr.html Amazon MWAA Service-linked role>.+--+-- 'sourceBucketArn', 'environment_sourceBucketArn' - The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+-- code and supporting files are stored. For example,+-- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+--+-- 'status', 'environment_status' - The status of the Amazon MWAA environment. Valid values:+--+-- - @CREATING@ - Indicates the request to create the environment is in+-- progress.+--+-- - @CREATE_FAILED@ - Indicates the request to create the environment+-- failed, and the environment could not be created.+--+-- - @AVAILABLE@ - Indicates the request was successful and the+-- environment is ready to use.+--+-- - @UPDATING@ - Indicates the request to update the environment is in+-- progress.+--+-- - @DELETING@ - Indicates the request to delete the environment is in+-- progress.+--+-- - @DELETED@ - Indicates the request to delete the environment is+-- complete, and the environment has been deleted.+--+-- - @UNAVAILABLE@ - Indicates the request failed, but the environment+-- was unable to rollback and is not in a stable state.+--+-- - @UPDATE_FAILED@ - Indicates the request to update the environment+-- failed, and the environment has rolled back successfully and is+-- ready to use.+--+-- We recommend reviewing our troubleshooting guide for a list of common+-- errors and their solutions. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/troubleshooting.html Amazon MWAA troubleshooting>.+--+-- 'tags', 'environment_tags' - The key-value tag pairs associated to your environment. For example,+-- @\"Environment\": \"Staging\"@. To learn more, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+--+-- 'webserverAccessMode', 'environment_webserverAccessMode' - The Apache Airflow /Web server/ access mode. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+--+-- 'webserverUrl', 'environment_webserverUrl' - The Apache Airflow /Web server/ host name for the Amazon MWAA+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/access-airflow-ui.html Accessing the Apache Airflow UI>.+--+-- 'weeklyMaintenanceWindowStart', 'environment_weeklyMaintenanceWindowStart' - The day and time of the week in Coordinated Universal Time (UTC) 24-hour+-- standard time that weekly maintenance updates are scheduled. For+-- example: @TUE:03:30@.+newEnvironment ::+ Environment+newEnvironment =+ Environment'+ { airflowConfigurationOptions =+ Prelude.Nothing,+ airflowVersion = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dagS3Path = Prelude.Nothing,+ environmentClass = Prelude.Nothing,+ executionRoleArn = Prelude.Nothing,+ kmsKey = Prelude.Nothing,+ lastUpdate = Prelude.Nothing,+ loggingConfiguration = Prelude.Nothing,+ maxWorkers = Prelude.Nothing,+ minWorkers = Prelude.Nothing,+ name = Prelude.Nothing,+ networkConfiguration = Prelude.Nothing,+ pluginsS3ObjectVersion = Prelude.Nothing,+ pluginsS3Path = Prelude.Nothing,+ requirementsS3ObjectVersion = Prelude.Nothing,+ requirementsS3Path = Prelude.Nothing,+ schedulers = Prelude.Nothing,+ serviceRoleArn = Prelude.Nothing,+ sourceBucketArn = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ webserverAccessMode = Prelude.Nothing,+ webserverUrl = Prelude.Nothing,+ weeklyMaintenanceWindowStart = Prelude.Nothing+ }++-- | A list of key-value pairs containing the Apache Airflow configuration+-- options attached to your environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+environment_airflowConfigurationOptions :: Lens.Lens' Environment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+environment_airflowConfigurationOptions = Lens.lens (\Environment' {airflowConfigurationOptions} -> airflowConfigurationOptions) (\s@Environment' {} a -> s {airflowConfigurationOptions = a} :: Environment) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The Apache Airflow version on your environment. Valid values: @1.10.12@,+-- @2.0.2@, @2.2.2@, and @2.4.3@.+environment_airflowVersion :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_airflowVersion = Lens.lens (\Environment' {airflowVersion} -> airflowVersion) (\s@Environment' {} a -> s {airflowVersion = a} :: Environment)++-- | The Amazon Resource Name (ARN) of the Amazon MWAA environment.+environment_arn :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_arn = Lens.lens (\Environment' {arn} -> arn) (\s@Environment' {} a -> s {arn = a} :: Environment)++-- | The day and time the environment was created.+environment_createdAt :: Lens.Lens' Environment (Prelude.Maybe Prelude.UTCTime)+environment_createdAt = Lens.lens (\Environment' {createdAt} -> createdAt) (\s@Environment' {} a -> s {createdAt = a} :: Environment) Prelude.. Lens.mapping Data._Time++-- | The relative path to the DAGs folder on your Amazon S3 bucket. For+-- example, @dags@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+environment_dagS3Path :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_dagS3Path = Lens.lens (\Environment' {dagS3Path} -> dagS3Path) (\s@Environment' {} a -> s {dagS3Path = a} :: Environment)++-- | The environment class type. Valid values: @mw1.small@, @mw1.medium@,+-- @mw1.large@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+environment_environmentClass :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_environmentClass = Lens.lens (\Environment' {environmentClass} -> environmentClass) (\s@Environment' {} a -> s {environmentClass = a} :: Environment)++-- | The Amazon Resource Name (ARN) of the execution role in IAM that allows+-- MWAA to access Amazon Web Services resources in your environment. For+-- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+environment_executionRoleArn :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_executionRoleArn = Lens.lens (\Environment' {executionRoleArn} -> executionRoleArn) (\s@Environment' {} a -> s {executionRoleArn = a} :: Environment)++-- | The Amazon Web Services Key Management Service (KMS) encryption key used+-- to encrypt the data in your environment.+environment_kmsKey :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_kmsKey = Lens.lens (\Environment' {kmsKey} -> kmsKey) (\s@Environment' {} a -> s {kmsKey = a} :: Environment)++-- | The status of the last update on the environment.+environment_lastUpdate :: Lens.Lens' Environment (Prelude.Maybe LastUpdate)+environment_lastUpdate = Lens.lens (\Environment' {lastUpdate} -> lastUpdate) (\s@Environment' {} a -> s {lastUpdate = a} :: Environment)++-- | The Apache Airflow logs published to CloudWatch Logs.+environment_loggingConfiguration :: Lens.Lens' Environment (Prelude.Maybe LoggingConfiguration)+environment_loggingConfiguration = Lens.lens (\Environment' {loggingConfiguration} -> loggingConfiguration) (\s@Environment' {} a -> s {loggingConfiguration = a} :: Environment)++-- | The maximum number of workers that run in your environment. For example,+-- @20@.+environment_maxWorkers :: Lens.Lens' Environment (Prelude.Maybe Prelude.Natural)+environment_maxWorkers = Lens.lens (\Environment' {maxWorkers} -> maxWorkers) (\s@Environment' {} a -> s {maxWorkers = a} :: Environment)++-- | The minimum number of workers that run in your environment. For example,+-- @2@.+environment_minWorkers :: Lens.Lens' Environment (Prelude.Maybe Prelude.Natural)+environment_minWorkers = Lens.lens (\Environment' {minWorkers} -> minWorkers) (\s@Environment' {} a -> s {minWorkers = a} :: Environment)++-- | The name of the Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+environment_name :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_name = Lens.lens (\Environment' {name} -> name) (\s@Environment' {} a -> s {name = a} :: Environment)++-- | Describes the VPC networking components used to secure and enable+-- network traffic between the Amazon Web Services resources for your+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+environment_networkConfiguration :: Lens.Lens' Environment (Prelude.Maybe NetworkConfiguration)+environment_networkConfiguration = Lens.lens (\Environment' {networkConfiguration} -> networkConfiguration) (\s@Environment' {} a -> s {networkConfiguration = a} :: Environment)++-- | The version of the plugins.zip file on your Amazon S3 bucket. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+environment_pluginsS3ObjectVersion :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_pluginsS3ObjectVersion = Lens.lens (\Environment' {pluginsS3ObjectVersion} -> pluginsS3ObjectVersion) (\s@Environment' {} a -> s {pluginsS3ObjectVersion = a} :: Environment)++-- | The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+-- For example, @plugins.zip@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+environment_pluginsS3Path :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_pluginsS3Path = Lens.lens (\Environment' {pluginsS3Path} -> pluginsS3Path) (\s@Environment' {} a -> s {pluginsS3Path = a} :: Environment)++-- | The version of the requirements.txt file on your Amazon S3 bucket. To+-- learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+environment_requirementsS3ObjectVersion :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_requirementsS3ObjectVersion = Lens.lens (\Environment' {requirementsS3ObjectVersion} -> requirementsS3ObjectVersion) (\s@Environment' {} a -> s {requirementsS3ObjectVersion = a} :: Environment)++-- | The relative path to the @requirements.txt@ file on your Amazon S3+-- bucket. For example, @requirements.txt@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+environment_requirementsS3Path :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_requirementsS3Path = Lens.lens (\Environment' {requirementsS3Path} -> requirementsS3Path) (\s@Environment' {} a -> s {requirementsS3Path = a} :: Environment)++-- | The number of Apache Airflow schedulers that run in your Amazon MWAA+-- environment.+environment_schedulers :: Lens.Lens' Environment (Prelude.Maybe Prelude.Int)+environment_schedulers = Lens.lens (\Environment' {schedulers} -> schedulers) (\s@Environment' {} a -> s {schedulers = a} :: Environment)++-- | The Amazon Resource Name (ARN) for the service-linked role of the+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-slr.html Amazon MWAA Service-linked role>.+environment_serviceRoleArn :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_serviceRoleArn = Lens.lens (\Environment' {serviceRoleArn} -> serviceRoleArn) (\s@Environment' {} a -> s {serviceRoleArn = a} :: Environment)++-- | The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+-- code and supporting files are stored. For example,+-- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+environment_sourceBucketArn :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_sourceBucketArn = Lens.lens (\Environment' {sourceBucketArn} -> sourceBucketArn) (\s@Environment' {} a -> s {sourceBucketArn = a} :: Environment)++-- | The status of the Amazon MWAA environment. Valid values:+--+-- - @CREATING@ - Indicates the request to create the environment is in+-- progress.+--+-- - @CREATE_FAILED@ - Indicates the request to create the environment+-- failed, and the environment could not be created.+--+-- - @AVAILABLE@ - Indicates the request was successful and the+-- environment is ready to use.+--+-- - @UPDATING@ - Indicates the request to update the environment is in+-- progress.+--+-- - @DELETING@ - Indicates the request to delete the environment is in+-- progress.+--+-- - @DELETED@ - Indicates the request to delete the environment is+-- complete, and the environment has been deleted.+--+-- - @UNAVAILABLE@ - Indicates the request failed, but the environment+-- was unable to rollback and is not in a stable state.+--+-- - @UPDATE_FAILED@ - Indicates the request to update the environment+-- failed, and the environment has rolled back successfully and is+-- ready to use.+--+-- We recommend reviewing our troubleshooting guide for a list of common+-- errors and their solutions. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/troubleshooting.html Amazon MWAA troubleshooting>.+environment_status :: Lens.Lens' Environment (Prelude.Maybe EnvironmentStatus)+environment_status = Lens.lens (\Environment' {status} -> status) (\s@Environment' {} a -> s {status = a} :: Environment)++-- | The key-value tag pairs associated to your environment. For example,+-- @\"Environment\": \"Staging\"@. To learn more, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html Tagging Amazon Web Services resources>.+environment_tags :: Lens.Lens' Environment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+environment_tags = Lens.lens (\Environment' {tags} -> tags) (\s@Environment' {} a -> s {tags = a} :: Environment) Prelude.. Lens.mapping Lens.coerced++-- | The Apache Airflow /Web server/ access mode. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+environment_webserverAccessMode :: Lens.Lens' Environment (Prelude.Maybe WebserverAccessMode)+environment_webserverAccessMode = Lens.lens (\Environment' {webserverAccessMode} -> webserverAccessMode) (\s@Environment' {} a -> s {webserverAccessMode = a} :: Environment)++-- | The Apache Airflow /Web server/ host name for the Amazon MWAA+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/access-airflow-ui.html Accessing the Apache Airflow UI>.+environment_webserverUrl :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_webserverUrl = Lens.lens (\Environment' {webserverUrl} -> webserverUrl) (\s@Environment' {} a -> s {webserverUrl = a} :: Environment)++-- | The day and time of the week in Coordinated Universal Time (UTC) 24-hour+-- standard time that weekly maintenance updates are scheduled. For+-- example: @TUE:03:30@.+environment_weeklyMaintenanceWindowStart :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_weeklyMaintenanceWindowStart = Lens.lens (\Environment' {weeklyMaintenanceWindowStart} -> weeklyMaintenanceWindowStart) (\s@Environment' {} a -> s {weeklyMaintenanceWindowStart = a} :: Environment)++instance Data.FromJSON Environment where+ parseJSON =+ Data.withObject+ "Environment"+ ( \x ->+ Environment'+ Prelude.<$> ( x+ Data..:? "AirflowConfigurationOptions"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "AirflowVersion")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "CreatedAt")+ Prelude.<*> (x Data..:? "DagS3Path")+ Prelude.<*> (x Data..:? "EnvironmentClass")+ Prelude.<*> (x Data..:? "ExecutionRoleArn")+ Prelude.<*> (x Data..:? "KmsKey")+ Prelude.<*> (x Data..:? "LastUpdate")+ Prelude.<*> (x Data..:? "LoggingConfiguration")+ Prelude.<*> (x Data..:? "MaxWorkers")+ Prelude.<*> (x Data..:? "MinWorkers")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "NetworkConfiguration")+ Prelude.<*> (x Data..:? "PluginsS3ObjectVersion")+ Prelude.<*> (x Data..:? "PluginsS3Path")+ Prelude.<*> (x Data..:? "RequirementsS3ObjectVersion")+ Prelude.<*> (x Data..:? "RequirementsS3Path")+ Prelude.<*> (x Data..:? "Schedulers")+ Prelude.<*> (x Data..:? "ServiceRoleArn")+ Prelude.<*> (x Data..:? "SourceBucketArn")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "WebserverAccessMode")+ Prelude.<*> (x Data..:? "WebserverUrl")+ Prelude.<*> (x Data..:? "WeeklyMaintenanceWindowStart")+ )++instance Prelude.Hashable Environment where+ hashWithSalt _salt Environment' {..} =+ _salt+ `Prelude.hashWithSalt` airflowConfigurationOptions+ `Prelude.hashWithSalt` airflowVersion+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` dagS3Path+ `Prelude.hashWithSalt` environmentClass+ `Prelude.hashWithSalt` executionRoleArn+ `Prelude.hashWithSalt` kmsKey+ `Prelude.hashWithSalt` lastUpdate+ `Prelude.hashWithSalt` loggingConfiguration+ `Prelude.hashWithSalt` maxWorkers+ `Prelude.hashWithSalt` minWorkers+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` networkConfiguration+ `Prelude.hashWithSalt` pluginsS3ObjectVersion+ `Prelude.hashWithSalt` pluginsS3Path+ `Prelude.hashWithSalt` requirementsS3ObjectVersion+ `Prelude.hashWithSalt` requirementsS3Path+ `Prelude.hashWithSalt` schedulers+ `Prelude.hashWithSalt` serviceRoleArn+ `Prelude.hashWithSalt` sourceBucketArn+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` webserverAccessMode+ `Prelude.hashWithSalt` webserverUrl+ `Prelude.hashWithSalt` weeklyMaintenanceWindowStart++instance Prelude.NFData Environment where+ rnf Environment' {..} =+ Prelude.rnf airflowConfigurationOptions+ `Prelude.seq` Prelude.rnf airflowVersion+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dagS3Path+ `Prelude.seq` Prelude.rnf environmentClass+ `Prelude.seq` Prelude.rnf executionRoleArn+ `Prelude.seq` Prelude.rnf kmsKey+ `Prelude.seq` Prelude.rnf lastUpdate+ `Prelude.seq` Prelude.rnf loggingConfiguration+ `Prelude.seq` Prelude.rnf maxWorkers+ `Prelude.seq` Prelude.rnf minWorkers+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkConfiguration+ `Prelude.seq` Prelude.rnf pluginsS3ObjectVersion+ `Prelude.seq` Prelude.rnf pluginsS3Path+ `Prelude.seq` Prelude.rnf+ requirementsS3ObjectVersion+ `Prelude.seq` Prelude.rnf requirementsS3Path+ `Prelude.seq` Prelude.rnf schedulers+ `Prelude.seq` Prelude.rnf serviceRoleArn+ `Prelude.seq` Prelude.rnf sourceBucketArn+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf+ webserverAccessMode+ `Prelude.seq` Prelude.rnf+ webserverUrl+ `Prelude.seq` Prelude.rnf+ weeklyMaintenanceWindowStart
+ gen/Amazonka/MwAA/Types/EnvironmentStatus.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.EnvironmentStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.EnvironmentStatus+ ( EnvironmentStatus+ ( ..,+ EnvironmentStatus_AVAILABLE,+ EnvironmentStatus_CREATE_FAILED,+ EnvironmentStatus_CREATING,+ EnvironmentStatus_DELETED,+ EnvironmentStatus_DELETING,+ EnvironmentStatus_UNAVAILABLE,+ EnvironmentStatus_UPDATE_FAILED,+ EnvironmentStatus_UPDATING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EnvironmentStatus = EnvironmentStatus'+ { fromEnvironmentStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern EnvironmentStatus_AVAILABLE :: EnvironmentStatus+pattern EnvironmentStatus_AVAILABLE = EnvironmentStatus' "AVAILABLE"++pattern EnvironmentStatus_CREATE_FAILED :: EnvironmentStatus+pattern EnvironmentStatus_CREATE_FAILED = EnvironmentStatus' "CREATE_FAILED"++pattern EnvironmentStatus_CREATING :: EnvironmentStatus+pattern EnvironmentStatus_CREATING = EnvironmentStatus' "CREATING"++pattern EnvironmentStatus_DELETED :: EnvironmentStatus+pattern EnvironmentStatus_DELETED = EnvironmentStatus' "DELETED"++pattern EnvironmentStatus_DELETING :: EnvironmentStatus+pattern EnvironmentStatus_DELETING = EnvironmentStatus' "DELETING"++pattern EnvironmentStatus_UNAVAILABLE :: EnvironmentStatus+pattern EnvironmentStatus_UNAVAILABLE = EnvironmentStatus' "UNAVAILABLE"++pattern EnvironmentStatus_UPDATE_FAILED :: EnvironmentStatus+pattern EnvironmentStatus_UPDATE_FAILED = EnvironmentStatus' "UPDATE_FAILED"++pattern EnvironmentStatus_UPDATING :: EnvironmentStatus+pattern EnvironmentStatus_UPDATING = EnvironmentStatus' "UPDATING"++{-# COMPLETE+ EnvironmentStatus_AVAILABLE,+ EnvironmentStatus_CREATE_FAILED,+ EnvironmentStatus_CREATING,+ EnvironmentStatus_DELETED,+ EnvironmentStatus_DELETING,+ EnvironmentStatus_UNAVAILABLE,+ EnvironmentStatus_UPDATE_FAILED,+ EnvironmentStatus_UPDATING,+ EnvironmentStatus'+ #-}
+ gen/Amazonka/MwAA/Types/LastUpdate.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.LastUpdate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.LastUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.UpdateError+import Amazonka.MwAA.Types.UpdateStatus+import qualified Amazonka.Prelude as Prelude++-- | Describes the status of the last update on the environment, and any+-- errors that were encountered.+--+-- /See:/ 'newLastUpdate' smart constructor.+data LastUpdate = LastUpdate'+ { -- | The day and time of the last update on the environment.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The error that was encountered during the last update of the+ -- environment.+ error :: Prelude.Maybe UpdateError,+ -- | The source of the last update to the environment. Includes internal+ -- processes by Amazon MWAA, such as an environment maintenance update.+ source :: Prelude.Maybe Prelude.Text,+ -- | The status of the last update on the environment.+ status :: Prelude.Maybe UpdateStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LastUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createdAt', 'lastUpdate_createdAt' - The day and time of the last update on the environment.+--+-- 'error', 'lastUpdate_error' - The error that was encountered during the last update of the+-- environment.+--+-- 'source', 'lastUpdate_source' - The source of the last update to the environment. Includes internal+-- processes by Amazon MWAA, such as an environment maintenance update.+--+-- 'status', 'lastUpdate_status' - The status of the last update on the environment.+newLastUpdate ::+ LastUpdate+newLastUpdate =+ LastUpdate'+ { createdAt = Prelude.Nothing,+ error = Prelude.Nothing,+ source = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The day and time of the last update on the environment.+lastUpdate_createdAt :: Lens.Lens' LastUpdate (Prelude.Maybe Prelude.UTCTime)+lastUpdate_createdAt = Lens.lens (\LastUpdate' {createdAt} -> createdAt) (\s@LastUpdate' {} a -> s {createdAt = a} :: LastUpdate) Prelude.. Lens.mapping Data._Time++-- | The error that was encountered during the last update of the+-- environment.+lastUpdate_error :: Lens.Lens' LastUpdate (Prelude.Maybe UpdateError)+lastUpdate_error = Lens.lens (\LastUpdate' {error} -> error) (\s@LastUpdate' {} a -> s {error = a} :: LastUpdate)++-- | The source of the last update to the environment. Includes internal+-- processes by Amazon MWAA, such as an environment maintenance update.+lastUpdate_source :: Lens.Lens' LastUpdate (Prelude.Maybe Prelude.Text)+lastUpdate_source = Lens.lens (\LastUpdate' {source} -> source) (\s@LastUpdate' {} a -> s {source = a} :: LastUpdate)++-- | The status of the last update on the environment.+lastUpdate_status :: Lens.Lens' LastUpdate (Prelude.Maybe UpdateStatus)+lastUpdate_status = Lens.lens (\LastUpdate' {status} -> status) (\s@LastUpdate' {} a -> s {status = a} :: LastUpdate)++instance Data.FromJSON LastUpdate where+ parseJSON =+ Data.withObject+ "LastUpdate"+ ( \x ->+ LastUpdate'+ Prelude.<$> (x Data..:? "CreatedAt")+ Prelude.<*> (x Data..:? "Error")+ Prelude.<*> (x Data..:? "Source")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable LastUpdate where+ hashWithSalt _salt LastUpdate' {..} =+ _salt+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` source+ `Prelude.hashWithSalt` status++instance Prelude.NFData LastUpdate where+ rnf LastUpdate' {..} =+ Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf source+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/MwAA/Types/LoggingConfiguration.hs view
@@ -0,0 +1,132 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.LoggingConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.LoggingConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.ModuleLoggingConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Describes the Apache Airflow log types that are published to CloudWatch+-- Logs.+--+-- /See:/ 'newLoggingConfiguration' smart constructor.+data LoggingConfiguration = LoggingConfiguration'+ { -- | The Airflow DAG processing logs published to CloudWatch Logs and the log+ -- level.+ dagProcessingLogs :: Prelude.Maybe ModuleLoggingConfiguration,+ -- | The Airflow scheduler logs published to CloudWatch Logs and the log+ -- level.+ schedulerLogs :: Prelude.Maybe ModuleLoggingConfiguration,+ -- | The Airflow task logs published to CloudWatch Logs and the log level.+ taskLogs :: Prelude.Maybe ModuleLoggingConfiguration,+ -- | The Airflow web server logs published to CloudWatch Logs and the log+ -- level.+ webserverLogs :: Prelude.Maybe ModuleLoggingConfiguration,+ -- | The Airflow worker logs published to CloudWatch Logs and the log level.+ workerLogs :: Prelude.Maybe ModuleLoggingConfiguration+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LoggingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dagProcessingLogs', 'loggingConfiguration_dagProcessingLogs' - The Airflow DAG processing logs published to CloudWatch Logs and the log+-- level.+--+-- 'schedulerLogs', 'loggingConfiguration_schedulerLogs' - The Airflow scheduler logs published to CloudWatch Logs and the log+-- level.+--+-- 'taskLogs', 'loggingConfiguration_taskLogs' - The Airflow task logs published to CloudWatch Logs and the log level.+--+-- 'webserverLogs', 'loggingConfiguration_webserverLogs' - The Airflow web server logs published to CloudWatch Logs and the log+-- level.+--+-- 'workerLogs', 'loggingConfiguration_workerLogs' - The Airflow worker logs published to CloudWatch Logs and the log level.+newLoggingConfiguration ::+ LoggingConfiguration+newLoggingConfiguration =+ LoggingConfiguration'+ { dagProcessingLogs =+ Prelude.Nothing,+ schedulerLogs = Prelude.Nothing,+ taskLogs = Prelude.Nothing,+ webserverLogs = Prelude.Nothing,+ workerLogs = Prelude.Nothing+ }++-- | The Airflow DAG processing logs published to CloudWatch Logs and the log+-- level.+loggingConfiguration_dagProcessingLogs :: Lens.Lens' LoggingConfiguration (Prelude.Maybe ModuleLoggingConfiguration)+loggingConfiguration_dagProcessingLogs = Lens.lens (\LoggingConfiguration' {dagProcessingLogs} -> dagProcessingLogs) (\s@LoggingConfiguration' {} a -> s {dagProcessingLogs = a} :: LoggingConfiguration)++-- | The Airflow scheduler logs published to CloudWatch Logs and the log+-- level.+loggingConfiguration_schedulerLogs :: Lens.Lens' LoggingConfiguration (Prelude.Maybe ModuleLoggingConfiguration)+loggingConfiguration_schedulerLogs = Lens.lens (\LoggingConfiguration' {schedulerLogs} -> schedulerLogs) (\s@LoggingConfiguration' {} a -> s {schedulerLogs = a} :: LoggingConfiguration)++-- | The Airflow task logs published to CloudWatch Logs and the log level.+loggingConfiguration_taskLogs :: Lens.Lens' LoggingConfiguration (Prelude.Maybe ModuleLoggingConfiguration)+loggingConfiguration_taskLogs = Lens.lens (\LoggingConfiguration' {taskLogs} -> taskLogs) (\s@LoggingConfiguration' {} a -> s {taskLogs = a} :: LoggingConfiguration)++-- | The Airflow web server logs published to CloudWatch Logs and the log+-- level.+loggingConfiguration_webserverLogs :: Lens.Lens' LoggingConfiguration (Prelude.Maybe ModuleLoggingConfiguration)+loggingConfiguration_webserverLogs = Lens.lens (\LoggingConfiguration' {webserverLogs} -> webserverLogs) (\s@LoggingConfiguration' {} a -> s {webserverLogs = a} :: LoggingConfiguration)++-- | The Airflow worker logs published to CloudWatch Logs and the log level.+loggingConfiguration_workerLogs :: Lens.Lens' LoggingConfiguration (Prelude.Maybe ModuleLoggingConfiguration)+loggingConfiguration_workerLogs = Lens.lens (\LoggingConfiguration' {workerLogs} -> workerLogs) (\s@LoggingConfiguration' {} a -> s {workerLogs = a} :: LoggingConfiguration)++instance Data.FromJSON LoggingConfiguration where+ parseJSON =+ Data.withObject+ "LoggingConfiguration"+ ( \x ->+ LoggingConfiguration'+ Prelude.<$> (x Data..:? "DagProcessingLogs")+ Prelude.<*> (x Data..:? "SchedulerLogs")+ Prelude.<*> (x Data..:? "TaskLogs")+ Prelude.<*> (x Data..:? "WebserverLogs")+ Prelude.<*> (x Data..:? "WorkerLogs")+ )++instance Prelude.Hashable LoggingConfiguration where+ hashWithSalt _salt LoggingConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` dagProcessingLogs+ `Prelude.hashWithSalt` schedulerLogs+ `Prelude.hashWithSalt` taskLogs+ `Prelude.hashWithSalt` webserverLogs+ `Prelude.hashWithSalt` workerLogs++instance Prelude.NFData LoggingConfiguration where+ rnf LoggingConfiguration' {..} =+ Prelude.rnf dagProcessingLogs+ `Prelude.seq` Prelude.rnf schedulerLogs+ `Prelude.seq` Prelude.rnf taskLogs+ `Prelude.seq` Prelude.rnf webserverLogs+ `Prelude.seq` Prelude.rnf workerLogs
+ gen/Amazonka/MwAA/Types/LoggingConfigurationInput.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.LoggingConfigurationInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.LoggingConfigurationInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.ModuleLoggingConfigurationInput+import qualified Amazonka.Prelude as Prelude++-- | Defines the Apache Airflow log types to send to CloudWatch Logs.+--+-- /See:/ 'newLoggingConfigurationInput' smart constructor.+data LoggingConfigurationInput = LoggingConfigurationInput'+ { -- | Publishes Airflow DAG processing logs to CloudWatch Logs.+ dagProcessingLogs :: Prelude.Maybe ModuleLoggingConfigurationInput,+ -- | Publishes Airflow scheduler logs to CloudWatch Logs.+ schedulerLogs :: Prelude.Maybe ModuleLoggingConfigurationInput,+ -- | Publishes Airflow task logs to CloudWatch Logs.+ taskLogs :: Prelude.Maybe ModuleLoggingConfigurationInput,+ -- | Publishes Airflow web server logs to CloudWatch Logs.+ webserverLogs :: Prelude.Maybe ModuleLoggingConfigurationInput,+ -- | Publishes Airflow worker logs to CloudWatch Logs.+ workerLogs :: Prelude.Maybe ModuleLoggingConfigurationInput+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LoggingConfigurationInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dagProcessingLogs', 'loggingConfigurationInput_dagProcessingLogs' - Publishes Airflow DAG processing logs to CloudWatch Logs.+--+-- 'schedulerLogs', 'loggingConfigurationInput_schedulerLogs' - Publishes Airflow scheduler logs to CloudWatch Logs.+--+-- 'taskLogs', 'loggingConfigurationInput_taskLogs' - Publishes Airflow task logs to CloudWatch Logs.+--+-- 'webserverLogs', 'loggingConfigurationInput_webserverLogs' - Publishes Airflow web server logs to CloudWatch Logs.+--+-- 'workerLogs', 'loggingConfigurationInput_workerLogs' - Publishes Airflow worker logs to CloudWatch Logs.+newLoggingConfigurationInput ::+ LoggingConfigurationInput+newLoggingConfigurationInput =+ LoggingConfigurationInput'+ { dagProcessingLogs =+ Prelude.Nothing,+ schedulerLogs = Prelude.Nothing,+ taskLogs = Prelude.Nothing,+ webserverLogs = Prelude.Nothing,+ workerLogs = Prelude.Nothing+ }++-- | Publishes Airflow DAG processing logs to CloudWatch Logs.+loggingConfigurationInput_dagProcessingLogs :: Lens.Lens' LoggingConfigurationInput (Prelude.Maybe ModuleLoggingConfigurationInput)+loggingConfigurationInput_dagProcessingLogs = Lens.lens (\LoggingConfigurationInput' {dagProcessingLogs} -> dagProcessingLogs) (\s@LoggingConfigurationInput' {} a -> s {dagProcessingLogs = a} :: LoggingConfigurationInput)++-- | Publishes Airflow scheduler logs to CloudWatch Logs.+loggingConfigurationInput_schedulerLogs :: Lens.Lens' LoggingConfigurationInput (Prelude.Maybe ModuleLoggingConfigurationInput)+loggingConfigurationInput_schedulerLogs = Lens.lens (\LoggingConfigurationInput' {schedulerLogs} -> schedulerLogs) (\s@LoggingConfigurationInput' {} a -> s {schedulerLogs = a} :: LoggingConfigurationInput)++-- | Publishes Airflow task logs to CloudWatch Logs.+loggingConfigurationInput_taskLogs :: Lens.Lens' LoggingConfigurationInput (Prelude.Maybe ModuleLoggingConfigurationInput)+loggingConfigurationInput_taskLogs = Lens.lens (\LoggingConfigurationInput' {taskLogs} -> taskLogs) (\s@LoggingConfigurationInput' {} a -> s {taskLogs = a} :: LoggingConfigurationInput)++-- | Publishes Airflow web server logs to CloudWatch Logs.+loggingConfigurationInput_webserverLogs :: Lens.Lens' LoggingConfigurationInput (Prelude.Maybe ModuleLoggingConfigurationInput)+loggingConfigurationInput_webserverLogs = Lens.lens (\LoggingConfigurationInput' {webserverLogs} -> webserverLogs) (\s@LoggingConfigurationInput' {} a -> s {webserverLogs = a} :: LoggingConfigurationInput)++-- | Publishes Airflow worker logs to CloudWatch Logs.+loggingConfigurationInput_workerLogs :: Lens.Lens' LoggingConfigurationInput (Prelude.Maybe ModuleLoggingConfigurationInput)+loggingConfigurationInput_workerLogs = Lens.lens (\LoggingConfigurationInput' {workerLogs} -> workerLogs) (\s@LoggingConfigurationInput' {} a -> s {workerLogs = a} :: LoggingConfigurationInput)++instance Prelude.Hashable LoggingConfigurationInput where+ hashWithSalt _salt LoggingConfigurationInput' {..} =+ _salt+ `Prelude.hashWithSalt` dagProcessingLogs+ `Prelude.hashWithSalt` schedulerLogs+ `Prelude.hashWithSalt` taskLogs+ `Prelude.hashWithSalt` webserverLogs+ `Prelude.hashWithSalt` workerLogs++instance Prelude.NFData LoggingConfigurationInput where+ rnf LoggingConfigurationInput' {..} =+ Prelude.rnf dagProcessingLogs+ `Prelude.seq` Prelude.rnf schedulerLogs+ `Prelude.seq` Prelude.rnf taskLogs+ `Prelude.seq` Prelude.rnf webserverLogs+ `Prelude.seq` Prelude.rnf workerLogs++instance Data.ToJSON LoggingConfigurationInput where+ toJSON LoggingConfigurationInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("DagProcessingLogs" Data..=)+ Prelude.<$> dagProcessingLogs,+ ("SchedulerLogs" Data..=) Prelude.<$> schedulerLogs,+ ("TaskLogs" Data..=) Prelude.<$> taskLogs,+ ("WebserverLogs" Data..=) Prelude.<$> webserverLogs,+ ("WorkerLogs" Data..=) Prelude.<$> workerLogs+ ]+ )
+ gen/Amazonka/MwAA/Types/LoggingLevel.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.LoggingLevel+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.LoggingLevel+ ( LoggingLevel+ ( ..,+ LoggingLevel_CRITICAL,+ LoggingLevel_DEBUG,+ LoggingLevel_ERROR,+ LoggingLevel_INFO,+ LoggingLevel_WARNING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LoggingLevel = LoggingLevel'+ { fromLoggingLevel ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern LoggingLevel_CRITICAL :: LoggingLevel+pattern LoggingLevel_CRITICAL = LoggingLevel' "CRITICAL"++pattern LoggingLevel_DEBUG :: LoggingLevel+pattern LoggingLevel_DEBUG = LoggingLevel' "DEBUG"++pattern LoggingLevel_ERROR :: LoggingLevel+pattern LoggingLevel_ERROR = LoggingLevel' "ERROR"++pattern LoggingLevel_INFO :: LoggingLevel+pattern LoggingLevel_INFO = LoggingLevel' "INFO"++pattern LoggingLevel_WARNING :: LoggingLevel+pattern LoggingLevel_WARNING = LoggingLevel' "WARNING"++{-# COMPLETE+ LoggingLevel_CRITICAL,+ LoggingLevel_DEBUG,+ LoggingLevel_ERROR,+ LoggingLevel_INFO,+ LoggingLevel_WARNING,+ LoggingLevel'+ #-}
+ gen/Amazonka/MwAA/Types/MetricDatum.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.MetricDatum+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.MetricDatum where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.Dimension+import Amazonka.MwAA.Types.StatisticSet+import Amazonka.MwAA.Types.Unit+import qualified Amazonka.Prelude as Prelude++-- | __Internal only__. Collects Apache Airflow metrics. To learn more about+-- the metrics published to Amazon CloudWatch, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html Amazon MWAA performance metrics in Amazon CloudWatch>.+--+-- /See:/ 'newMetricDatum' smart constructor.+data MetricDatum = MetricDatum'+ { -- | __Internal only__. The dimensions associated with the metric.+ dimensions :: Prelude.Maybe [Dimension],+ -- | __Internal only__. The statistical values for the metric.+ statisticValues :: Prelude.Maybe StatisticSet,+ -- | __Internal only__. The unit used to store the metric.+ unit :: Prelude.Maybe Unit,+ -- | __Internal only__. The value for the metric.+ value :: Prelude.Maybe Prelude.Double,+ -- | __Internal only__. The name of the metric.+ metricName :: Prelude.Text,+ -- | __Internal only__. The time the metric data was received.+ timestamp :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MetricDatum' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dimensions', 'metricDatum_dimensions' - __Internal only__. The dimensions associated with the metric.+--+-- 'statisticValues', 'metricDatum_statisticValues' - __Internal only__. The statistical values for the metric.+--+-- 'unit', 'metricDatum_unit' - __Internal only__. The unit used to store the metric.+--+-- 'value', 'metricDatum_value' - __Internal only__. The value for the metric.+--+-- 'metricName', 'metricDatum_metricName' - __Internal only__. The name of the metric.+--+-- 'timestamp', 'metricDatum_timestamp' - __Internal only__. The time the metric data was received.+newMetricDatum ::+ -- | 'metricName'+ Prelude.Text ->+ -- | 'timestamp'+ Prelude.UTCTime ->+ MetricDatum+newMetricDatum pMetricName_ pTimestamp_ =+ MetricDatum'+ { dimensions = Prelude.Nothing,+ statisticValues = Prelude.Nothing,+ unit = Prelude.Nothing,+ value = Prelude.Nothing,+ metricName = pMetricName_,+ timestamp = Data._Time Lens.# pTimestamp_+ }++-- | __Internal only__. The dimensions associated with the metric.+metricDatum_dimensions :: Lens.Lens' MetricDatum (Prelude.Maybe [Dimension])+metricDatum_dimensions = Lens.lens (\MetricDatum' {dimensions} -> dimensions) (\s@MetricDatum' {} a -> s {dimensions = a} :: MetricDatum) Prelude.. Lens.mapping Lens.coerced++-- | __Internal only__. The statistical values for the metric.+metricDatum_statisticValues :: Lens.Lens' MetricDatum (Prelude.Maybe StatisticSet)+metricDatum_statisticValues = Lens.lens (\MetricDatum' {statisticValues} -> statisticValues) (\s@MetricDatum' {} a -> s {statisticValues = a} :: MetricDatum)++-- | __Internal only__. The unit used to store the metric.+metricDatum_unit :: Lens.Lens' MetricDatum (Prelude.Maybe Unit)+metricDatum_unit = Lens.lens (\MetricDatum' {unit} -> unit) (\s@MetricDatum' {} a -> s {unit = a} :: MetricDatum)++-- | __Internal only__. The value for the metric.+metricDatum_value :: Lens.Lens' MetricDatum (Prelude.Maybe Prelude.Double)+metricDatum_value = Lens.lens (\MetricDatum' {value} -> value) (\s@MetricDatum' {} a -> s {value = a} :: MetricDatum)++-- | __Internal only__. The name of the metric.+metricDatum_metricName :: Lens.Lens' MetricDatum Prelude.Text+metricDatum_metricName = Lens.lens (\MetricDatum' {metricName} -> metricName) (\s@MetricDatum' {} a -> s {metricName = a} :: MetricDatum)++-- | __Internal only__. The time the metric data was received.+metricDatum_timestamp :: Lens.Lens' MetricDatum Prelude.UTCTime+metricDatum_timestamp = Lens.lens (\MetricDatum' {timestamp} -> timestamp) (\s@MetricDatum' {} a -> s {timestamp = a} :: MetricDatum) Prelude.. Data._Time++instance Prelude.Hashable MetricDatum where+ hashWithSalt _salt MetricDatum' {..} =+ _salt+ `Prelude.hashWithSalt` dimensions+ `Prelude.hashWithSalt` statisticValues+ `Prelude.hashWithSalt` unit+ `Prelude.hashWithSalt` value+ `Prelude.hashWithSalt` metricName+ `Prelude.hashWithSalt` timestamp++instance Prelude.NFData MetricDatum where+ rnf MetricDatum' {..} =+ Prelude.rnf dimensions+ `Prelude.seq` Prelude.rnf statisticValues+ `Prelude.seq` Prelude.rnf unit+ `Prelude.seq` Prelude.rnf value+ `Prelude.seq` Prelude.rnf metricName+ `Prelude.seq` Prelude.rnf timestamp++instance Data.ToJSON MetricDatum where+ toJSON MetricDatum' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Dimensions" Data..=) Prelude.<$> dimensions,+ ("StatisticValues" Data..=)+ Prelude.<$> statisticValues,+ ("Unit" Data..=) Prelude.<$> unit,+ ("Value" Data..=) Prelude.<$> value,+ Prelude.Just ("MetricName" Data..= metricName),+ Prelude.Just ("Timestamp" Data..= timestamp)+ ]+ )
+ gen/Amazonka/MwAA/Types/ModuleLoggingConfiguration.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.ModuleLoggingConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.ModuleLoggingConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.LoggingLevel+import qualified Amazonka.Prelude as Prelude++-- | Describes the Apache Airflow log details for the log type (e.g.+-- @DagProcessingLogs@).+--+-- /See:/ 'newModuleLoggingConfiguration' smart constructor.+data ModuleLoggingConfiguration = ModuleLoggingConfiguration'+ { -- | The Amazon Resource Name (ARN) for the CloudWatch Logs group where the+ -- Apache Airflow log type (e.g. @DagProcessingLogs@) is published. For+ -- example,+ -- @arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:*@.+ cloudWatchLogGroupArn :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether the Apache Airflow log type (e.g. @DagProcessingLogs@)+ -- is enabled.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | The Apache Airflow log level for the log type (e.g.+ -- @DagProcessingLogs@).+ logLevel :: Prelude.Maybe LoggingLevel+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModuleLoggingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cloudWatchLogGroupArn', 'moduleLoggingConfiguration_cloudWatchLogGroupArn' - The Amazon Resource Name (ARN) for the CloudWatch Logs group where the+-- Apache Airflow log type (e.g. @DagProcessingLogs@) is published. For+-- example,+-- @arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:*@.+--+-- 'enabled', 'moduleLoggingConfiguration_enabled' - Indicates whether the Apache Airflow log type (e.g. @DagProcessingLogs@)+-- is enabled.+--+-- 'logLevel', 'moduleLoggingConfiguration_logLevel' - The Apache Airflow log level for the log type (e.g.+-- @DagProcessingLogs@).+newModuleLoggingConfiguration ::+ ModuleLoggingConfiguration+newModuleLoggingConfiguration =+ ModuleLoggingConfiguration'+ { cloudWatchLogGroupArn =+ Prelude.Nothing,+ enabled = Prelude.Nothing,+ logLevel = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) for the CloudWatch Logs group where the+-- Apache Airflow log type (e.g. @DagProcessingLogs@) is published. For+-- example,+-- @arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:*@.+moduleLoggingConfiguration_cloudWatchLogGroupArn :: Lens.Lens' ModuleLoggingConfiguration (Prelude.Maybe Prelude.Text)+moduleLoggingConfiguration_cloudWatchLogGroupArn = Lens.lens (\ModuleLoggingConfiguration' {cloudWatchLogGroupArn} -> cloudWatchLogGroupArn) (\s@ModuleLoggingConfiguration' {} a -> s {cloudWatchLogGroupArn = a} :: ModuleLoggingConfiguration)++-- | Indicates whether the Apache Airflow log type (e.g. @DagProcessingLogs@)+-- is enabled.+moduleLoggingConfiguration_enabled :: Lens.Lens' ModuleLoggingConfiguration (Prelude.Maybe Prelude.Bool)+moduleLoggingConfiguration_enabled = Lens.lens (\ModuleLoggingConfiguration' {enabled} -> enabled) (\s@ModuleLoggingConfiguration' {} a -> s {enabled = a} :: ModuleLoggingConfiguration)++-- | The Apache Airflow log level for the log type (e.g.+-- @DagProcessingLogs@).+moduleLoggingConfiguration_logLevel :: Lens.Lens' ModuleLoggingConfiguration (Prelude.Maybe LoggingLevel)+moduleLoggingConfiguration_logLevel = Lens.lens (\ModuleLoggingConfiguration' {logLevel} -> logLevel) (\s@ModuleLoggingConfiguration' {} a -> s {logLevel = a} :: ModuleLoggingConfiguration)++instance Data.FromJSON ModuleLoggingConfiguration where+ parseJSON =+ Data.withObject+ "ModuleLoggingConfiguration"+ ( \x ->+ ModuleLoggingConfiguration'+ Prelude.<$> (x Data..:? "CloudWatchLogGroupArn")+ Prelude.<*> (x Data..:? "Enabled")+ Prelude.<*> (x Data..:? "LogLevel")+ )++instance Prelude.Hashable ModuleLoggingConfiguration where+ hashWithSalt _salt ModuleLoggingConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` cloudWatchLogGroupArn+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` logLevel++instance Prelude.NFData ModuleLoggingConfiguration where+ rnf ModuleLoggingConfiguration' {..} =+ Prelude.rnf cloudWatchLogGroupArn+ `Prelude.seq` Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf logLevel
+ gen/Amazonka/MwAA/Types/ModuleLoggingConfigurationInput.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.ModuleLoggingConfigurationInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.ModuleLoggingConfigurationInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types.LoggingLevel+import qualified Amazonka.Prelude as Prelude++-- | Enables the Apache Airflow log type (e.g. @DagProcessingLogs@) and+-- defines the log level to send to CloudWatch Logs (e.g. @INFO@).+--+-- /See:/ 'newModuleLoggingConfigurationInput' smart constructor.+data ModuleLoggingConfigurationInput = ModuleLoggingConfigurationInput'+ { -- | Indicates whether to enable the Apache Airflow log type (e.g.+ -- @DagProcessingLogs@).+ enabled :: Prelude.Bool,+ -- | Defines the Apache Airflow log level (e.g. @INFO@) to send to CloudWatch+ -- Logs.+ logLevel :: LoggingLevel+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModuleLoggingConfigurationInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'moduleLoggingConfigurationInput_enabled' - Indicates whether to enable the Apache Airflow log type (e.g.+-- @DagProcessingLogs@).+--+-- 'logLevel', 'moduleLoggingConfigurationInput_logLevel' - Defines the Apache Airflow log level (e.g. @INFO@) to send to CloudWatch+-- Logs.+newModuleLoggingConfigurationInput ::+ -- | 'enabled'+ Prelude.Bool ->+ -- | 'logLevel'+ LoggingLevel ->+ ModuleLoggingConfigurationInput+newModuleLoggingConfigurationInput+ pEnabled_+ pLogLevel_ =+ ModuleLoggingConfigurationInput'+ { enabled =+ pEnabled_,+ logLevel = pLogLevel_+ }++-- | Indicates whether to enable the Apache Airflow log type (e.g.+-- @DagProcessingLogs@).+moduleLoggingConfigurationInput_enabled :: Lens.Lens' ModuleLoggingConfigurationInput Prelude.Bool+moduleLoggingConfigurationInput_enabled = Lens.lens (\ModuleLoggingConfigurationInput' {enabled} -> enabled) (\s@ModuleLoggingConfigurationInput' {} a -> s {enabled = a} :: ModuleLoggingConfigurationInput)++-- | Defines the Apache Airflow log level (e.g. @INFO@) to send to CloudWatch+-- Logs.+moduleLoggingConfigurationInput_logLevel :: Lens.Lens' ModuleLoggingConfigurationInput LoggingLevel+moduleLoggingConfigurationInput_logLevel = Lens.lens (\ModuleLoggingConfigurationInput' {logLevel} -> logLevel) (\s@ModuleLoggingConfigurationInput' {} a -> s {logLevel = a} :: ModuleLoggingConfigurationInput)++instance+ Prelude.Hashable+ ModuleLoggingConfigurationInput+ where+ hashWithSalt+ _salt+ ModuleLoggingConfigurationInput' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` logLevel++instance+ Prelude.NFData+ ModuleLoggingConfigurationInput+ where+ rnf ModuleLoggingConfigurationInput' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf logLevel++instance Data.ToJSON ModuleLoggingConfigurationInput where+ toJSON ModuleLoggingConfigurationInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Enabled" Data..= enabled),+ Prelude.Just ("LogLevel" Data..= logLevel)+ ]+ )
+ gen/Amazonka/MwAA/Types/NetworkConfiguration.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.NetworkConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.NetworkConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the VPC networking components used to secure and enable+-- network traffic between the Amazon Web Services resources for your+-- environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+--+-- /See:/ 'newNetworkConfiguration' smart constructor.+data NetworkConfiguration = NetworkConfiguration'+ { -- | A list of security group IDs. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html Security in your VPC on Amazon MWAA>.+ securityGroupIds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | A list of subnet IDs. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+ subnetIds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'NetworkConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'securityGroupIds', 'networkConfiguration_securityGroupIds' - A list of security group IDs. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html Security in your VPC on Amazon MWAA>.+--+-- 'subnetIds', 'networkConfiguration_subnetIds' - A list of subnet IDs. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+newNetworkConfiguration ::+ NetworkConfiguration+newNetworkConfiguration =+ NetworkConfiguration'+ { securityGroupIds =+ Prelude.Nothing,+ subnetIds = Prelude.Nothing+ }++-- | A list of security group IDs. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html Security in your VPC on Amazon MWAA>.+networkConfiguration_securityGroupIds :: Lens.Lens' NetworkConfiguration (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+networkConfiguration_securityGroupIds = Lens.lens (\NetworkConfiguration' {securityGroupIds} -> securityGroupIds) (\s@NetworkConfiguration' {} a -> s {securityGroupIds = a} :: NetworkConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | A list of subnet IDs. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+networkConfiguration_subnetIds :: Lens.Lens' NetworkConfiguration (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+networkConfiguration_subnetIds = Lens.lens (\NetworkConfiguration' {subnetIds} -> subnetIds) (\s@NetworkConfiguration' {} a -> s {subnetIds = a} :: NetworkConfiguration) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON NetworkConfiguration where+ parseJSON =+ Data.withObject+ "NetworkConfiguration"+ ( \x ->+ NetworkConfiguration'+ Prelude.<$> (x Data..:? "SecurityGroupIds")+ Prelude.<*> (x Data..:? "SubnetIds")+ )++instance Prelude.Hashable NetworkConfiguration where+ hashWithSalt _salt NetworkConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` securityGroupIds+ `Prelude.hashWithSalt` subnetIds++instance Prelude.NFData NetworkConfiguration where+ rnf NetworkConfiguration' {..} =+ Prelude.rnf securityGroupIds+ `Prelude.seq` Prelude.rnf subnetIds++instance Data.ToJSON NetworkConfiguration where+ toJSON NetworkConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("SecurityGroupIds" Data..=)+ Prelude.<$> securityGroupIds,+ ("SubnetIds" Data..=) Prelude.<$> subnetIds+ ]+ )
+ gen/Amazonka/MwAA/Types/StatisticSet.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.StatisticSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.StatisticSet where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | __Internal only__. Represents a set of statistics that describe a+-- specific metric. To learn more about the metrics published to Amazon+-- CloudWatch, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html Amazon MWAA performance metrics in Amazon CloudWatch>.+--+-- /See:/ 'newStatisticSet' smart constructor.+data StatisticSet = StatisticSet'+ { -- | __Internal only__. The maximum value of the sample set.+ maximum :: Prelude.Maybe Prelude.Double,+ -- | __Internal only__. The minimum value of the sample set.+ minimum :: Prelude.Maybe Prelude.Double,+ -- | __Internal only__. The number of samples used for the statistic set.+ sampleCount :: Prelude.Maybe Prelude.Int,+ -- | __Internal only__. The sum of values for the sample set.+ sum :: Prelude.Maybe Prelude.Double+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StatisticSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maximum', 'statisticSet_maximum' - __Internal only__. The maximum value of the sample set.+--+-- 'minimum', 'statisticSet_minimum' - __Internal only__. The minimum value of the sample set.+--+-- 'sampleCount', 'statisticSet_sampleCount' - __Internal only__. The number of samples used for the statistic set.+--+-- 'sum', 'statisticSet_sum' - __Internal only__. The sum of values for the sample set.+newStatisticSet ::+ StatisticSet+newStatisticSet =+ StatisticSet'+ { maximum = Prelude.Nothing,+ minimum = Prelude.Nothing,+ sampleCount = Prelude.Nothing,+ sum = Prelude.Nothing+ }++-- | __Internal only__. The maximum value of the sample set.+statisticSet_maximum :: Lens.Lens' StatisticSet (Prelude.Maybe Prelude.Double)+statisticSet_maximum = Lens.lens (\StatisticSet' {maximum} -> maximum) (\s@StatisticSet' {} a -> s {maximum = a} :: StatisticSet)++-- | __Internal only__. The minimum value of the sample set.+statisticSet_minimum :: Lens.Lens' StatisticSet (Prelude.Maybe Prelude.Double)+statisticSet_minimum = Lens.lens (\StatisticSet' {minimum} -> minimum) (\s@StatisticSet' {} a -> s {minimum = a} :: StatisticSet)++-- | __Internal only__. The number of samples used for the statistic set.+statisticSet_sampleCount :: Lens.Lens' StatisticSet (Prelude.Maybe Prelude.Int)+statisticSet_sampleCount = Lens.lens (\StatisticSet' {sampleCount} -> sampleCount) (\s@StatisticSet' {} a -> s {sampleCount = a} :: StatisticSet)++-- | __Internal only__. The sum of values for the sample set.+statisticSet_sum :: Lens.Lens' StatisticSet (Prelude.Maybe Prelude.Double)+statisticSet_sum = Lens.lens (\StatisticSet' {sum} -> sum) (\s@StatisticSet' {} a -> s {sum = a} :: StatisticSet)++instance Prelude.Hashable StatisticSet where+ hashWithSalt _salt StatisticSet' {..} =+ _salt+ `Prelude.hashWithSalt` maximum+ `Prelude.hashWithSalt` minimum+ `Prelude.hashWithSalt` sampleCount+ `Prelude.hashWithSalt` sum++instance Prelude.NFData StatisticSet where+ rnf StatisticSet' {..} =+ Prelude.rnf maximum+ `Prelude.seq` Prelude.rnf minimum+ `Prelude.seq` Prelude.rnf sampleCount+ `Prelude.seq` Prelude.rnf sum++instance Data.ToJSON StatisticSet where+ toJSON StatisticSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Maximum" Data..=) Prelude.<$> maximum,+ ("Minimum" Data..=) Prelude.<$> minimum,+ ("SampleCount" Data..=) Prelude.<$> sampleCount,+ ("Sum" Data..=) Prelude.<$> sum+ ]+ )
+ gen/Amazonka/MwAA/Types/Unit.hs view
@@ -0,0 +1,193 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.Unit+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.Unit+ ( Unit+ ( ..,+ Unit_Bits,+ Unit_Bits_Second,+ Unit_Bytes,+ Unit_Bytes_Second,+ Unit_Count,+ Unit_Count_Second,+ Unit_Gigabits,+ Unit_Gigabits_Second,+ Unit_Gigabytes,+ Unit_Gigabytes_Second,+ Unit_Kilobits,+ Unit_Kilobits_Second,+ Unit_Kilobytes,+ Unit_Kilobytes_Second,+ Unit_Megabits,+ Unit_Megabits_Second,+ Unit_Megabytes,+ Unit_Megabytes_Second,+ Unit_Microseconds,+ Unit_Milliseconds,+ Unit_None,+ Unit_Percent,+ Unit_Seconds,+ Unit_Terabits,+ Unit_Terabits_Second,+ Unit_Terabytes,+ Unit_Terabytes_Second+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Unit = Unit' {fromUnit :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern Unit_Bits :: Unit+pattern Unit_Bits = Unit' "Bits"++pattern Unit_Bits_Second :: Unit+pattern Unit_Bits_Second = Unit' "Bits/Second"++pattern Unit_Bytes :: Unit+pattern Unit_Bytes = Unit' "Bytes"++pattern Unit_Bytes_Second :: Unit+pattern Unit_Bytes_Second = Unit' "Bytes/Second"++pattern Unit_Count :: Unit+pattern Unit_Count = Unit' "Count"++pattern Unit_Count_Second :: Unit+pattern Unit_Count_Second = Unit' "Count/Second"++pattern Unit_Gigabits :: Unit+pattern Unit_Gigabits = Unit' "Gigabits"++pattern Unit_Gigabits_Second :: Unit+pattern Unit_Gigabits_Second = Unit' "Gigabits/Second"++pattern Unit_Gigabytes :: Unit+pattern Unit_Gigabytes = Unit' "Gigabytes"++pattern Unit_Gigabytes_Second :: Unit+pattern Unit_Gigabytes_Second = Unit' "Gigabytes/Second"++pattern Unit_Kilobits :: Unit+pattern Unit_Kilobits = Unit' "Kilobits"++pattern Unit_Kilobits_Second :: Unit+pattern Unit_Kilobits_Second = Unit' "Kilobits/Second"++pattern Unit_Kilobytes :: Unit+pattern Unit_Kilobytes = Unit' "Kilobytes"++pattern Unit_Kilobytes_Second :: Unit+pattern Unit_Kilobytes_Second = Unit' "Kilobytes/Second"++pattern Unit_Megabits :: Unit+pattern Unit_Megabits = Unit' "Megabits"++pattern Unit_Megabits_Second :: Unit+pattern Unit_Megabits_Second = Unit' "Megabits/Second"++pattern Unit_Megabytes :: Unit+pattern Unit_Megabytes = Unit' "Megabytes"++pattern Unit_Megabytes_Second :: Unit+pattern Unit_Megabytes_Second = Unit' "Megabytes/Second"++pattern Unit_Microseconds :: Unit+pattern Unit_Microseconds = Unit' "Microseconds"++pattern Unit_Milliseconds :: Unit+pattern Unit_Milliseconds = Unit' "Milliseconds"++pattern Unit_None :: Unit+pattern Unit_None = Unit' "None"++pattern Unit_Percent :: Unit+pattern Unit_Percent = Unit' "Percent"++pattern Unit_Seconds :: Unit+pattern Unit_Seconds = Unit' "Seconds"++pattern Unit_Terabits :: Unit+pattern Unit_Terabits = Unit' "Terabits"++pattern Unit_Terabits_Second :: Unit+pattern Unit_Terabits_Second = Unit' "Terabits/Second"++pattern Unit_Terabytes :: Unit+pattern Unit_Terabytes = Unit' "Terabytes"++pattern Unit_Terabytes_Second :: Unit+pattern Unit_Terabytes_Second = Unit' "Terabytes/Second"++{-# COMPLETE+ Unit_Bits,+ Unit_Bits_Second,+ Unit_Bytes,+ Unit_Bytes_Second,+ Unit_Count,+ Unit_Count_Second,+ Unit_Gigabits,+ Unit_Gigabits_Second,+ Unit_Gigabytes,+ Unit_Gigabytes_Second,+ Unit_Kilobits,+ Unit_Kilobits_Second,+ Unit_Kilobytes,+ Unit_Kilobytes_Second,+ Unit_Megabits,+ Unit_Megabits_Second,+ Unit_Megabytes,+ Unit_Megabytes_Second,+ Unit_Microseconds,+ Unit_Milliseconds,+ Unit_None,+ Unit_Percent,+ Unit_Seconds,+ Unit_Terabits,+ Unit_Terabits_Second,+ Unit_Terabytes,+ Unit_Terabytes_Second,+ Unit'+ #-}
+ gen/Amazonka/MwAA/Types/UpdateError.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.UpdateError+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.UpdateError where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the error(s) encountered with the last update of the+-- environment.+--+-- /See:/ 'newUpdateError' smart constructor.+data UpdateError = UpdateError'+ { -- | The error code that corresponds to the error with the last update.+ errorCode :: Prelude.Maybe Prelude.Text,+ -- | The error message that corresponds to the error code.+ errorMessage :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateError' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorCode', 'updateError_errorCode' - The error code that corresponds to the error with the last update.+--+-- 'errorMessage', 'updateError_errorMessage' - The error message that corresponds to the error code.+newUpdateError ::+ UpdateError+newUpdateError =+ UpdateError'+ { errorCode = Prelude.Nothing,+ errorMessage = Prelude.Nothing+ }++-- | The error code that corresponds to the error with the last update.+updateError_errorCode :: Lens.Lens' UpdateError (Prelude.Maybe Prelude.Text)+updateError_errorCode = Lens.lens (\UpdateError' {errorCode} -> errorCode) (\s@UpdateError' {} a -> s {errorCode = a} :: UpdateError)++-- | The error message that corresponds to the error code.+updateError_errorMessage :: Lens.Lens' UpdateError (Prelude.Maybe Prelude.Text)+updateError_errorMessage = Lens.lens (\UpdateError' {errorMessage} -> errorMessage) (\s@UpdateError' {} a -> s {errorMessage = a} :: UpdateError)++instance Data.FromJSON UpdateError where+ parseJSON =+ Data.withObject+ "UpdateError"+ ( \x ->+ UpdateError'+ Prelude.<$> (x Data..:? "ErrorCode")+ Prelude.<*> (x Data..:? "ErrorMessage")+ )++instance Prelude.Hashable UpdateError where+ hashWithSalt _salt UpdateError' {..} =+ _salt+ `Prelude.hashWithSalt` errorCode+ `Prelude.hashWithSalt` errorMessage++instance Prelude.NFData UpdateError where+ rnf UpdateError' {..} =+ Prelude.rnf errorCode+ `Prelude.seq` Prelude.rnf errorMessage
+ gen/Amazonka/MwAA/Types/UpdateNetworkConfigurationInput.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.UpdateNetworkConfigurationInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.UpdateNetworkConfigurationInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines the VPC networking components used to secure and enable network+-- traffic between the Amazon Web Services resources for your environment.+-- To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+--+-- /See:/ 'newUpdateNetworkConfigurationInput' smart constructor.+data UpdateNetworkConfigurationInput = UpdateNetworkConfigurationInput'+ { -- | A list of security group IDs. A security group must be attached to the+ -- same VPC as the subnets. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html Security in your VPC on Amazon MWAA>.+ securityGroupIds :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateNetworkConfigurationInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'securityGroupIds', 'updateNetworkConfigurationInput_securityGroupIds' - A list of security group IDs. A security group must be attached to the+-- same VPC as the subnets. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html Security in your VPC on Amazon MWAA>.+newUpdateNetworkConfigurationInput ::+ -- | 'securityGroupIds'+ Prelude.NonEmpty Prelude.Text ->+ UpdateNetworkConfigurationInput+newUpdateNetworkConfigurationInput pSecurityGroupIds_ =+ UpdateNetworkConfigurationInput'+ { securityGroupIds =+ Lens.coerced Lens.# pSecurityGroupIds_+ }++-- | A list of security group IDs. A security group must be attached to the+-- same VPC as the subnets. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html Security in your VPC on Amazon MWAA>.+updateNetworkConfigurationInput_securityGroupIds :: Lens.Lens' UpdateNetworkConfigurationInput (Prelude.NonEmpty Prelude.Text)+updateNetworkConfigurationInput_securityGroupIds = Lens.lens (\UpdateNetworkConfigurationInput' {securityGroupIds} -> securityGroupIds) (\s@UpdateNetworkConfigurationInput' {} a -> s {securityGroupIds = a} :: UpdateNetworkConfigurationInput) Prelude.. Lens.coerced++instance+ Prelude.Hashable+ UpdateNetworkConfigurationInput+ where+ hashWithSalt+ _salt+ UpdateNetworkConfigurationInput' {..} =+ _salt `Prelude.hashWithSalt` securityGroupIds++instance+ Prelude.NFData+ UpdateNetworkConfigurationInput+ where+ rnf UpdateNetworkConfigurationInput' {..} =+ Prelude.rnf securityGroupIds++instance Data.ToJSON UpdateNetworkConfigurationInput where+ toJSON UpdateNetworkConfigurationInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("SecurityGroupIds" Data..= securityGroupIds)+ ]+ )
+ gen/Amazonka/MwAA/Types/UpdateStatus.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.UpdateStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.UpdateStatus+ ( UpdateStatus+ ( ..,+ UpdateStatus_FAILED,+ UpdateStatus_PENDING,+ UpdateStatus_SUCCESS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype UpdateStatus = UpdateStatus'+ { fromUpdateStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern UpdateStatus_FAILED :: UpdateStatus+pattern UpdateStatus_FAILED = UpdateStatus' "FAILED"++pattern UpdateStatus_PENDING :: UpdateStatus+pattern UpdateStatus_PENDING = UpdateStatus' "PENDING"++pattern UpdateStatus_SUCCESS :: UpdateStatus+pattern UpdateStatus_SUCCESS = UpdateStatus' "SUCCESS"++{-# COMPLETE+ UpdateStatus_FAILED,+ UpdateStatus_PENDING,+ UpdateStatus_SUCCESS,+ UpdateStatus'+ #-}
+ gen/Amazonka/MwAA/Types/WebserverAccessMode.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Types.WebserverAccessMode+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Types.WebserverAccessMode+ ( WebserverAccessMode+ ( ..,+ WebserverAccessMode_PRIVATE_ONLY,+ WebserverAccessMode_PUBLIC_ONLY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WebserverAccessMode = WebserverAccessMode'+ { fromWebserverAccessMode ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern WebserverAccessMode_PRIVATE_ONLY :: WebserverAccessMode+pattern WebserverAccessMode_PRIVATE_ONLY = WebserverAccessMode' "PRIVATE_ONLY"++pattern WebserverAccessMode_PUBLIC_ONLY :: WebserverAccessMode+pattern WebserverAccessMode_PUBLIC_ONLY = WebserverAccessMode' "PUBLIC_ONLY"++{-# COMPLETE+ WebserverAccessMode_PRIVATE_ONLY,+ WebserverAccessMode_PUBLIC_ONLY,+ WebserverAccessMode'+ #-}
+ gen/Amazonka/MwAA/UntagResource.hs view
@@ -0,0 +1,172 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes key-value tag pairs associated to your Amazon Managed Workflows+-- for Apache Airflow (MWAA) environment. For example,+-- @\"Environment\": \"Staging\"@.+module Amazonka.MwAA.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+ -- example,+ -- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+ resourceArn :: Prelude.Text,+ -- | The key-value tag pair you want to remove. For example,+ -- @\"Environment\": \"Staging\"@.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'untagResource_resourceArn' - The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+--+-- 'tagKeys', 'untagResource_tagKeys' - The key-value tag pair you want to remove. For example,+-- @\"Environment\": \"Staging\"@.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | The key-value tag pair you want to remove. For example,+-- @\"Environment\": \"Staging\"@.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath UntagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/UpdateEnvironment.hs view
@@ -0,0 +1,545 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.UpdateEnvironment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an Amazon Managed Workflows for Apache Airflow (MWAA)+-- environment.+module Amazonka.MwAA.UpdateEnvironment+ ( -- * Creating a Request+ UpdateEnvironment (..),+ newUpdateEnvironment,++ -- * Request Lenses+ updateEnvironment_airflowConfigurationOptions,+ updateEnvironment_airflowVersion,+ updateEnvironment_dagS3Path,+ updateEnvironment_environmentClass,+ updateEnvironment_executionRoleArn,+ updateEnvironment_loggingConfiguration,+ updateEnvironment_maxWorkers,+ updateEnvironment_minWorkers,+ updateEnvironment_networkConfiguration,+ updateEnvironment_pluginsS3ObjectVersion,+ updateEnvironment_pluginsS3Path,+ updateEnvironment_requirementsS3ObjectVersion,+ updateEnvironment_requirementsS3Path,+ updateEnvironment_schedulers,+ updateEnvironment_sourceBucketArn,+ updateEnvironment_webserverAccessMode,+ updateEnvironment_weeklyMaintenanceWindowStart,+ updateEnvironment_name,++ -- * Destructuring the Response+ UpdateEnvironmentResponse (..),+ newUpdateEnvironmentResponse,++ -- * Response Lenses+ updateEnvironmentResponse_arn,+ updateEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateEnvironment' smart constructor.+data UpdateEnvironment = UpdateEnvironment'+ { -- | A list of key-value pairs containing the Apache Airflow configuration+ -- options you want to attach to your environment. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+ airflowConfigurationOptions :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text (Data.Sensitive Prelude.Text))),+ -- | The Apache Airflow version for your environment. If no value is+ -- specified, defaults to the latest version. Valid values: @1.10.12@,+ -- @2.0.2@, @2.2.2@, and @2.4.3@.+ airflowVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the DAGs folder on your Amazon S3 bucket. For+ -- example, @dags@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+ dagS3Path :: Prelude.Maybe Prelude.Text,+ -- | The environment class type. Valid values: @mw1.small@, @mw1.medium@,+ -- @mw1.large@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+ environmentClass :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the execution role in IAM that allows+ -- MWAA to access Amazon Web Services resources in your environment. For+ -- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+ executionRoleArn :: Prelude.Maybe Prelude.Text,+ -- | The Apache Airflow log types to send to CloudWatch Logs.+ loggingConfiguration :: Prelude.Maybe LoggingConfigurationInput,+ -- | The maximum number of workers that you want to run in your environment.+ -- MWAA scales the number of Apache Airflow workers up to the number you+ -- specify in the @MaxWorkers@ field. For example, @20@. When there are no+ -- more tasks running, and no more in the queue, MWAA disposes of the extra+ -- workers leaving the one worker that is included with your environment,+ -- or the number you specify in @MinWorkers@.+ maxWorkers :: Prelude.Maybe Prelude.Natural,+ -- | The minimum number of workers that you want to run in your environment.+ -- MWAA scales the number of Apache Airflow workers up to the number you+ -- specify in the @MaxWorkers@ field. When there are no more tasks running,+ -- and no more in the queue, MWAA disposes of the extra workers leaving the+ -- worker count you specify in the @MinWorkers@ field. For example, @2@.+ minWorkers :: Prelude.Maybe Prelude.Natural,+ -- | The VPC networking components used to secure and enable network traffic+ -- between the Amazon Web Services resources for your environment. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+ networkConfiguration :: Prelude.Maybe UpdateNetworkConfigurationInput,+ -- | The version of the plugins.zip file on your Amazon S3 bucket. A version+ -- must be specified each time a plugins.zip file is updated. To learn+ -- more, see+ -- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+ pluginsS3ObjectVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+ -- For example, @plugins.zip@. If specified, then the plugins.zip version+ -- is required. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+ pluginsS3Path :: Prelude.Maybe Prelude.Text,+ -- | The version of the requirements.txt file on your Amazon S3 bucket. A+ -- version must be specified each time a requirements.txt file is updated.+ -- To learn more, see+ -- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+ requirementsS3ObjectVersion :: Prelude.Maybe Prelude.Text,+ -- | The relative path to the @requirements.txt@ file on your Amazon S3+ -- bucket. For example, @requirements.txt@. If specified, then a file+ -- version is required. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+ requirementsS3Path :: Prelude.Maybe Prelude.Text,+ -- | The number of Apache Airflow schedulers to run in your Amazon MWAA+ -- environment.+ schedulers :: Prelude.Maybe Prelude.Int,+ -- | The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+ -- code and supporting files are stored. For example,+ -- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+ sourceBucketArn :: Prelude.Maybe Prelude.Text,+ -- | The Apache Airflow /Web server/ access mode. To learn more, see+ -- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+ webserverAccessMode :: Prelude.Maybe WebserverAccessMode,+ -- | The day and time of the week in Coordinated Universal Time (UTC) 24-hour+ -- standard time to start weekly maintenance updates of your environment in+ -- the following format: @DAY:HH:MM@. For example: @TUE:03:30@. You can+ -- specify a start time in 30 minute increments only.+ weeklyMaintenanceWindowStart :: Prelude.Maybe Prelude.Text,+ -- | The name of your Amazon MWAA environment. For example,+ -- @MyMWAAEnvironment@.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'airflowConfigurationOptions', 'updateEnvironment_airflowConfigurationOptions' - A list of key-value pairs containing the Apache Airflow configuration+-- options you want to attach to your environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+--+-- 'airflowVersion', 'updateEnvironment_airflowVersion' - The Apache Airflow version for your environment. If no value is+-- specified, defaults to the latest version. Valid values: @1.10.12@,+-- @2.0.2@, @2.2.2@, and @2.4.3@.+--+-- 'dagS3Path', 'updateEnvironment_dagS3Path' - The relative path to the DAGs folder on your Amazon S3 bucket. For+-- example, @dags@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+--+-- 'environmentClass', 'updateEnvironment_environmentClass' - The environment class type. Valid values: @mw1.small@, @mw1.medium@,+-- @mw1.large@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+--+-- 'executionRoleArn', 'updateEnvironment_executionRoleArn' - The Amazon Resource Name (ARN) of the execution role in IAM that allows+-- MWAA to access Amazon Web Services resources in your environment. For+-- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+--+-- 'loggingConfiguration', 'updateEnvironment_loggingConfiguration' - The Apache Airflow log types to send to CloudWatch Logs.+--+-- 'maxWorkers', 'updateEnvironment_maxWorkers' - The maximum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. For example, @20@. When there are no+-- more tasks running, and no more in the queue, MWAA disposes of the extra+-- workers leaving the one worker that is included with your environment,+-- or the number you specify in @MinWorkers@.+--+-- 'minWorkers', 'updateEnvironment_minWorkers' - The minimum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. When there are no more tasks running,+-- and no more in the queue, MWAA disposes of the extra workers leaving the+-- worker count you specify in the @MinWorkers@ field. For example, @2@.+--+-- 'networkConfiguration', 'updateEnvironment_networkConfiguration' - The VPC networking components used to secure and enable network traffic+-- between the Amazon Web Services resources for your environment. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+--+-- 'pluginsS3ObjectVersion', 'updateEnvironment_pluginsS3ObjectVersion' - The version of the plugins.zip file on your Amazon S3 bucket. A version+-- must be specified each time a plugins.zip file is updated. To learn+-- more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+--+-- 'pluginsS3Path', 'updateEnvironment_pluginsS3Path' - The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+-- For example, @plugins.zip@. If specified, then the plugins.zip version+-- is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+--+-- 'requirementsS3ObjectVersion', 'updateEnvironment_requirementsS3ObjectVersion' - The version of the requirements.txt file on your Amazon S3 bucket. A+-- version must be specified each time a requirements.txt file is updated.+-- To learn more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+--+-- 'requirementsS3Path', 'updateEnvironment_requirementsS3Path' - The relative path to the @requirements.txt@ file on your Amazon S3+-- bucket. For example, @requirements.txt@. If specified, then a file+-- version is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+--+-- 'schedulers', 'updateEnvironment_schedulers' - The number of Apache Airflow schedulers to run in your Amazon MWAA+-- environment.+--+-- 'sourceBucketArn', 'updateEnvironment_sourceBucketArn' - The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+-- code and supporting files are stored. For example,+-- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+--+-- 'webserverAccessMode', 'updateEnvironment_webserverAccessMode' - The Apache Airflow /Web server/ access mode. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+--+-- 'weeklyMaintenanceWindowStart', 'updateEnvironment_weeklyMaintenanceWindowStart' - The day and time of the week in Coordinated Universal Time (UTC) 24-hour+-- standard time to start weekly maintenance updates of your environment in+-- the following format: @DAY:HH:MM@. For example: @TUE:03:30@. You can+-- specify a start time in 30 minute increments only.+--+-- 'name', 'updateEnvironment_name' - The name of your Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+newUpdateEnvironment ::+ -- | 'name'+ Prelude.Text ->+ UpdateEnvironment+newUpdateEnvironment pName_ =+ UpdateEnvironment'+ { airflowConfigurationOptions =+ Prelude.Nothing,+ airflowVersion = Prelude.Nothing,+ dagS3Path = Prelude.Nothing,+ environmentClass = Prelude.Nothing,+ executionRoleArn = Prelude.Nothing,+ loggingConfiguration = Prelude.Nothing,+ maxWorkers = Prelude.Nothing,+ minWorkers = Prelude.Nothing,+ networkConfiguration = Prelude.Nothing,+ pluginsS3ObjectVersion = Prelude.Nothing,+ pluginsS3Path = Prelude.Nothing,+ requirementsS3ObjectVersion = Prelude.Nothing,+ requirementsS3Path = Prelude.Nothing,+ schedulers = Prelude.Nothing,+ sourceBucketArn = Prelude.Nothing,+ webserverAccessMode = Prelude.Nothing,+ weeklyMaintenanceWindowStart = Prelude.Nothing,+ name = pName_+ }++-- | A list of key-value pairs containing the Apache Airflow configuration+-- options you want to attach to your environment. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html Apache Airflow configuration options>.+updateEnvironment_airflowConfigurationOptions :: Lens.Lens' UpdateEnvironment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updateEnvironment_airflowConfigurationOptions = Lens.lens (\UpdateEnvironment' {airflowConfigurationOptions} -> airflowConfigurationOptions) (\s@UpdateEnvironment' {} a -> s {airflowConfigurationOptions = a} :: UpdateEnvironment) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The Apache Airflow version for your environment. If no value is+-- specified, defaults to the latest version. Valid values: @1.10.12@,+-- @2.0.2@, @2.2.2@, and @2.4.3@.+updateEnvironment_airflowVersion :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_airflowVersion = Lens.lens (\UpdateEnvironment' {airflowVersion} -> airflowVersion) (\s@UpdateEnvironment' {} a -> s {airflowVersion = a} :: UpdateEnvironment)++-- | The relative path to the DAGs folder on your Amazon S3 bucket. For+-- example, @dags@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html Adding or updating DAGs>.+updateEnvironment_dagS3Path :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_dagS3Path = Lens.lens (\UpdateEnvironment' {dagS3Path} -> dagS3Path) (\s@UpdateEnvironment' {} a -> s {dagS3Path = a} :: UpdateEnvironment)++-- | The environment class type. Valid values: @mw1.small@, @mw1.medium@,+-- @mw1.large@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html Amazon MWAA environment class>.+updateEnvironment_environmentClass :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_environmentClass = Lens.lens (\UpdateEnvironment' {environmentClass} -> environmentClass) (\s@UpdateEnvironment' {} a -> s {environmentClass = a} :: UpdateEnvironment)++-- | The Amazon Resource Name (ARN) of the execution role in IAM that allows+-- MWAA to access Amazon Web Services resources in your environment. For+-- example, @arn:aws:iam::123456789:role\/my-execution-role@. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html Amazon MWAA Execution role>.+updateEnvironment_executionRoleArn :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_executionRoleArn = Lens.lens (\UpdateEnvironment' {executionRoleArn} -> executionRoleArn) (\s@UpdateEnvironment' {} a -> s {executionRoleArn = a} :: UpdateEnvironment)++-- | The Apache Airflow log types to send to CloudWatch Logs.+updateEnvironment_loggingConfiguration :: Lens.Lens' UpdateEnvironment (Prelude.Maybe LoggingConfigurationInput)+updateEnvironment_loggingConfiguration = Lens.lens (\UpdateEnvironment' {loggingConfiguration} -> loggingConfiguration) (\s@UpdateEnvironment' {} a -> s {loggingConfiguration = a} :: UpdateEnvironment)++-- | The maximum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. For example, @20@. When there are no+-- more tasks running, and no more in the queue, MWAA disposes of the extra+-- workers leaving the one worker that is included with your environment,+-- or the number you specify in @MinWorkers@.+updateEnvironment_maxWorkers :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Natural)+updateEnvironment_maxWorkers = Lens.lens (\UpdateEnvironment' {maxWorkers} -> maxWorkers) (\s@UpdateEnvironment' {} a -> s {maxWorkers = a} :: UpdateEnvironment)++-- | The minimum number of workers that you want to run in your environment.+-- MWAA scales the number of Apache Airflow workers up to the number you+-- specify in the @MaxWorkers@ field. When there are no more tasks running,+-- and no more in the queue, MWAA disposes of the extra workers leaving the+-- worker count you specify in the @MinWorkers@ field. For example, @2@.+updateEnvironment_minWorkers :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Natural)+updateEnvironment_minWorkers = Lens.lens (\UpdateEnvironment' {minWorkers} -> minWorkers) (\s@UpdateEnvironment' {} a -> s {minWorkers = a} :: UpdateEnvironment)++-- | The VPC networking components used to secure and enable network traffic+-- between the Amazon Web Services resources for your environment. To learn+-- more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html About networking on Amazon MWAA>.+updateEnvironment_networkConfiguration :: Lens.Lens' UpdateEnvironment (Prelude.Maybe UpdateNetworkConfigurationInput)+updateEnvironment_networkConfiguration = Lens.lens (\UpdateEnvironment' {networkConfiguration} -> networkConfiguration) (\s@UpdateEnvironment' {} a -> s {networkConfiguration = a} :: UpdateEnvironment)++-- | The version of the plugins.zip file on your Amazon S3 bucket. A version+-- must be specified each time a plugins.zip file is updated. To learn+-- more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+updateEnvironment_pluginsS3ObjectVersion :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_pluginsS3ObjectVersion = Lens.lens (\UpdateEnvironment' {pluginsS3ObjectVersion} -> pluginsS3ObjectVersion) (\s@UpdateEnvironment' {} a -> s {pluginsS3ObjectVersion = a} :: UpdateEnvironment)++-- | The relative path to the @plugins.zip@ file on your Amazon S3 bucket.+-- For example, @plugins.zip@. If specified, then the plugins.zip version+-- is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html Installing custom plugins>.+updateEnvironment_pluginsS3Path :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_pluginsS3Path = Lens.lens (\UpdateEnvironment' {pluginsS3Path} -> pluginsS3Path) (\s@UpdateEnvironment' {} a -> s {pluginsS3Path = a} :: UpdateEnvironment)++-- | The version of the requirements.txt file on your Amazon S3 bucket. A+-- version must be specified each time a requirements.txt file is updated.+-- To learn more, see+-- <https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html How S3 Versioning works>.+updateEnvironment_requirementsS3ObjectVersion :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_requirementsS3ObjectVersion = Lens.lens (\UpdateEnvironment' {requirementsS3ObjectVersion} -> requirementsS3ObjectVersion) (\s@UpdateEnvironment' {} a -> s {requirementsS3ObjectVersion = a} :: UpdateEnvironment)++-- | The relative path to the @requirements.txt@ file on your Amazon S3+-- bucket. For example, @requirements.txt@. If specified, then a file+-- version is required. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html Installing Python dependencies>.+updateEnvironment_requirementsS3Path :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_requirementsS3Path = Lens.lens (\UpdateEnvironment' {requirementsS3Path} -> requirementsS3Path) (\s@UpdateEnvironment' {} a -> s {requirementsS3Path = a} :: UpdateEnvironment)++-- | The number of Apache Airflow schedulers to run in your Amazon MWAA+-- environment.+updateEnvironment_schedulers :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Int)+updateEnvironment_schedulers = Lens.lens (\UpdateEnvironment' {schedulers} -> schedulers) (\s@UpdateEnvironment' {} a -> s {schedulers = a} :: UpdateEnvironment)++-- | The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG+-- code and supporting files are stored. For example,+-- @arn:aws:s3:::my-airflow-bucket-unique-name@. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html Create an Amazon S3 bucket for Amazon MWAA>.+updateEnvironment_sourceBucketArn :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_sourceBucketArn = Lens.lens (\UpdateEnvironment' {sourceBucketArn} -> sourceBucketArn) (\s@UpdateEnvironment' {} a -> s {sourceBucketArn = a} :: UpdateEnvironment)++-- | The Apache Airflow /Web server/ access mode. To learn more, see+-- <https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html Apache Airflow access modes>.+updateEnvironment_webserverAccessMode :: Lens.Lens' UpdateEnvironment (Prelude.Maybe WebserverAccessMode)+updateEnvironment_webserverAccessMode = Lens.lens (\UpdateEnvironment' {webserverAccessMode} -> webserverAccessMode) (\s@UpdateEnvironment' {} a -> s {webserverAccessMode = a} :: UpdateEnvironment)++-- | The day and time of the week in Coordinated Universal Time (UTC) 24-hour+-- standard time to start weekly maintenance updates of your environment in+-- the following format: @DAY:HH:MM@. For example: @TUE:03:30@. You can+-- specify a start time in 30 minute increments only.+updateEnvironment_weeklyMaintenanceWindowStart :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_weeklyMaintenanceWindowStart = Lens.lens (\UpdateEnvironment' {weeklyMaintenanceWindowStart} -> weeklyMaintenanceWindowStart) (\s@UpdateEnvironment' {} a -> s {weeklyMaintenanceWindowStart = a} :: UpdateEnvironment)++-- | The name of your Amazon MWAA environment. For example,+-- @MyMWAAEnvironment@.+updateEnvironment_name :: Lens.Lens' UpdateEnvironment Prelude.Text+updateEnvironment_name = Lens.lens (\UpdateEnvironment' {name} -> name) (\s@UpdateEnvironment' {} a -> s {name = a} :: UpdateEnvironment)++instance Core.AWSRequest UpdateEnvironment where+ type+ AWSResponse UpdateEnvironment =+ UpdateEnvironmentResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateEnvironmentResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateEnvironment where+ hashWithSalt _salt UpdateEnvironment' {..} =+ _salt+ `Prelude.hashWithSalt` airflowConfigurationOptions+ `Prelude.hashWithSalt` airflowVersion+ `Prelude.hashWithSalt` dagS3Path+ `Prelude.hashWithSalt` environmentClass+ `Prelude.hashWithSalt` executionRoleArn+ `Prelude.hashWithSalt` loggingConfiguration+ `Prelude.hashWithSalt` maxWorkers+ `Prelude.hashWithSalt` minWorkers+ `Prelude.hashWithSalt` networkConfiguration+ `Prelude.hashWithSalt` pluginsS3ObjectVersion+ `Prelude.hashWithSalt` pluginsS3Path+ `Prelude.hashWithSalt` requirementsS3ObjectVersion+ `Prelude.hashWithSalt` requirementsS3Path+ `Prelude.hashWithSalt` schedulers+ `Prelude.hashWithSalt` sourceBucketArn+ `Prelude.hashWithSalt` webserverAccessMode+ `Prelude.hashWithSalt` weeklyMaintenanceWindowStart+ `Prelude.hashWithSalt` name++instance Prelude.NFData UpdateEnvironment where+ rnf UpdateEnvironment' {..} =+ Prelude.rnf airflowConfigurationOptions+ `Prelude.seq` Prelude.rnf airflowVersion+ `Prelude.seq` Prelude.rnf dagS3Path+ `Prelude.seq` Prelude.rnf environmentClass+ `Prelude.seq` Prelude.rnf executionRoleArn+ `Prelude.seq` Prelude.rnf loggingConfiguration+ `Prelude.seq` Prelude.rnf maxWorkers+ `Prelude.seq` Prelude.rnf minWorkers+ `Prelude.seq` Prelude.rnf networkConfiguration+ `Prelude.seq` Prelude.rnf pluginsS3ObjectVersion+ `Prelude.seq` Prelude.rnf pluginsS3Path+ `Prelude.seq` Prelude.rnf requirementsS3ObjectVersion+ `Prelude.seq` Prelude.rnf requirementsS3Path+ `Prelude.seq` Prelude.rnf schedulers+ `Prelude.seq` Prelude.rnf sourceBucketArn+ `Prelude.seq` Prelude.rnf webserverAccessMode+ `Prelude.seq` Prelude.rnf+ weeklyMaintenanceWindowStart+ `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders UpdateEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateEnvironment where+ toJSON UpdateEnvironment' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AirflowConfigurationOptions" Data..=)+ Prelude.<$> airflowConfigurationOptions,+ ("AirflowVersion" Data..=)+ Prelude.<$> airflowVersion,+ ("DagS3Path" Data..=) Prelude.<$> dagS3Path,+ ("EnvironmentClass" Data..=)+ Prelude.<$> environmentClass,+ ("ExecutionRoleArn" Data..=)+ Prelude.<$> executionRoleArn,+ ("LoggingConfiguration" Data..=)+ Prelude.<$> loggingConfiguration,+ ("MaxWorkers" Data..=) Prelude.<$> maxWorkers,+ ("MinWorkers" Data..=) Prelude.<$> minWorkers,+ ("NetworkConfiguration" Data..=)+ Prelude.<$> networkConfiguration,+ ("PluginsS3ObjectVersion" Data..=)+ Prelude.<$> pluginsS3ObjectVersion,+ ("PluginsS3Path" Data..=) Prelude.<$> pluginsS3Path,+ ("RequirementsS3ObjectVersion" Data..=)+ Prelude.<$> requirementsS3ObjectVersion,+ ("RequirementsS3Path" Data..=)+ Prelude.<$> requirementsS3Path,+ ("Schedulers" Data..=) Prelude.<$> schedulers,+ ("SourceBucketArn" Data..=)+ Prelude.<$> sourceBucketArn,+ ("WebserverAccessMode" Data..=)+ Prelude.<$> webserverAccessMode,+ ("WeeklyMaintenanceWindowStart" Data..=)+ Prelude.<$> weeklyMaintenanceWindowStart+ ]+ )++instance Data.ToPath UpdateEnvironment where+ toPath UpdateEnvironment' {..} =+ Prelude.mconcat ["/environments/", Data.toBS name]++instance Data.ToQuery UpdateEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateEnvironmentResponse' smart constructor.+data UpdateEnvironmentResponse = UpdateEnvironmentResponse'+ { -- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+ -- example,+ -- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'updateEnvironmentResponse_arn' - The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+--+-- 'httpStatus', 'updateEnvironmentResponse_httpStatus' - The response's http status code.+newUpdateEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateEnvironmentResponse+newUpdateEnvironmentResponse pHttpStatus_ =+ UpdateEnvironmentResponse'+ { arn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the Amazon MWAA environment. For+-- example,+-- @arn:aws:airflow:us-east-1:123456789012:environment\/MyMWAAEnvironment@.+updateEnvironmentResponse_arn :: Lens.Lens' UpdateEnvironmentResponse (Prelude.Maybe Prelude.Text)+updateEnvironmentResponse_arn = Lens.lens (\UpdateEnvironmentResponse' {arn} -> arn) (\s@UpdateEnvironmentResponse' {} a -> s {arn = a} :: UpdateEnvironmentResponse)++-- | The response's http status code.+updateEnvironmentResponse_httpStatus :: Lens.Lens' UpdateEnvironmentResponse Prelude.Int+updateEnvironmentResponse_httpStatus = Lens.lens (\UpdateEnvironmentResponse' {httpStatus} -> httpStatus) (\s@UpdateEnvironmentResponse' {} a -> s {httpStatus = a} :: UpdateEnvironmentResponse)++instance Prelude.NFData UpdateEnvironmentResponse where+ rnf UpdateEnvironmentResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MwAA/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MwAA.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MwAA.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MwAA.Lens+import Amazonka.MwAA.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.MwAA+import Test.Amazonka.MwAA.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "MwAA"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/MwAA.hs view
@@ -0,0 +1,258 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.MwAA+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.MwAA where++import Amazonka.MwAA+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.MwAA.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestCreateCliToken $+-- newCreateCliToken+--+-- , requestCreateEnvironment $+-- newCreateEnvironment+--+-- , requestCreateWebLoginToken $+-- newCreateWebLoginToken+--+-- , requestDeleteEnvironment $+-- newDeleteEnvironment+--+-- , requestGetEnvironment $+-- newGetEnvironment+--+-- , requestListEnvironments $+-- newListEnvironments+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestPublishMetrics $+-- newPublishMetrics+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateEnvironment $+-- newUpdateEnvironment+--+-- ]++-- , testGroup "response"+-- [ responseCreateCliToken $+-- newCreateCliTokenResponse+--+-- , responseCreateEnvironment $+-- newCreateEnvironmentResponse+--+-- , responseCreateWebLoginToken $+-- newCreateWebLoginTokenResponse+--+-- , responseDeleteEnvironment $+-- newDeleteEnvironmentResponse+--+-- , responseGetEnvironment $+-- newGetEnvironmentResponse+--+-- , responseListEnvironments $+-- newListEnvironmentsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responsePublishMetrics $+-- newPublishMetricsResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateEnvironment $+-- newUpdateEnvironmentResponse+--+-- ]+-- ]++-- Requests++requestCreateCliToken :: CreateCliToken -> TestTree+requestCreateCliToken =+ req+ "CreateCliToken"+ "fixture/CreateCliToken.yaml"++requestCreateEnvironment :: CreateEnvironment -> TestTree+requestCreateEnvironment =+ req+ "CreateEnvironment"+ "fixture/CreateEnvironment.yaml"++requestCreateWebLoginToken :: CreateWebLoginToken -> TestTree+requestCreateWebLoginToken =+ req+ "CreateWebLoginToken"+ "fixture/CreateWebLoginToken.yaml"++requestDeleteEnvironment :: DeleteEnvironment -> TestTree+requestDeleteEnvironment =+ req+ "DeleteEnvironment"+ "fixture/DeleteEnvironment.yaml"++requestGetEnvironment :: GetEnvironment -> TestTree+requestGetEnvironment =+ req+ "GetEnvironment"+ "fixture/GetEnvironment.yaml"++requestListEnvironments :: ListEnvironments -> TestTree+requestListEnvironments =+ req+ "ListEnvironments"+ "fixture/ListEnvironments.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestPublishMetrics :: PublishMetrics -> TestTree+requestPublishMetrics =+ req+ "PublishMetrics"+ "fixture/PublishMetrics.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateEnvironment :: UpdateEnvironment -> TestTree+requestUpdateEnvironment =+ req+ "UpdateEnvironment"+ "fixture/UpdateEnvironment.yaml"++-- Responses++responseCreateCliToken :: CreateCliTokenResponse -> TestTree+responseCreateCliToken =+ res+ "CreateCliTokenResponse"+ "fixture/CreateCliTokenResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateCliToken)++responseCreateEnvironment :: CreateEnvironmentResponse -> TestTree+responseCreateEnvironment =+ res+ "CreateEnvironmentResponse"+ "fixture/CreateEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateEnvironment)++responseCreateWebLoginToken :: CreateWebLoginTokenResponse -> TestTree+responseCreateWebLoginToken =+ res+ "CreateWebLoginTokenResponse"+ "fixture/CreateWebLoginTokenResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWebLoginToken)++responseDeleteEnvironment :: DeleteEnvironmentResponse -> TestTree+responseDeleteEnvironment =+ res+ "DeleteEnvironmentResponse"+ "fixture/DeleteEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteEnvironment)++responseGetEnvironment :: GetEnvironmentResponse -> TestTree+responseGetEnvironment =+ res+ "GetEnvironmentResponse"+ "fixture/GetEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetEnvironment)++responseListEnvironments :: ListEnvironmentsResponse -> TestTree+responseListEnvironments =+ res+ "ListEnvironmentsResponse"+ "fixture/ListEnvironmentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListEnvironments)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responsePublishMetrics :: PublishMetricsResponse -> TestTree+responsePublishMetrics =+ res+ "PublishMetricsResponse"+ "fixture/PublishMetricsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PublishMetrics)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateEnvironment :: UpdateEnvironmentResponse -> TestTree+responseUpdateEnvironment =+ res+ "UpdateEnvironmentResponse"+ "fixture/UpdateEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateEnvironment)
+ test/Test/Amazonka/MwAA.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.MwAA+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.MwAA+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/MwAA/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.MwAA.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.MwAA.Internal where