/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ /** *

The configuration of the studio component, based on component type.

*/ export type StudioComponentConfiguration = | ActiveDirectoryConfiguration | ComputeFarmConfiguration | LicenseServiceConfiguration | SharedFileSystemConfiguration; export type LaunchProfilePlatform = "LINUX" | "WINDOWS"; export type StudioComponentInitializationScriptRunContext = "SYSTEM_INITIALIZATION" | "USER_INITIALIZATION"; export type StudioComponentSubtype = | "AWS_MANAGED_MICROSOFT_AD" | "AMAZON_FSX_FOR_WINDOWS" | "AMAZON_FSX_FOR_LUSTRE" | "CUSTOM"; export type StudioComponentType = | "ACTIVE_DIRECTORY" | "SHARED_FILE_SYSTEM" | "COMPUTE_FARM" | "LICENSE_SERVICE" | "CUSTOM"; /** * Represents a studio component that connects a non-Nimble Studio resource in your account to your studio */ export interface AwsNimblestudioStudiocomponent { Configuration?: StudioComponentConfiguration; /** *

The description.

*/ Description?: string; /** *

The EC2 security groups that control access to the studio component.

* * @minItems 0 * @maxItems 30 */ Ec2SecurityGroupIds?: string[]; /** *

Initialization scripts for studio components.

*/ InitializationScripts?: StudioComponentInitializationScript[]; /** *

The name for the studio component.

*/ Name: string; RuntimeRoleArn?: string; /** *

Parameters for the studio component scripts.

* * @minItems 0 * @maxItems 30 */ ScriptParameters?: ScriptParameterKeyValue[]; SecureInitializationRoleArn?: string; StudioComponentId?: string; /** *

The studio ID.

*/ StudioId: string; Subtype?: StudioComponentSubtype; Tags?: Tags; Type: StudioComponentType; } export interface ActiveDirectoryConfiguration { ActiveDirectoryConfiguration: ActiveDirectoryConfiguration1; } /** *

The configuration for a Microsoft Active Directory (Microsoft AD) studio * resource.

*/ export interface ActiveDirectoryConfiguration1 { /** *

A collection of custom attributes for an Active Directory computer.

* * @minItems 0 * @maxItems 50 */ ComputerAttributes?: ActiveDirectoryComputerAttribute[]; /** *

The directory ID of the Directory Service for Microsoft Active Directory to access * using this studio component.

*/ DirectoryId?: string; /** *

The distinguished name (DN) and organizational unit (OU) of an Active Directory * computer.

*/ OrganizationalUnitDistinguishedName?: string; } /** *

An LDAP attribute of an Active Directory computer account, in the form of a name:value * pair.

*/ export interface ActiveDirectoryComputerAttribute { /** *

The name for the LDAP attribute.

*/ Name?: string; /** *

The value for the LDAP attribute.

*/ Value?: string; } export interface ComputeFarmConfiguration { ComputeFarmConfiguration: ComputeFarmConfiguration1; } /** *

The configuration for a render farm that is associated with a studio resource.

*/ export interface ComputeFarmConfiguration1 { /** *

The name of an Active Directory user that is used on ComputeFarm worker * instances.

*/ ActiveDirectoryUser?: string; /** *

The endpoint of the ComputeFarm that is accessed by the studio component * resource.

*/ Endpoint?: string; } export interface LicenseServiceConfiguration { LicenseServiceConfiguration: LicenseServiceConfiguration1; } /** *

The configuration for a license service that is associated with a studio * resource.

*/ export interface LicenseServiceConfiguration1 { /** *

The endpoint of the license service that is accessed by the studio component * resource.

*/ Endpoint?: string; } export interface SharedFileSystemConfiguration { SharedFileSystemConfiguration: SharedFileSystemConfiguration1; } /** *

The configuration for a shared file storage system that is associated with a studio * resource.

*/ export interface SharedFileSystemConfiguration1 { /** *

The endpoint of the shared file system that is accessed by the studio component * resource.

*/ Endpoint?: string; /** *

The unique identifier for a file system.

*/ FileSystemId?: string; /** *

The mount location for a shared file system on a Linux virtual workstation.

*/ LinuxMountPoint?: string; /** *

The name of the file share.

*/ ShareName?: string; /** *

The mount location for a shared file system on a Windows virtual workstation.

*/ WindowsMountDrive?: string; } /** *

Initialization scripts for studio components.

*/ export interface StudioComponentInitializationScript { /** *

The version number of the protocol that is used by the launch profile. The only valid * version is "2021-03-31".

*/ LaunchProfileProtocolVersion?: string; Platform?: LaunchProfilePlatform; RunContext?: StudioComponentInitializationScriptRunContext; /** *

The initialization script.

*/ Script?: string; } /** *

A parameter for a studio component script, in the form of a key:value pair.

*/ export interface ScriptParameterKeyValue { /** *

A script parameter key.

*/ Key?: string; /** *

A script parameter value.

*/ Value?: string; } export interface Tags { /** * This interface was referenced by `Tags`'s JSON-Schema definition * via the `patternProperty` ".+". */ [k: string]: string; }