packages feed

stratosphere-ecr (empty) → 1.0.0

raw patch · 35 files changed

+1364/−0 lines, 35 filesdep +aesondep +basedep +stratosphere

Dependencies added: aeson, base, stratosphere

Files

+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/ECR/PublicRepository.hs view
@@ -0,0 +1,68 @@+module Stratosphere.ECR.PublicRepository (+        module Exports, PublicRepository(..), mkPublicRepository+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.PublicRepository.RepositoryCatalogDataProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data PublicRepository+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html>+    PublicRepository {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html#cfn-ecr-publicrepository-repositorycatalogdata>+                      repositoryCatalogData :: (Prelude.Maybe RepositoryCatalogDataProperty),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html#cfn-ecr-publicrepository-repositoryname>+                      repositoryName :: (Prelude.Maybe (Value Prelude.Text)),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html#cfn-ecr-publicrepository-repositorypolicytext>+                      repositoryPolicyText :: (Prelude.Maybe JSON.Object),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html#cfn-ecr-publicrepository-tags>+                      tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkPublicRepository :: PublicRepository+mkPublicRepository+  = PublicRepository+      {haddock_workaround_ = (), repositoryCatalogData = Prelude.Nothing,+       repositoryName = Prelude.Nothing,+       repositoryPolicyText = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties PublicRepository where+  toResourceProperties PublicRepository {..}+    = ResourceProperties+        {awsType = "AWS::ECR::PublicRepository",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "RepositoryCatalogData"+                              Prelude.<$> repositoryCatalogData,+                            (JSON..=) "RepositoryName" Prelude.<$> repositoryName,+                            (JSON..=) "RepositoryPolicyText" Prelude.<$> repositoryPolicyText,+                            (JSON..=) "Tags" Prelude.<$> tags])}+instance JSON.ToJSON PublicRepository where+  toJSON PublicRepository {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "RepositoryCatalogData"+                 Prelude.<$> repositoryCatalogData,+               (JSON..=) "RepositoryName" Prelude.<$> repositoryName,+               (JSON..=) "RepositoryPolicyText" Prelude.<$> repositoryPolicyText,+               (JSON..=) "Tags" Prelude.<$> tags]))+instance Property "RepositoryCatalogData" PublicRepository where+  type PropertyType "RepositoryCatalogData" PublicRepository = RepositoryCatalogDataProperty+  set newValue PublicRepository {..}+    = PublicRepository+        {repositoryCatalogData = Prelude.pure newValue, ..}+instance Property "RepositoryName" PublicRepository where+  type PropertyType "RepositoryName" PublicRepository = Value Prelude.Text+  set newValue PublicRepository {..}+    = PublicRepository {repositoryName = Prelude.pure newValue, ..}+instance Property "RepositoryPolicyText" PublicRepository where+  type PropertyType "RepositoryPolicyText" PublicRepository = JSON.Object+  set newValue PublicRepository {..}+    = PublicRepository+        {repositoryPolicyText = Prelude.pure newValue, ..}+instance Property "Tags" PublicRepository where+  type PropertyType "Tags" PublicRepository = [Tag]+  set newValue PublicRepository {..}+    = PublicRepository {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/PublicRepository/RepositoryCatalogDataProperty.hs view
@@ -0,0 +1,79 @@+module Stratosphere.ECR.PublicRepository.RepositoryCatalogDataProperty (+        RepositoryCatalogDataProperty(..), mkRepositoryCatalogDataProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RepositoryCatalogDataProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-publicrepository-repositorycatalogdata.html>+    RepositoryCatalogDataProperty {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-publicrepository-repositorycatalogdata.html#cfn-ecr-publicrepository-repositorycatalogdata-abouttext>+                                   aboutText :: (Prelude.Maybe (Value Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-publicrepository-repositorycatalogdata.html#cfn-ecr-publicrepository-repositorycatalogdata-architectures>+                                   architectures :: (Prelude.Maybe (ValueList Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-publicrepository-repositorycatalogdata.html#cfn-ecr-publicrepository-repositorycatalogdata-operatingsystems>+                                   operatingSystems :: (Prelude.Maybe (ValueList Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-publicrepository-repositorycatalogdata.html#cfn-ecr-publicrepository-repositorycatalogdata-repositorydescription>+                                   repositoryDescription :: (Prelude.Maybe (Value Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-publicrepository-repositorycatalogdata.html#cfn-ecr-publicrepository-repositorycatalogdata-usagetext>+                                   usageText :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRepositoryCatalogDataProperty :: RepositoryCatalogDataProperty+mkRepositoryCatalogDataProperty+  = RepositoryCatalogDataProperty+      {haddock_workaround_ = (), aboutText = Prelude.Nothing,+       architectures = Prelude.Nothing,+       operatingSystems = Prelude.Nothing,+       repositoryDescription = Prelude.Nothing,+       usageText = Prelude.Nothing}+instance ToResourceProperties RepositoryCatalogDataProperty where+  toResourceProperties RepositoryCatalogDataProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::PublicRepository.RepositoryCatalogData",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AboutText" Prelude.<$> aboutText,+                            (JSON..=) "Architectures" Prelude.<$> architectures,+                            (JSON..=) "OperatingSystems" Prelude.<$> operatingSystems,+                            (JSON..=) "RepositoryDescription"+                              Prelude.<$> repositoryDescription,+                            (JSON..=) "UsageText" Prelude.<$> usageText])}+instance JSON.ToJSON RepositoryCatalogDataProperty where+  toJSON RepositoryCatalogDataProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AboutText" Prelude.<$> aboutText,+               (JSON..=) "Architectures" Prelude.<$> architectures,+               (JSON..=) "OperatingSystems" Prelude.<$> operatingSystems,+               (JSON..=) "RepositoryDescription"+                 Prelude.<$> repositoryDescription,+               (JSON..=) "UsageText" Prelude.<$> usageText]))+instance Property "AboutText" RepositoryCatalogDataProperty where+  type PropertyType "AboutText" RepositoryCatalogDataProperty = Value Prelude.Text+  set newValue RepositoryCatalogDataProperty {..}+    = RepositoryCatalogDataProperty+        {aboutText = Prelude.pure newValue, ..}+instance Property "Architectures" RepositoryCatalogDataProperty where+  type PropertyType "Architectures" RepositoryCatalogDataProperty = ValueList Prelude.Text+  set newValue RepositoryCatalogDataProperty {..}+    = RepositoryCatalogDataProperty+        {architectures = Prelude.pure newValue, ..}+instance Property "OperatingSystems" RepositoryCatalogDataProperty where+  type PropertyType "OperatingSystems" RepositoryCatalogDataProperty = ValueList Prelude.Text+  set newValue RepositoryCatalogDataProperty {..}+    = RepositoryCatalogDataProperty+        {operatingSystems = Prelude.pure newValue, ..}+instance Property "RepositoryDescription" RepositoryCatalogDataProperty where+  type PropertyType "RepositoryDescription" RepositoryCatalogDataProperty = Value Prelude.Text+  set newValue RepositoryCatalogDataProperty {..}+    = RepositoryCatalogDataProperty+        {repositoryDescription = Prelude.pure newValue, ..}+instance Property "UsageText" RepositoryCatalogDataProperty where+  type PropertyType "UsageText" RepositoryCatalogDataProperty = Value Prelude.Text+  set newValue RepositoryCatalogDataProperty {..}+    = RepositoryCatalogDataProperty+        {usageText = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/PublicRepository/RepositoryCatalogDataProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.PublicRepository.RepositoryCatalogDataProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RepositoryCatalogDataProperty :: Prelude.Type+instance ToResourceProperties RepositoryCatalogDataProperty+instance Prelude.Eq RepositoryCatalogDataProperty+instance Prelude.Show RepositoryCatalogDataProperty+instance JSON.ToJSON RepositoryCatalogDataProperty
+ gen/Stratosphere/ECR/PullThroughCacheRule.hs view
@@ -0,0 +1,87 @@+module Stratosphere.ECR.PullThroughCacheRule (+        PullThroughCacheRule(..), mkPullThroughCacheRule+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data PullThroughCacheRule+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html>+    PullThroughCacheRule {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html#cfn-ecr-pullthroughcacherule-credentialarn>+                          credentialArn :: (Prelude.Maybe (Value Prelude.Text)),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html#cfn-ecr-pullthroughcacherule-customrolearn>+                          customRoleArn :: (Prelude.Maybe (Value Prelude.Text)),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html#cfn-ecr-pullthroughcacherule-ecrrepositoryprefix>+                          ecrRepositoryPrefix :: (Prelude.Maybe (Value Prelude.Text)),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html#cfn-ecr-pullthroughcacherule-upstreamregistry>+                          upstreamRegistry :: (Prelude.Maybe (Value Prelude.Text)),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html#cfn-ecr-pullthroughcacherule-upstreamregistryurl>+                          upstreamRegistryUrl :: (Prelude.Maybe (Value Prelude.Text)),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html#cfn-ecr-pullthroughcacherule-upstreamrepositoryprefix>+                          upstreamRepositoryPrefix :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkPullThroughCacheRule :: PullThroughCacheRule+mkPullThroughCacheRule+  = PullThroughCacheRule+      {haddock_workaround_ = (), credentialArn = Prelude.Nothing,+       customRoleArn = Prelude.Nothing,+       ecrRepositoryPrefix = Prelude.Nothing,+       upstreamRegistry = Prelude.Nothing,+       upstreamRegistryUrl = Prelude.Nothing,+       upstreamRepositoryPrefix = Prelude.Nothing}+instance ToResourceProperties PullThroughCacheRule where+  toResourceProperties PullThroughCacheRule {..}+    = ResourceProperties+        {awsType = "AWS::ECR::PullThroughCacheRule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CredentialArn" Prelude.<$> credentialArn,+                            (JSON..=) "CustomRoleArn" Prelude.<$> customRoleArn,+                            (JSON..=) "EcrRepositoryPrefix" Prelude.<$> ecrRepositoryPrefix,+                            (JSON..=) "UpstreamRegistry" Prelude.<$> upstreamRegistry,+                            (JSON..=) "UpstreamRegistryUrl" Prelude.<$> upstreamRegistryUrl,+                            (JSON..=) "UpstreamRepositoryPrefix"+                              Prelude.<$> upstreamRepositoryPrefix])}+instance JSON.ToJSON PullThroughCacheRule where+  toJSON PullThroughCacheRule {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CredentialArn" Prelude.<$> credentialArn,+               (JSON..=) "CustomRoleArn" Prelude.<$> customRoleArn,+               (JSON..=) "EcrRepositoryPrefix" Prelude.<$> ecrRepositoryPrefix,+               (JSON..=) "UpstreamRegistry" Prelude.<$> upstreamRegistry,+               (JSON..=) "UpstreamRegistryUrl" Prelude.<$> upstreamRegistryUrl,+               (JSON..=) "UpstreamRepositoryPrefix"+                 Prelude.<$> upstreamRepositoryPrefix]))+instance Property "CredentialArn" PullThroughCacheRule where+  type PropertyType "CredentialArn" PullThroughCacheRule = Value Prelude.Text+  set newValue PullThroughCacheRule {..}+    = PullThroughCacheRule {credentialArn = Prelude.pure newValue, ..}+instance Property "CustomRoleArn" PullThroughCacheRule where+  type PropertyType "CustomRoleArn" PullThroughCacheRule = Value Prelude.Text+  set newValue PullThroughCacheRule {..}+    = PullThroughCacheRule {customRoleArn = Prelude.pure newValue, ..}+instance Property "EcrRepositoryPrefix" PullThroughCacheRule where+  type PropertyType "EcrRepositoryPrefix" PullThroughCacheRule = Value Prelude.Text+  set newValue PullThroughCacheRule {..}+    = PullThroughCacheRule+        {ecrRepositoryPrefix = Prelude.pure newValue, ..}+instance Property "UpstreamRegistry" PullThroughCacheRule where+  type PropertyType "UpstreamRegistry" PullThroughCacheRule = Value Prelude.Text+  set newValue PullThroughCacheRule {..}+    = PullThroughCacheRule+        {upstreamRegistry = Prelude.pure newValue, ..}+instance Property "UpstreamRegistryUrl" PullThroughCacheRule where+  type PropertyType "UpstreamRegistryUrl" PullThroughCacheRule = Value Prelude.Text+  set newValue PullThroughCacheRule {..}+    = PullThroughCacheRule+        {upstreamRegistryUrl = Prelude.pure newValue, ..}+instance Property "UpstreamRepositoryPrefix" PullThroughCacheRule where+  type PropertyType "UpstreamRepositoryPrefix" PullThroughCacheRule = Value Prelude.Text+  set newValue PullThroughCacheRule {..}+    = PullThroughCacheRule+        {upstreamRepositoryPrefix = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/RegistryPolicy.hs view
@@ -0,0 +1,30 @@+module Stratosphere.ECR.RegistryPolicy (+        RegistryPolicy(..), mkRegistryPolicy+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+data RegistryPolicy+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html>+    RegistryPolicy {haddock_workaround_ :: (),+                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html#cfn-ecr-registrypolicy-policytext>+                    policyText :: JSON.Object}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRegistryPolicy :: JSON.Object -> RegistryPolicy+mkRegistryPolicy policyText+  = RegistryPolicy+      {haddock_workaround_ = (), policyText = policyText}+instance ToResourceProperties RegistryPolicy where+  toResourceProperties RegistryPolicy {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RegistryPolicy",+         supportsTags = Prelude.False,+         properties = ["PolicyText" JSON..= policyText]}+instance JSON.ToJSON RegistryPolicy where+  toJSON RegistryPolicy {..}+    = JSON.object ["PolicyText" JSON..= policyText]+instance Property "PolicyText" RegistryPolicy where+  type PropertyType "PolicyText" RegistryPolicy = JSON.Object+  set newValue RegistryPolicy {..}+    = RegistryPolicy {policyText = newValue, ..}
+ gen/Stratosphere/ECR/RegistryScanningConfiguration.hs view
@@ -0,0 +1,41 @@+module Stratosphere.ECR.RegistryScanningConfiguration (+        module Exports, RegistryScanningConfiguration(..),+        mkRegistryScanningConfiguration+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.RegistryScanningConfiguration.ScanningRuleProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RegistryScanningConfiguration+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html>+    RegistryScanningConfiguration {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html#cfn-ecr-registryscanningconfiguration-rules>+                                   rules :: [ScanningRuleProperty],+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html#cfn-ecr-registryscanningconfiguration-scantype>+                                   scanType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRegistryScanningConfiguration ::+  [ScanningRuleProperty]+  -> Value Prelude.Text -> RegistryScanningConfiguration+mkRegistryScanningConfiguration rules scanType+  = RegistryScanningConfiguration+      {haddock_workaround_ = (), rules = rules, scanType = scanType}+instance ToResourceProperties RegistryScanningConfiguration where+  toResourceProperties RegistryScanningConfiguration {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RegistryScanningConfiguration",+         supportsTags = Prelude.False,+         properties = ["Rules" JSON..= rules, "ScanType" JSON..= scanType]}+instance JSON.ToJSON RegistryScanningConfiguration where+  toJSON RegistryScanningConfiguration {..}+    = JSON.object ["Rules" JSON..= rules, "ScanType" JSON..= scanType]+instance Property "Rules" RegistryScanningConfiguration where+  type PropertyType "Rules" RegistryScanningConfiguration = [ScanningRuleProperty]+  set newValue RegistryScanningConfiguration {..}+    = RegistryScanningConfiguration {rules = newValue, ..}+instance Property "ScanType" RegistryScanningConfiguration where+  type PropertyType "ScanType" RegistryScanningConfiguration = Value Prelude.Text+  set newValue RegistryScanningConfiguration {..}+    = RegistryScanningConfiguration {scanType = newValue, ..}
+ gen/Stratosphere/ECR/RegistryScanningConfiguration/RepositoryFilterProperty.hs view
@@ -0,0 +1,42 @@+module Stratosphere.ECR.RegistryScanningConfiguration.RepositoryFilterProperty (+        RepositoryFilterProperty(..), mkRepositoryFilterProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RepositoryFilterProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-registryscanningconfiguration-repositoryfilter.html>+    RepositoryFilterProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-registryscanningconfiguration-repositoryfilter.html#cfn-ecr-registryscanningconfiguration-repositoryfilter-filter>+                              filter :: (Value Prelude.Text),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-registryscanningconfiguration-repositoryfilter.html#cfn-ecr-registryscanningconfiguration-repositoryfilter-filtertype>+                              filterType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRepositoryFilterProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> RepositoryFilterProperty+mkRepositoryFilterProperty filter filterType+  = RepositoryFilterProperty+      {haddock_workaround_ = (), filter = filter,+       filterType = filterType}+instance ToResourceProperties RepositoryFilterProperty where+  toResourceProperties RepositoryFilterProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RegistryScanningConfiguration.RepositoryFilter",+         supportsTags = Prelude.False,+         properties = ["Filter" JSON..= filter,+                       "FilterType" JSON..= filterType]}+instance JSON.ToJSON RepositoryFilterProperty where+  toJSON RepositoryFilterProperty {..}+    = JSON.object+        ["Filter" JSON..= filter, "FilterType" JSON..= filterType]+instance Property "Filter" RepositoryFilterProperty where+  type PropertyType "Filter" RepositoryFilterProperty = Value Prelude.Text+  set newValue RepositoryFilterProperty {..}+    = RepositoryFilterProperty {filter = newValue, ..}+instance Property "FilterType" RepositoryFilterProperty where+  type PropertyType "FilterType" RepositoryFilterProperty = Value Prelude.Text+  set newValue RepositoryFilterProperty {..}+    = RepositoryFilterProperty {filterType = newValue, ..}
+ gen/Stratosphere/ECR/RegistryScanningConfiguration/RepositoryFilterProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.RegistryScanningConfiguration.RepositoryFilterProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RepositoryFilterProperty :: Prelude.Type+instance ToResourceProperties RepositoryFilterProperty+instance Prelude.Eq RepositoryFilterProperty+instance Prelude.Show RepositoryFilterProperty+instance JSON.ToJSON RepositoryFilterProperty
+ gen/Stratosphere/ECR/RegistryScanningConfiguration/ScanningRuleProperty.hs view
@@ -0,0 +1,44 @@+module Stratosphere.ECR.RegistryScanningConfiguration.ScanningRuleProperty (+        module Exports, ScanningRuleProperty(..), mkScanningRuleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.RegistryScanningConfiguration.RepositoryFilterProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScanningRuleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-registryscanningconfiguration-scanningrule.html>+    ScanningRuleProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-registryscanningconfiguration-scanningrule.html#cfn-ecr-registryscanningconfiguration-scanningrule-repositoryfilters>+                          repositoryFilters :: [RepositoryFilterProperty],+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-registryscanningconfiguration-scanningrule.html#cfn-ecr-registryscanningconfiguration-scanningrule-scanfrequency>+                          scanFrequency :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScanningRuleProperty ::+  [RepositoryFilterProperty]+  -> Value Prelude.Text -> ScanningRuleProperty+mkScanningRuleProperty repositoryFilters scanFrequency+  = ScanningRuleProperty+      {haddock_workaround_ = (), repositoryFilters = repositoryFilters,+       scanFrequency = scanFrequency}+instance ToResourceProperties ScanningRuleProperty where+  toResourceProperties ScanningRuleProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RegistryScanningConfiguration.ScanningRule",+         supportsTags = Prelude.False,+         properties = ["RepositoryFilters" JSON..= repositoryFilters,+                       "ScanFrequency" JSON..= scanFrequency]}+instance JSON.ToJSON ScanningRuleProperty where+  toJSON ScanningRuleProperty {..}+    = JSON.object+        ["RepositoryFilters" JSON..= repositoryFilters,+         "ScanFrequency" JSON..= scanFrequency]+instance Property "RepositoryFilters" ScanningRuleProperty where+  type PropertyType "RepositoryFilters" ScanningRuleProperty = [RepositoryFilterProperty]+  set newValue ScanningRuleProperty {..}+    = ScanningRuleProperty {repositoryFilters = newValue, ..}+instance Property "ScanFrequency" ScanningRuleProperty where+  type PropertyType "ScanFrequency" ScanningRuleProperty = Value Prelude.Text+  set newValue ScanningRuleProperty {..}+    = ScanningRuleProperty {scanFrequency = newValue, ..}
+ gen/Stratosphere/ECR/RegistryScanningConfiguration/ScanningRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.RegistryScanningConfiguration.ScanningRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScanningRuleProperty :: Prelude.Type+instance ToResourceProperties ScanningRuleProperty+instance Prelude.Eq ScanningRuleProperty+instance Prelude.Show ScanningRuleProperty+instance JSON.ToJSON ScanningRuleProperty
+ gen/Stratosphere/ECR/ReplicationConfiguration.hs view
@@ -0,0 +1,37 @@+module Stratosphere.ECR.ReplicationConfiguration (+        module Exports, ReplicationConfiguration(..),+        mkReplicationConfiguration+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.ReplicationConfiguration.ReplicationConfigurationProperty as Exports+import Stratosphere.ResourceProperties+data ReplicationConfiguration+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html>+    ReplicationConfiguration {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html#cfn-ecr-replicationconfiguration-replicationconfiguration>+                              replicationConfiguration :: ReplicationConfigurationProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkReplicationConfiguration ::+  ReplicationConfigurationProperty -> ReplicationConfiguration+mkReplicationConfiguration replicationConfiguration+  = ReplicationConfiguration+      {haddock_workaround_ = (),+       replicationConfiguration = replicationConfiguration}+instance ToResourceProperties ReplicationConfiguration where+  toResourceProperties ReplicationConfiguration {..}+    = ResourceProperties+        {awsType = "AWS::ECR::ReplicationConfiguration",+         supportsTags = Prelude.False,+         properties = ["ReplicationConfiguration"+                         JSON..= replicationConfiguration]}+instance JSON.ToJSON ReplicationConfiguration where+  toJSON ReplicationConfiguration {..}+    = JSON.object+        ["ReplicationConfiguration" JSON..= replicationConfiguration]+instance Property "ReplicationConfiguration" ReplicationConfiguration where+  type PropertyType "ReplicationConfiguration" ReplicationConfiguration = ReplicationConfigurationProperty+  set newValue ReplicationConfiguration {..}+    = ReplicationConfiguration+        {replicationConfiguration = newValue, ..}
+ gen/Stratosphere/ECR/ReplicationConfiguration/ReplicationConfigurationProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.ECR.ReplicationConfiguration.ReplicationConfigurationProperty (+        module Exports, ReplicationConfigurationProperty(..),+        mkReplicationConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.ReplicationConfiguration.ReplicationRuleProperty as Exports+import Stratosphere.ResourceProperties+data ReplicationConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationconfiguration.html>+    ReplicationConfigurationProperty {haddock_workaround_ :: (),+                                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationconfiguration.html#cfn-ecr-replicationconfiguration-replicationconfiguration-rules>+                                      rules :: [ReplicationRuleProperty]}+  deriving stock (Prelude.Eq, Prelude.Show)+mkReplicationConfigurationProperty ::+  [ReplicationRuleProperty] -> ReplicationConfigurationProperty+mkReplicationConfigurationProperty rules+  = ReplicationConfigurationProperty+      {haddock_workaround_ = (), rules = rules}+instance ToResourceProperties ReplicationConfigurationProperty where+  toResourceProperties ReplicationConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::ReplicationConfiguration.ReplicationConfiguration",+         supportsTags = Prelude.False, properties = ["Rules" JSON..= rules]}+instance JSON.ToJSON ReplicationConfigurationProperty where+  toJSON ReplicationConfigurationProperty {..}+    = JSON.object ["Rules" JSON..= rules]+instance Property "Rules" ReplicationConfigurationProperty where+  type PropertyType "Rules" ReplicationConfigurationProperty = [ReplicationRuleProperty]+  set newValue ReplicationConfigurationProperty {..}+    = ReplicationConfigurationProperty {rules = newValue, ..}
+ gen/Stratosphere/ECR/ReplicationConfiguration/ReplicationConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.ReplicationConfiguration.ReplicationConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ReplicationConfigurationProperty :: Prelude.Type+instance ToResourceProperties ReplicationConfigurationProperty+instance Prelude.Eq ReplicationConfigurationProperty+instance Prelude.Show ReplicationConfigurationProperty+instance JSON.ToJSON ReplicationConfigurationProperty
+ gen/Stratosphere/ECR/ReplicationConfiguration/ReplicationDestinationProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.ECR.ReplicationConfiguration.ReplicationDestinationProperty (+        ReplicationDestinationProperty(..),+        mkReplicationDestinationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ReplicationDestinationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationdestination.html>+    ReplicationDestinationProperty {haddock_workaround_ :: (),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationdestination.html#cfn-ecr-replicationconfiguration-replicationdestination-region>+                                    region :: (Value Prelude.Text),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationdestination.html#cfn-ecr-replicationconfiguration-replicationdestination-registryid>+                                    registryId :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkReplicationDestinationProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> ReplicationDestinationProperty+mkReplicationDestinationProperty region registryId+  = ReplicationDestinationProperty+      {haddock_workaround_ = (), region = region,+       registryId = registryId}+instance ToResourceProperties ReplicationDestinationProperty where+  toResourceProperties ReplicationDestinationProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::ReplicationConfiguration.ReplicationDestination",+         supportsTags = Prelude.False,+         properties = ["Region" JSON..= region,+                       "RegistryId" JSON..= registryId]}+instance JSON.ToJSON ReplicationDestinationProperty where+  toJSON ReplicationDestinationProperty {..}+    = JSON.object+        ["Region" JSON..= region, "RegistryId" JSON..= registryId]+instance Property "Region" ReplicationDestinationProperty where+  type PropertyType "Region" ReplicationDestinationProperty = Value Prelude.Text+  set newValue ReplicationDestinationProperty {..}+    = ReplicationDestinationProperty {region = newValue, ..}+instance Property "RegistryId" ReplicationDestinationProperty where+  type PropertyType "RegistryId" ReplicationDestinationProperty = Value Prelude.Text+  set newValue ReplicationDestinationProperty {..}+    = ReplicationDestinationProperty {registryId = newValue, ..}
+ gen/Stratosphere/ECR/ReplicationConfiguration/ReplicationDestinationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.ReplicationConfiguration.ReplicationDestinationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ReplicationDestinationProperty :: Prelude.Type+instance ToResourceProperties ReplicationDestinationProperty+instance Prelude.Eq ReplicationDestinationProperty+instance Prelude.Show ReplicationDestinationProperty+instance JSON.ToJSON ReplicationDestinationProperty
+ gen/Stratosphere/ECR/ReplicationConfiguration/ReplicationRuleProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.ECR.ReplicationConfiguration.ReplicationRuleProperty (+        module Exports, ReplicationRuleProperty(..),+        mkReplicationRuleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.ReplicationConfiguration.ReplicationDestinationProperty as Exports+import {-# SOURCE #-} Stratosphere.ECR.ReplicationConfiguration.RepositoryFilterProperty as Exports+import Stratosphere.ResourceProperties+data ReplicationRuleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationrule.html>+    ReplicationRuleProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationrule.html#cfn-ecr-replicationconfiguration-replicationrule-destinations>+                             destinations :: [ReplicationDestinationProperty],+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationrule.html#cfn-ecr-replicationconfiguration-replicationrule-repositoryfilters>+                             repositoryFilters :: (Prelude.Maybe [RepositoryFilterProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkReplicationRuleProperty ::+  [ReplicationDestinationProperty] -> ReplicationRuleProperty+mkReplicationRuleProperty destinations+  = ReplicationRuleProperty+      {haddock_workaround_ = (), destinations = destinations,+       repositoryFilters = Prelude.Nothing}+instance ToResourceProperties ReplicationRuleProperty where+  toResourceProperties ReplicationRuleProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::ReplicationConfiguration.ReplicationRule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Destinations" JSON..= destinations]+                           (Prelude.catMaybes+                              [(JSON..=) "RepositoryFilters" Prelude.<$> repositoryFilters]))}+instance JSON.ToJSON ReplicationRuleProperty where+  toJSON ReplicationRuleProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Destinations" JSON..= destinations]+              (Prelude.catMaybes+                 [(JSON..=) "RepositoryFilters" Prelude.<$> repositoryFilters])))+instance Property "Destinations" ReplicationRuleProperty where+  type PropertyType "Destinations" ReplicationRuleProperty = [ReplicationDestinationProperty]+  set newValue ReplicationRuleProperty {..}+    = ReplicationRuleProperty {destinations = newValue, ..}+instance Property "RepositoryFilters" ReplicationRuleProperty where+  type PropertyType "RepositoryFilters" ReplicationRuleProperty = [RepositoryFilterProperty]+  set newValue ReplicationRuleProperty {..}+    = ReplicationRuleProperty+        {repositoryFilters = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/ReplicationConfiguration/ReplicationRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.ReplicationConfiguration.ReplicationRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ReplicationRuleProperty :: Prelude.Type+instance ToResourceProperties ReplicationRuleProperty+instance Prelude.Eq ReplicationRuleProperty+instance Prelude.Show ReplicationRuleProperty+instance JSON.ToJSON ReplicationRuleProperty
+ gen/Stratosphere/ECR/ReplicationConfiguration/RepositoryFilterProperty.hs view
@@ -0,0 +1,42 @@+module Stratosphere.ECR.ReplicationConfiguration.RepositoryFilterProperty (+        RepositoryFilterProperty(..), mkRepositoryFilterProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RepositoryFilterProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-repositoryfilter.html>+    RepositoryFilterProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-repositoryfilter.html#cfn-ecr-replicationconfiguration-repositoryfilter-filter>+                              filter :: (Value Prelude.Text),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-repositoryfilter.html#cfn-ecr-replicationconfiguration-repositoryfilter-filtertype>+                              filterType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRepositoryFilterProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> RepositoryFilterProperty+mkRepositoryFilterProperty filter filterType+  = RepositoryFilterProperty+      {haddock_workaround_ = (), filter = filter,+       filterType = filterType}+instance ToResourceProperties RepositoryFilterProperty where+  toResourceProperties RepositoryFilterProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::ReplicationConfiguration.RepositoryFilter",+         supportsTags = Prelude.False,+         properties = ["Filter" JSON..= filter,+                       "FilterType" JSON..= filterType]}+instance JSON.ToJSON RepositoryFilterProperty where+  toJSON RepositoryFilterProperty {..}+    = JSON.object+        ["Filter" JSON..= filter, "FilterType" JSON..= filterType]+instance Property "Filter" RepositoryFilterProperty where+  type PropertyType "Filter" RepositoryFilterProperty = Value Prelude.Text+  set newValue RepositoryFilterProperty {..}+    = RepositoryFilterProperty {filter = newValue, ..}+instance Property "FilterType" RepositoryFilterProperty where+  type PropertyType "FilterType" RepositoryFilterProperty = Value Prelude.Text+  set newValue RepositoryFilterProperty {..}+    = RepositoryFilterProperty {filterType = newValue, ..}
+ gen/Stratosphere/ECR/ReplicationConfiguration/RepositoryFilterProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.ReplicationConfiguration.RepositoryFilterProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RepositoryFilterProperty :: Prelude.Type+instance ToResourceProperties RepositoryFilterProperty+instance Prelude.Eq RepositoryFilterProperty+instance Prelude.Show RepositoryFilterProperty+instance JSON.ToJSON RepositoryFilterProperty
+ gen/Stratosphere/ECR/Repository.hs view
@@ -0,0 +1,119 @@+module Stratosphere.ECR.Repository (+        module Exports, Repository(..), mkRepository+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.Repository.EncryptionConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.ECR.Repository.ImageScanningConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.ECR.Repository.ImageTagMutabilityExclusionFilterProperty as Exports+import {-# SOURCE #-} Stratosphere.ECR.Repository.LifecyclePolicyProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Repository+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html>+    Repository {haddock_workaround_ :: (),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-emptyondelete>+                emptyOnDelete :: (Prelude.Maybe (Value Prelude.Bool)),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-encryptionconfiguration>+                encryptionConfiguration :: (Prelude.Maybe EncryptionConfigurationProperty),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagescanningconfiguration>+                imageScanningConfiguration :: (Prelude.Maybe ImageScanningConfigurationProperty),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagetagmutability>+                imageTagMutability :: (Prelude.Maybe (Value Prelude.Text)),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagetagmutabilityexclusionfilters>+                imageTagMutabilityExclusionFilters :: (Prelude.Maybe [ImageTagMutabilityExclusionFilterProperty]),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-lifecyclepolicy>+                lifecyclePolicy :: (Prelude.Maybe LifecyclePolicyProperty),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositoryname>+                repositoryName :: (Prelude.Maybe (Value Prelude.Text)),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositorypolicytext>+                repositoryPolicyText :: (Prelude.Maybe JSON.Object),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-tags>+                tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRepository :: Repository+mkRepository+  = Repository+      {haddock_workaround_ = (), emptyOnDelete = Prelude.Nothing,+       encryptionConfiguration = Prelude.Nothing,+       imageScanningConfiguration = Prelude.Nothing,+       imageTagMutability = Prelude.Nothing,+       imageTagMutabilityExclusionFilters = Prelude.Nothing,+       lifecyclePolicy = Prelude.Nothing,+       repositoryName = Prelude.Nothing,+       repositoryPolicyText = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties Repository where+  toResourceProperties Repository {..}+    = ResourceProperties+        {awsType = "AWS::ECR::Repository", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "EmptyOnDelete" Prelude.<$> emptyOnDelete,+                            (JSON..=) "EncryptionConfiguration"+                              Prelude.<$> encryptionConfiguration,+                            (JSON..=) "ImageScanningConfiguration"+                              Prelude.<$> imageScanningConfiguration,+                            (JSON..=) "ImageTagMutability" Prelude.<$> imageTagMutability,+                            (JSON..=) "ImageTagMutabilityExclusionFilters"+                              Prelude.<$> imageTagMutabilityExclusionFilters,+                            (JSON..=) "LifecyclePolicy" Prelude.<$> lifecyclePolicy,+                            (JSON..=) "RepositoryName" Prelude.<$> repositoryName,+                            (JSON..=) "RepositoryPolicyText" Prelude.<$> repositoryPolicyText,+                            (JSON..=) "Tags" Prelude.<$> tags])}+instance JSON.ToJSON Repository where+  toJSON Repository {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "EmptyOnDelete" Prelude.<$> emptyOnDelete,+               (JSON..=) "EncryptionConfiguration"+                 Prelude.<$> encryptionConfiguration,+               (JSON..=) "ImageScanningConfiguration"+                 Prelude.<$> imageScanningConfiguration,+               (JSON..=) "ImageTagMutability" Prelude.<$> imageTagMutability,+               (JSON..=) "ImageTagMutabilityExclusionFilters"+                 Prelude.<$> imageTagMutabilityExclusionFilters,+               (JSON..=) "LifecyclePolicy" Prelude.<$> lifecyclePolicy,+               (JSON..=) "RepositoryName" Prelude.<$> repositoryName,+               (JSON..=) "RepositoryPolicyText" Prelude.<$> repositoryPolicyText,+               (JSON..=) "Tags" Prelude.<$> tags]))+instance Property "EmptyOnDelete" Repository where+  type PropertyType "EmptyOnDelete" Repository = Value Prelude.Bool+  set newValue Repository {..}+    = Repository {emptyOnDelete = Prelude.pure newValue, ..}+instance Property "EncryptionConfiguration" Repository where+  type PropertyType "EncryptionConfiguration" Repository = EncryptionConfigurationProperty+  set newValue Repository {..}+    = Repository {encryptionConfiguration = Prelude.pure newValue, ..}+instance Property "ImageScanningConfiguration" Repository where+  type PropertyType "ImageScanningConfiguration" Repository = ImageScanningConfigurationProperty+  set newValue Repository {..}+    = Repository+        {imageScanningConfiguration = Prelude.pure newValue, ..}+instance Property "ImageTagMutability" Repository where+  type PropertyType "ImageTagMutability" Repository = Value Prelude.Text+  set newValue Repository {..}+    = Repository {imageTagMutability = Prelude.pure newValue, ..}+instance Property "ImageTagMutabilityExclusionFilters" Repository where+  type PropertyType "ImageTagMutabilityExclusionFilters" Repository = [ImageTagMutabilityExclusionFilterProperty]+  set newValue Repository {..}+    = Repository+        {imageTagMutabilityExclusionFilters = Prelude.pure newValue, ..}+instance Property "LifecyclePolicy" Repository where+  type PropertyType "LifecyclePolicy" Repository = LifecyclePolicyProperty+  set newValue Repository {..}+    = Repository {lifecyclePolicy = Prelude.pure newValue, ..}+instance Property "RepositoryName" Repository where+  type PropertyType "RepositoryName" Repository = Value Prelude.Text+  set newValue Repository {..}+    = Repository {repositoryName = Prelude.pure newValue, ..}+instance Property "RepositoryPolicyText" Repository where+  type PropertyType "RepositoryPolicyText" Repository = JSON.Object+  set newValue Repository {..}+    = Repository {repositoryPolicyText = Prelude.pure newValue, ..}+instance Property "Tags" Repository where+  type PropertyType "Tags" Repository = [Tag]+  set newValue Repository {..}+    = Repository {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/Repository/EncryptionConfigurationProperty.hs view
@@ -0,0 +1,48 @@+module Stratosphere.ECR.Repository.EncryptionConfigurationProperty (+        EncryptionConfigurationProperty(..),+        mkEncryptionConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EncryptionConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-encryptionconfiguration.html>+    EncryptionConfigurationProperty {haddock_workaround_ :: (),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-encryptionconfiguration.html#cfn-ecr-repository-encryptionconfiguration-encryptiontype>+                                     encryptionType :: (Value Prelude.Text),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-encryptionconfiguration.html#cfn-ecr-repository-encryptionconfiguration-kmskey>+                                     kmsKey :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEncryptionConfigurationProperty ::+  Value Prelude.Text -> EncryptionConfigurationProperty+mkEncryptionConfigurationProperty encryptionType+  = EncryptionConfigurationProperty+      {haddock_workaround_ = (), encryptionType = encryptionType,+       kmsKey = Prelude.Nothing}+instance ToResourceProperties EncryptionConfigurationProperty where+  toResourceProperties EncryptionConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::Repository.EncryptionConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["EncryptionType" JSON..= encryptionType]+                           (Prelude.catMaybes [(JSON..=) "KmsKey" Prelude.<$> kmsKey]))}+instance JSON.ToJSON EncryptionConfigurationProperty where+  toJSON EncryptionConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["EncryptionType" JSON..= encryptionType]+              (Prelude.catMaybes [(JSON..=) "KmsKey" Prelude.<$> kmsKey])))+instance Property "EncryptionType" EncryptionConfigurationProperty where+  type PropertyType "EncryptionType" EncryptionConfigurationProperty = Value Prelude.Text+  set newValue EncryptionConfigurationProperty {..}+    = EncryptionConfigurationProperty {encryptionType = newValue, ..}+instance Property "KmsKey" EncryptionConfigurationProperty where+  type PropertyType "KmsKey" EncryptionConfigurationProperty = Value Prelude.Text+  set newValue EncryptionConfigurationProperty {..}+    = EncryptionConfigurationProperty+        {kmsKey = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/Repository/EncryptionConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.Repository.EncryptionConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EncryptionConfigurationProperty :: Prelude.Type+instance ToResourceProperties EncryptionConfigurationProperty+instance Prelude.Eq EncryptionConfigurationProperty+instance Prelude.Show EncryptionConfigurationProperty+instance JSON.ToJSON EncryptionConfigurationProperty
+ gen/Stratosphere/ECR/Repository/ImageScanningConfigurationProperty.hs view
@@ -0,0 +1,39 @@+module Stratosphere.ECR.Repository.ImageScanningConfigurationProperty (+        ImageScanningConfigurationProperty(..),+        mkImageScanningConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ImageScanningConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-imagescanningconfiguration.html>+    ImageScanningConfigurationProperty {haddock_workaround_ :: (),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-imagescanningconfiguration.html#cfn-ecr-repository-imagescanningconfiguration-scanonpush>+                                        scanOnPush :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkImageScanningConfigurationProperty ::+  ImageScanningConfigurationProperty+mkImageScanningConfigurationProperty+  = ImageScanningConfigurationProperty+      {haddock_workaround_ = (), scanOnPush = Prelude.Nothing}+instance ToResourceProperties ImageScanningConfigurationProperty where+  toResourceProperties ImageScanningConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::Repository.ImageScanningConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ScanOnPush" Prelude.<$> scanOnPush])}+instance JSON.ToJSON ImageScanningConfigurationProperty where+  toJSON ImageScanningConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ScanOnPush" Prelude.<$> scanOnPush]))+instance Property "ScanOnPush" ImageScanningConfigurationProperty where+  type PropertyType "ScanOnPush" ImageScanningConfigurationProperty = Value Prelude.Bool+  set newValue ImageScanningConfigurationProperty {..}+    = ImageScanningConfigurationProperty+        {scanOnPush = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/Repository/ImageScanningConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.Repository.ImageScanningConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ImageScanningConfigurationProperty :: Prelude.Type+instance ToResourceProperties ImageScanningConfigurationProperty+instance Prelude.Eq ImageScanningConfigurationProperty+instance Prelude.Show ImageScanningConfigurationProperty+instance JSON.ToJSON ImageScanningConfigurationProperty
+ gen/Stratosphere/ECR/Repository/ImageTagMutabilityExclusionFilterProperty.hs view
@@ -0,0 +1,53 @@+module Stratosphere.ECR.Repository.ImageTagMutabilityExclusionFilterProperty (+        ImageTagMutabilityExclusionFilterProperty(..),+        mkImageTagMutabilityExclusionFilterProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ImageTagMutabilityExclusionFilterProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-imagetagmutabilityexclusionfilter.html>+    ImageTagMutabilityExclusionFilterProperty {haddock_workaround_ :: (),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-imagetagmutabilityexclusionfilter.html#cfn-ecr-repository-imagetagmutabilityexclusionfilter-imagetagmutabilityexclusionfiltertype>+                                               imageTagMutabilityExclusionFilterType :: (Value Prelude.Text),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-imagetagmutabilityexclusionfilter.html#cfn-ecr-repository-imagetagmutabilityexclusionfilter-imagetagmutabilityexclusionfiltervalue>+                                               imageTagMutabilityExclusionFilterValue :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkImageTagMutabilityExclusionFilterProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> ImageTagMutabilityExclusionFilterProperty+mkImageTagMutabilityExclusionFilterProperty+  imageTagMutabilityExclusionFilterType+  imageTagMutabilityExclusionFilterValue+  = ImageTagMutabilityExclusionFilterProperty+      {haddock_workaround_ = (),+       imageTagMutabilityExclusionFilterType = imageTagMutabilityExclusionFilterType,+       imageTagMutabilityExclusionFilterValue = imageTagMutabilityExclusionFilterValue}+instance ToResourceProperties ImageTagMutabilityExclusionFilterProperty where+  toResourceProperties ImageTagMutabilityExclusionFilterProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::Repository.ImageTagMutabilityExclusionFilter",+         supportsTags = Prelude.False,+         properties = ["ImageTagMutabilityExclusionFilterType"+                         JSON..= imageTagMutabilityExclusionFilterType,+                       "ImageTagMutabilityExclusionFilterValue"+                         JSON..= imageTagMutabilityExclusionFilterValue]}+instance JSON.ToJSON ImageTagMutabilityExclusionFilterProperty where+  toJSON ImageTagMutabilityExclusionFilterProperty {..}+    = JSON.object+        ["ImageTagMutabilityExclusionFilterType"+           JSON..= imageTagMutabilityExclusionFilterType,+         "ImageTagMutabilityExclusionFilterValue"+           JSON..= imageTagMutabilityExclusionFilterValue]+instance Property "ImageTagMutabilityExclusionFilterType" ImageTagMutabilityExclusionFilterProperty where+  type PropertyType "ImageTagMutabilityExclusionFilterType" ImageTagMutabilityExclusionFilterProperty = Value Prelude.Text+  set newValue ImageTagMutabilityExclusionFilterProperty {..}+    = ImageTagMutabilityExclusionFilterProperty+        {imageTagMutabilityExclusionFilterType = newValue, ..}+instance Property "ImageTagMutabilityExclusionFilterValue" ImageTagMutabilityExclusionFilterProperty where+  type PropertyType "ImageTagMutabilityExclusionFilterValue" ImageTagMutabilityExclusionFilterProperty = Value Prelude.Text+  set newValue ImageTagMutabilityExclusionFilterProperty {..}+    = ImageTagMutabilityExclusionFilterProperty+        {imageTagMutabilityExclusionFilterValue = newValue, ..}
+ gen/Stratosphere/ECR/Repository/ImageTagMutabilityExclusionFilterProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.Repository.ImageTagMutabilityExclusionFilterProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ImageTagMutabilityExclusionFilterProperty :: Prelude.Type+instance ToResourceProperties ImageTagMutabilityExclusionFilterProperty+instance Prelude.Eq ImageTagMutabilityExclusionFilterProperty+instance Prelude.Show ImageTagMutabilityExclusionFilterProperty+instance JSON.ToJSON ImageTagMutabilityExclusionFilterProperty
+ gen/Stratosphere/ECR/Repository/LifecyclePolicyProperty.hs view
@@ -0,0 +1,46 @@+module Stratosphere.ECR.Repository.LifecyclePolicyProperty (+        LifecyclePolicyProperty(..), mkLifecyclePolicyProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data LifecyclePolicyProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html>+    LifecyclePolicyProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-lifecyclepolicytext>+                             lifecyclePolicyText :: (Prelude.Maybe (Value Prelude.Text)),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-registryid>+                             registryId :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLifecyclePolicyProperty :: LifecyclePolicyProperty+mkLifecyclePolicyProperty+  = LifecyclePolicyProperty+      {haddock_workaround_ = (), lifecyclePolicyText = Prelude.Nothing,+       registryId = Prelude.Nothing}+instance ToResourceProperties LifecyclePolicyProperty where+  toResourceProperties LifecyclePolicyProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::Repository.LifecyclePolicy",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "LifecyclePolicyText" Prelude.<$> lifecyclePolicyText,+                            (JSON..=) "RegistryId" Prelude.<$> registryId])}+instance JSON.ToJSON LifecyclePolicyProperty where+  toJSON LifecyclePolicyProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "LifecyclePolicyText" Prelude.<$> lifecyclePolicyText,+               (JSON..=) "RegistryId" Prelude.<$> registryId]))+instance Property "LifecyclePolicyText" LifecyclePolicyProperty where+  type PropertyType "LifecyclePolicyText" LifecyclePolicyProperty = Value Prelude.Text+  set newValue LifecyclePolicyProperty {..}+    = LifecyclePolicyProperty+        {lifecyclePolicyText = Prelude.pure newValue, ..}+instance Property "RegistryId" LifecyclePolicyProperty where+  type PropertyType "RegistryId" LifecyclePolicyProperty = Value Prelude.Text+  set newValue LifecyclePolicyProperty {..}+    = LifecyclePolicyProperty {registryId = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/Repository/LifecyclePolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.Repository.LifecyclePolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data LifecyclePolicyProperty :: Prelude.Type+instance ToResourceProperties LifecyclePolicyProperty+instance Prelude.Eq LifecyclePolicyProperty+instance Prelude.Show LifecyclePolicyProperty+instance JSON.ToJSON LifecyclePolicyProperty
+ gen/Stratosphere/ECR/RepositoryCreationTemplate.hs view
@@ -0,0 +1,133 @@+module Stratosphere.ECR.RepositoryCreationTemplate (+        module Exports, RepositoryCreationTemplate(..),+        mkRepositoryCreationTemplate+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ECR.RepositoryCreationTemplate.EncryptionConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.ECR.RepositoryCreationTemplate.ImageTagMutabilityExclusionFilterProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data RepositoryCreationTemplate+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html>+    RepositoryCreationTemplate {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-appliedfor>+                                appliedFor :: (ValueList Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-customrolearn>+                                customRoleArn :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-description>+                                description :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-encryptionconfiguration>+                                encryptionConfiguration :: (Prelude.Maybe EncryptionConfigurationProperty),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-imagetagmutability>+                                imageTagMutability :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-imagetagmutabilityexclusionfilters>+                                imageTagMutabilityExclusionFilters :: (Prelude.Maybe [ImageTagMutabilityExclusionFilterProperty]),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-lifecyclepolicy>+                                lifecyclePolicy :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-prefix>+                                prefix :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-repositorypolicy>+                                repositoryPolicy :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-resourcetags>+                                resourceTags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRepositoryCreationTemplate ::+  ValueList Prelude.Text+  -> Value Prelude.Text -> RepositoryCreationTemplate+mkRepositoryCreationTemplate appliedFor prefix+  = RepositoryCreationTemplate+      {haddock_workaround_ = (), appliedFor = appliedFor,+       prefix = prefix, customRoleArn = Prelude.Nothing,+       description = Prelude.Nothing,+       encryptionConfiguration = Prelude.Nothing,+       imageTagMutability = Prelude.Nothing,+       imageTagMutabilityExclusionFilters = Prelude.Nothing,+       lifecyclePolicy = Prelude.Nothing,+       repositoryPolicy = Prelude.Nothing, resourceTags = Prelude.Nothing}+instance ToResourceProperties RepositoryCreationTemplate where+  toResourceProperties RepositoryCreationTemplate {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RepositoryCreationTemplate",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AppliedFor" JSON..= appliedFor, "Prefix" JSON..= prefix]+                           (Prelude.catMaybes+                              [(JSON..=) "CustomRoleArn" Prelude.<$> customRoleArn,+                               (JSON..=) "Description" Prelude.<$> description,+                               (JSON..=) "EncryptionConfiguration"+                                 Prelude.<$> encryptionConfiguration,+                               (JSON..=) "ImageTagMutability" Prelude.<$> imageTagMutability,+                               (JSON..=) "ImageTagMutabilityExclusionFilters"+                                 Prelude.<$> imageTagMutabilityExclusionFilters,+                               (JSON..=) "LifecyclePolicy" Prelude.<$> lifecyclePolicy,+                               (JSON..=) "RepositoryPolicy" Prelude.<$> repositoryPolicy,+                               (JSON..=) "ResourceTags" Prelude.<$> resourceTags]))}+instance JSON.ToJSON RepositoryCreationTemplate where+  toJSON RepositoryCreationTemplate {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AppliedFor" JSON..= appliedFor, "Prefix" JSON..= prefix]+              (Prelude.catMaybes+                 [(JSON..=) "CustomRoleArn" Prelude.<$> customRoleArn,+                  (JSON..=) "Description" Prelude.<$> description,+                  (JSON..=) "EncryptionConfiguration"+                    Prelude.<$> encryptionConfiguration,+                  (JSON..=) "ImageTagMutability" Prelude.<$> imageTagMutability,+                  (JSON..=) "ImageTagMutabilityExclusionFilters"+                    Prelude.<$> imageTagMutabilityExclusionFilters,+                  (JSON..=) "LifecyclePolicy" Prelude.<$> lifecyclePolicy,+                  (JSON..=) "RepositoryPolicy" Prelude.<$> repositoryPolicy,+                  (JSON..=) "ResourceTags" Prelude.<$> resourceTags])))+instance Property "AppliedFor" RepositoryCreationTemplate where+  type PropertyType "AppliedFor" RepositoryCreationTemplate = ValueList Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate {appliedFor = newValue, ..}+instance Property "CustomRoleArn" RepositoryCreationTemplate where+  type PropertyType "CustomRoleArn" RepositoryCreationTemplate = Value Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {customRoleArn = Prelude.pure newValue, ..}+instance Property "Description" RepositoryCreationTemplate where+  type PropertyType "Description" RepositoryCreationTemplate = Value Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {description = Prelude.pure newValue, ..}+instance Property "EncryptionConfiguration" RepositoryCreationTemplate where+  type PropertyType "EncryptionConfiguration" RepositoryCreationTemplate = EncryptionConfigurationProperty+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {encryptionConfiguration = Prelude.pure newValue, ..}+instance Property "ImageTagMutability" RepositoryCreationTemplate where+  type PropertyType "ImageTagMutability" RepositoryCreationTemplate = Value Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {imageTagMutability = Prelude.pure newValue, ..}+instance Property "ImageTagMutabilityExclusionFilters" RepositoryCreationTemplate where+  type PropertyType "ImageTagMutabilityExclusionFilters" RepositoryCreationTemplate = [ImageTagMutabilityExclusionFilterProperty]+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {imageTagMutabilityExclusionFilters = Prelude.pure newValue, ..}+instance Property "LifecyclePolicy" RepositoryCreationTemplate where+  type PropertyType "LifecyclePolicy" RepositoryCreationTemplate = Value Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {lifecyclePolicy = Prelude.pure newValue, ..}+instance Property "Prefix" RepositoryCreationTemplate where+  type PropertyType "Prefix" RepositoryCreationTemplate = Value Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate {prefix = newValue, ..}+instance Property "RepositoryPolicy" RepositoryCreationTemplate where+  type PropertyType "RepositoryPolicy" RepositoryCreationTemplate = Value Prelude.Text+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {repositoryPolicy = Prelude.pure newValue, ..}+instance Property "ResourceTags" RepositoryCreationTemplate where+  type PropertyType "ResourceTags" RepositoryCreationTemplate = [Tag]+  set newValue RepositoryCreationTemplate {..}+    = RepositoryCreationTemplate+        {resourceTags = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/RepositoryCreationTemplate/EncryptionConfigurationProperty.hs view
@@ -0,0 +1,48 @@+module Stratosphere.ECR.RepositoryCreationTemplate.EncryptionConfigurationProperty (+        EncryptionConfigurationProperty(..),+        mkEncryptionConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EncryptionConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-encryptionconfiguration.html>+    EncryptionConfigurationProperty {haddock_workaround_ :: (),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-encryptionconfiguration.html#cfn-ecr-repositorycreationtemplate-encryptionconfiguration-encryptiontype>+                                     encryptionType :: (Value Prelude.Text),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-encryptionconfiguration.html#cfn-ecr-repositorycreationtemplate-encryptionconfiguration-kmskey>+                                     kmsKey :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEncryptionConfigurationProperty ::+  Value Prelude.Text -> EncryptionConfigurationProperty+mkEncryptionConfigurationProperty encryptionType+  = EncryptionConfigurationProperty+      {haddock_workaround_ = (), encryptionType = encryptionType,+       kmsKey = Prelude.Nothing}+instance ToResourceProperties EncryptionConfigurationProperty where+  toResourceProperties EncryptionConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RepositoryCreationTemplate.EncryptionConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["EncryptionType" JSON..= encryptionType]+                           (Prelude.catMaybes [(JSON..=) "KmsKey" Prelude.<$> kmsKey]))}+instance JSON.ToJSON EncryptionConfigurationProperty where+  toJSON EncryptionConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["EncryptionType" JSON..= encryptionType]+              (Prelude.catMaybes [(JSON..=) "KmsKey" Prelude.<$> kmsKey])))+instance Property "EncryptionType" EncryptionConfigurationProperty where+  type PropertyType "EncryptionType" EncryptionConfigurationProperty = Value Prelude.Text+  set newValue EncryptionConfigurationProperty {..}+    = EncryptionConfigurationProperty {encryptionType = newValue, ..}+instance Property "KmsKey" EncryptionConfigurationProperty where+  type PropertyType "KmsKey" EncryptionConfigurationProperty = Value Prelude.Text+  set newValue EncryptionConfigurationProperty {..}+    = EncryptionConfigurationProperty+        {kmsKey = Prelude.pure newValue, ..}
+ gen/Stratosphere/ECR/RepositoryCreationTemplate/EncryptionConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.RepositoryCreationTemplate.EncryptionConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EncryptionConfigurationProperty :: Prelude.Type+instance ToResourceProperties EncryptionConfigurationProperty+instance Prelude.Eq EncryptionConfigurationProperty+instance Prelude.Show EncryptionConfigurationProperty+instance JSON.ToJSON EncryptionConfigurationProperty
+ gen/Stratosphere/ECR/RepositoryCreationTemplate/ImageTagMutabilityExclusionFilterProperty.hs view
@@ -0,0 +1,53 @@+module Stratosphere.ECR.RepositoryCreationTemplate.ImageTagMutabilityExclusionFilterProperty (+        ImageTagMutabilityExclusionFilterProperty(..),+        mkImageTagMutabilityExclusionFilterProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ImageTagMutabilityExclusionFilterProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-imagetagmutabilityexclusionfilter.html>+    ImageTagMutabilityExclusionFilterProperty {haddock_workaround_ :: (),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-imagetagmutabilityexclusionfilter.html#cfn-ecr-repositorycreationtemplate-imagetagmutabilityexclusionfilter-imagetagmutabilityexclusionfiltertype>+                                               imageTagMutabilityExclusionFilterType :: (Value Prelude.Text),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-imagetagmutabilityexclusionfilter.html#cfn-ecr-repositorycreationtemplate-imagetagmutabilityexclusionfilter-imagetagmutabilityexclusionfiltervalue>+                                               imageTagMutabilityExclusionFilterValue :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkImageTagMutabilityExclusionFilterProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> ImageTagMutabilityExclusionFilterProperty+mkImageTagMutabilityExclusionFilterProperty+  imageTagMutabilityExclusionFilterType+  imageTagMutabilityExclusionFilterValue+  = ImageTagMutabilityExclusionFilterProperty+      {haddock_workaround_ = (),+       imageTagMutabilityExclusionFilterType = imageTagMutabilityExclusionFilterType,+       imageTagMutabilityExclusionFilterValue = imageTagMutabilityExclusionFilterValue}+instance ToResourceProperties ImageTagMutabilityExclusionFilterProperty where+  toResourceProperties ImageTagMutabilityExclusionFilterProperty {..}+    = ResourceProperties+        {awsType = "AWS::ECR::RepositoryCreationTemplate.ImageTagMutabilityExclusionFilter",+         supportsTags = Prelude.False,+         properties = ["ImageTagMutabilityExclusionFilterType"+                         JSON..= imageTagMutabilityExclusionFilterType,+                       "ImageTagMutabilityExclusionFilterValue"+                         JSON..= imageTagMutabilityExclusionFilterValue]}+instance JSON.ToJSON ImageTagMutabilityExclusionFilterProperty where+  toJSON ImageTagMutabilityExclusionFilterProperty {..}+    = JSON.object+        ["ImageTagMutabilityExclusionFilterType"+           JSON..= imageTagMutabilityExclusionFilterType,+         "ImageTagMutabilityExclusionFilterValue"+           JSON..= imageTagMutabilityExclusionFilterValue]+instance Property "ImageTagMutabilityExclusionFilterType" ImageTagMutabilityExclusionFilterProperty where+  type PropertyType "ImageTagMutabilityExclusionFilterType" ImageTagMutabilityExclusionFilterProperty = Value Prelude.Text+  set newValue ImageTagMutabilityExclusionFilterProperty {..}+    = ImageTagMutabilityExclusionFilterProperty+        {imageTagMutabilityExclusionFilterType = newValue, ..}+instance Property "ImageTagMutabilityExclusionFilterValue" ImageTagMutabilityExclusionFilterProperty where+  type PropertyType "ImageTagMutabilityExclusionFilterValue" ImageTagMutabilityExclusionFilterProperty = Value Prelude.Text+  set newValue ImageTagMutabilityExclusionFilterProperty {..}+    = ImageTagMutabilityExclusionFilterProperty+        {imageTagMutabilityExclusionFilterValue = newValue, ..}
+ gen/Stratosphere/ECR/RepositoryCreationTemplate/ImageTagMutabilityExclusionFilterProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ECR.RepositoryCreationTemplate.ImageTagMutabilityExclusionFilterProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ImageTagMutabilityExclusionFilterProperty :: Prelude.Type+instance ToResourceProperties ImageTagMutabilityExclusionFilterProperty+instance Prelude.Eq ImageTagMutabilityExclusionFilterProperty+instance Prelude.Show ImageTagMutabilityExclusionFilterProperty+instance JSON.ToJSON ImageTagMutabilityExclusionFilterProperty
+ stratosphere-ecr.cabal view
@@ -0,0 +1,92 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name:           stratosphere-ecr+version:        1.0.0+synopsis:       Stratosphere integration for AWS ECR.+description:    Integration into stratosphere to generate resources and properties for AWS ECR+category:       AWS, Cloud, ECR+stability:      experimental+homepage:       https://github.com/mbj/stratosphere#readme+bug-reports:    https://github.com/mbj/stratosphere/issues+maintainer:     Markus Schirp+license:        MIT+license-file:   LICENSE.md+build-type:     Simple++source-repository head+  type: git+  location: https://github.com/mbj/stratosphere++flag development+  description: Run GHC with development flags+  manual: True+  default: False++library+  exposed-modules:+      Stratosphere.ECR.PublicRepository+      Stratosphere.ECR.PublicRepository.RepositoryCatalogDataProperty+      Stratosphere.ECR.PullThroughCacheRule+      Stratosphere.ECR.RegistryPolicy+      Stratosphere.ECR.RegistryScanningConfiguration+      Stratosphere.ECR.RegistryScanningConfiguration.RepositoryFilterProperty+      Stratosphere.ECR.RegistryScanningConfiguration.ScanningRuleProperty+      Stratosphere.ECR.ReplicationConfiguration+      Stratosphere.ECR.ReplicationConfiguration.ReplicationConfigurationProperty+      Stratosphere.ECR.ReplicationConfiguration.ReplicationDestinationProperty+      Stratosphere.ECR.ReplicationConfiguration.ReplicationRuleProperty+      Stratosphere.ECR.ReplicationConfiguration.RepositoryFilterProperty+      Stratosphere.ECR.Repository+      Stratosphere.ECR.Repository.EncryptionConfigurationProperty+      Stratosphere.ECR.Repository.ImageScanningConfigurationProperty+      Stratosphere.ECR.Repository.ImageTagMutabilityExclusionFilterProperty+      Stratosphere.ECR.Repository.LifecyclePolicyProperty+      Stratosphere.ECR.RepositoryCreationTemplate+      Stratosphere.ECR.RepositoryCreationTemplate.EncryptionConfigurationProperty+      Stratosphere.ECR.RepositoryCreationTemplate.ImageTagMutabilityExclusionFilterProperty+  other-modules:+      Paths_stratosphere_ecr+  hs-source-dirs:+      gen+  default-extensions:+      DataKinds+      DeriveGeneric+      DerivingStrategies+      DerivingVia+      DuplicateRecordFields+      FlexibleContexts+      FlexibleInstances+      GADTs+      GeneralizedNewtypeDeriving+      InstanceSigs+      LambdaCase+      MultiParamTypeClasses+      NoFieldSelectors+      NoImplicitPrelude+      NumericUnderscores+      OverloadedLists+      OverloadedRecordDot+      OverloadedStrings+      PolyKinds+      RecordWildCards+      ScopedTypeVariables+      StandaloneDeriving+      Strict+      TemplateHaskell+      TupleSections+      TypeApplications+      TypeFamilies+  ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+  build-depends:+      aeson ==2.*+    , base >=4.8 && <4.22+    , stratosphere ==1.0.0+  default-language: Haskell2010+  if flag(development)+    ghc-options: -Werror+  else+    ghc-options: -Wwarn