def __init__()

in cdk_service_catalog/cdk_service_catalog_storage_stack.py [0:0]


    def __init__(self, scope: cdk.Construct, construct_id: str, **kwargs) -> None:
        super().__init__(scope, construct_id, **kwargs)

        accounts = self.node.try_get_context("shared_accounts_storage")
        roles = self.node.try_get_context("roles")
        users = self.node.try_get_context("users")
        groups = self.node.try_get_context("groups")

        portfolio = servicecatalog.Portfolio(self, "Storage_Portfolio",
            display_name="Storage_Portfolio",
            provider_name="Platform Team",
            description="Storage Portfolio"
        )

        #Provision portfolio to shared accounts.
        for acc in accounts:
            portfolio.share_with_account(acc)
        
        
        #Permissions
        for r in roles:
            role=iam.Role.from_role_arn(self,r,role_arn=r)
            portfolio.give_access_to_role(role)

        for g in groups:
            group=iam.Group.from_group_arn(self,g,group_arn=g)
            portfolio.give_access_to_group(group)

        for u in users:
            user=iam.User.from_user_arn(self,u,user_arn=u)
            portfolio.give_access_to_user(user)


        s3_bucket = servicecatalog.CloudFormationProduct(self, "S3_Bucket_Product",
            product_name="S3 Bucket",
            owner="Platform Team",
            product_versions=[
                servicecatalog.CloudFormationProductVersion(
                    cloud_formation_template=servicecatalog.CloudFormationTemplate.from_product_stack(S3(self, "S3Template")),
                    product_version_name="v1",                    
                    validate_template = True
                )
            ],
            description = "S3 Bucket Product",
            support_email = "support@youremail.com",
            support_url = "https://doc.youremail.com/"
        )
       
        portfolio.add_product(s3_bucket)

        # General tags applied to all resources created on this scope (self)
        cdk.Tags.of(self).add("key", "value")