studio_components
Creates, updates, deletes or gets a studio_component
resource or lists studio_components
in a region
Overview
Name | studio_components |
Type | Resource |
Description | Represents a studio component that connects a non-Nimble Studio resource in your account to your studio |
Id | aws.nimblestudio.studio_components |
Fields
Name | Datatype | Description |
---|---|---|
configuration | undefined | The configuration of the studio component, based on component type. |
description | string | The description. |
ec2_security_group_ids | array | The EC2 security groups that control access to the studio component. |
initialization_scripts | array | Initialization scripts for studio components. |
name | string | The name for the studio component. |
runtime_role_arn | string | |
script_parameters | array | Parameters for the studio component scripts. |
secure_initialization_role_arn | string | |
studio_component_id | string | |
studio_id | string | The studio ID. |
subtype | string | |
tags | object | |
type | string | |
region | string | AWS region. |
Methods
Name | Accessible by | Required Params |
---|---|---|
create_resource | INSERT | StudioId, Name, Type, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT
examples
Gets all studio_components
in a region.
SELECT
region,
configuration,
description,
ec2_security_group_ids,
initialization_scripts,
name,
runtime_role_arn,
script_parameters,
secure_initialization_role_arn,
studio_component_id,
studio_id,
subtype,
tags,
type
FROM aws.nimblestudio.studio_components
WHERE region = 'us-east-1';
Gets all properties from an individual studio_component
.
SELECT
region,
configuration,
description,
ec2_security_group_ids,
initialization_scripts,
name,
runtime_role_arn,
script_parameters,
secure_initialization_role_arn,
studio_component_id,
studio_id,
subtype,
tags,
type
FROM aws.nimblestudio.studio_components
WHERE region = 'us-east-1' AND data__Identifier = '<StudioComponentId>|<StudioId>';
INSERT
example
Use the following StackQL query and manifest file to create a new studio_component
resource, using stack-deploy
.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.nimblestudio.studio_components (
Name,
StudioId,
Type,
region
)
SELECT
'{{ Name }}',
'{{ StudioId }}',
'{{ Type }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.nimblestudio.studio_components (
Configuration,
Description,
Ec2SecurityGroupIds,
InitializationScripts,
Name,
RuntimeRoleArn,
ScriptParameters,
SecureInitializationRoleArn,
StudioId,
Subtype,
Tags,
Type,
region
)
SELECT
'{{ Configuration }}',
'{{ Description }}',
'{{ Ec2SecurityGroupIds }}',
'{{ InitializationScripts }}',
'{{ Name }}',
'{{ RuntimeRoleArn }}',
'{{ ScriptParameters }}',
'{{ SecureInitializationRoleArn }}',
'{{ StudioId }}',
'{{ Subtype }}',
'{{ Tags }}',
'{{ Type }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: studio_component
props:
- name: Configuration
value: null
- name: Description
value: '{{ Description }}'
- name: Ec2SecurityGroupIds
value:
- '{{ Ec2SecurityGroupIds[0] }}'
- name: InitializationScripts
value:
- LaunchProfileProtocolVersion: '{{ LaunchProfileProtocolVersion }}'
Platform: '{{ Platform }}'
RunContext: '{{ RunContext }}'
Script: '{{ Script }}'
- name: Name
value: '{{ Name }}'
- name: RuntimeRoleArn
value: '{{ RuntimeRoleArn }}'
- name: ScriptParameters
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
- name: SecureInitializationRoleArn
value: '{{ SecureInitializationRoleArn }}'
- name: StudioId
value: '{{ StudioId }}'
- name: Subtype
value: '{{ Subtype }}'
- name: Tags
value: {}
- name: Type
value: '{{ Type }}'
DELETE
example
/*+ delete */
DELETE FROM aws.nimblestudio.studio_components
WHERE data__Identifier = '<StudioComponentId|StudioId>'
AND region = 'us-east-1';
Permissions
To operate on the studio_components
resource, the following permissions are required:
Create
iam:PassRole,
nimble:CreateStudioComponent,
nimble:GetStudioComponent,
nimble:TagResource,
ds:AuthorizeApplication,
ec2:DescribeSecurityGroups,
fsx:DescribeFilesystems,
ds:DescribeDirectories
Read
nimble:GetStudioComponent
Update
iam:PassRole,
nimble:UpdateStudioComponent,
nimble:GetStudioComponent,
ds:AuthorizeApplication,
ec2:DescribeSecurityGroups,
fsx:DescribeFilesystems,
ds:DescribeDirectories
Delete
nimble:DeleteStudioComponent,
nimble:GetStudioComponent,
nimble:UntagResource,
ds:UnauthorizeApplication
List
nimble:ListStudioComponents