forked from aws-samples/amazon-sagemaker-secure-mlops
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcore-sc-shared-portfolio.yaml
More file actions
84 lines (68 loc) · 3.08 KB
/
Copy pathcore-sc-shared-portfolio.yaml
File metadata and controls
84 lines (68 loc) · 3.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
# SPDX-License-Identifier: MIT-0
AWSTemplateFormatVersion: 2010-09-09
Description: |
Create the shared portfolio of Data Science environments in AWS Service Catalog
Outputs:
ProductId:
Description: Service Catalog data science product Id
Value: !Ref DataScienceEnvironmentProduct
PortfolioId:
Description: Service Catalog data science portfolio Id
Value: !Ref DataScienceEnvironmentPortfolio
ProductName:
Description: Service Catalog data science product name
Value: !GetAtt DataScienceEnvironmentProduct.ProductName
ProvisioningArtifactIds:
Description: Service Catalog data science provisioning artifact Ids
Value: !GetAtt DataScienceEnvironmentProduct.ProvisioningArtifactIds
ProvisioningArtifactNames:
Description: Service Catalog data science provisioning artifact names
Value: !GetAtt DataScienceEnvironmentProduct.ProvisioningArtifactNames
Parameters:
StackSetName:
Type: String
Description: A parent stack name
SCPortfolioPrincipalRoleArn:
Type: String
Description: Data Science Administrator role ARN
SCProductLaunchRoleArn:
Type: String
Description: Service Catalog Launch role ARN
Resources:
DataScienceEnvironmentPortfolio:
Type: 'AWS::ServiceCatalog::Portfolio'
Properties:
ProviderName: 'Data Science Administration Team'
Description: 'This portfolio is a collection of products designed to support managing data science environments'
DisplayName: 'Products for managing data science environments'
DataScienceEnvironmentProduct:
Type: 'AWS::ServiceCatalog::CloudFormationProduct'
Properties:
Name: !Sub '${StackSetName}-${AWS::Region} Data Science Environment v1.2'
Description: 'A secure SageMaker Studio environment with VPC, S3 buckets, and service catalog portfolio to support data science projects'
Owner: 'Data Science Administration Team'
ProvisioningArtifactParameters:
- Name: 'DS Environment v1.2'
Description: 'A secure SageMaker Studio environment deployment into VPC'
Info:
LoadTemplateFromURL: 'https://s3.amazonaws.com/< S3_CFN_STAGING_BUCKET_PATH >/env-main.yaml'
SCPortfolioProductAssociation:
Type: 'AWS::ServiceCatalog::PortfolioProductAssociation'
Properties:
PortfolioId: !Ref DataScienceEnvironmentPortfolio
ProductId: !Ref DataScienceEnvironmentProduct
DSAdminPortfolioPrincipleAssociation:
Type: 'AWS::ServiceCatalog::PortfolioPrincipalAssociation'
Properties:
PortfolioId: !Ref DataScienceEnvironmentPortfolio
PrincipalARN: !Ref SCPortfolioPrincipalRoleArn
PrincipalType: IAM
SCProductLaunchRoleConstraint:
Type: 'AWS::ServiceCatalog::LaunchRoleConstraint'
DependsOn: SCPortfolioProductAssociation
Properties:
Description: !Sub 'AWS Service Catalog uses ${SCProductLaunchRoleArn} to launch a data science environment product'
PortfolioId: !Ref DataScienceEnvironmentPortfolio
ProductId: !Ref DataScienceEnvironmentProduct
RoleArn: !Ref SCProductLaunchRoleArn