AppStream / Client / update_app_block_builder

update_app_block_builder#

AppStream.Client.update_app_block_builder(**kwargs)#

Updates an app block builder.

If the app block builder is in the STARTING or STOPPING state, you can’t update it. If the app block builder is in the RUNNING state, you can only update the DisplayName and Description. If the app block builder is in the STOPPED state, you can update any attribute except the Name.

See also: AWS API Documentation

Request Syntax

response = client.update_app_block_builder(
    Name='string',
    Description='string',
    DisplayName='string',
    Platform='WINDOWS'|'WINDOWS_SERVER_2016'|'WINDOWS_SERVER_2019'|'WINDOWS_SERVER_2022'|'AMAZON_LINUX2',
    InstanceType='string',
    VpcConfig={
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ]
    },
    EnableDefaultInternetAccess=True|False,
    IamRoleArn='string',
    AccessEndpoints=[
        {
            'EndpointType': 'STREAMING',
            'VpceId': 'string'
        },
    ],
    AttributesToDelete=[
        'IAM_ROLE_ARN'|'ACCESS_ENDPOINTS'|'VPC_CONFIGURATION_SECURITY_GROUP_IDS',
    ]
)
Parameters:
  • Name (string) –

    [REQUIRED]

    The unique name for the app block builder.

  • Description (string) – The description of the app block builder.

  • DisplayName (string) – The display name of the app block builder.

  • Platform (string) –

    The platform of the app block builder.

    WINDOWS_SERVER_2019 is the only valid value.

  • InstanceType (string) –

    The instance type to use when launching the app block builder. The following instance types are available:

    • stream.standard.small

    • stream.standard.medium

    • stream.standard.large

    • stream.standard.xlarge

    • stream.standard.2xlarge

  • VpcConfig (dict) –

    The VPC configuration for the app block builder.

    App block builders require that you specify at least two subnets in different availability zones.

    • SubnetIds (list) –

      The identifiers of the subnets to which a network interface is attached from the fleet instance or image builder instance. Fleet instances use one or more subnets. Image builder instances use one subnet.

      • (string) –

    • SecurityGroupIds (list) –

      The identifiers of the security groups for the fleet or image builder.

      • (string) –

  • EnableDefaultInternetAccess (boolean) – Enables or disables default internet access for the app block builder.

  • IamRoleArn (string) –

    The Amazon Resource Name (ARN) of the IAM role to apply to the app block builder. To assume a role, the app block builder calls the AWS Security Token Service (STS) AssumeRole API operation and passes the ARN of the role to use. The operation creates a new session with temporary credentials. AppStream 2.0 retrieves the temporary credentials and creates the appstream_machine_role credential profile on the instance.

    For more information, see Using an IAM Role to Grant Permissions to Applications and Scripts Running on AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 Administration Guide.

  • AccessEndpoints (list) –

    The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block builder only through the specified endpoints.

    • (dict) –

      Describes an interface VPC endpoint (interface endpoint) that lets you create a private connection between the virtual private cloud (VPC) that you specify and AppStream 2.0. When you specify an interface endpoint for a stack, users of the stack can connect to AppStream 2.0 only through that endpoint. When you specify an interface endpoint for an image builder, administrators can connect to the image builder only through that endpoint.

      • EndpointType (string) – [REQUIRED]

        The type of interface endpoint.

      • VpceId (string) –

        The identifier (ID) of the VPC in which the interface endpoint is used.

  • AttributesToDelete (list) –

    The attributes to delete from the app block builder.

    • (string) –

Return type:

dict

Returns:

Response Syntax

{
    'AppBlockBuilder': {
        'Arn': 'string',
        'Name': 'string',
        'DisplayName': 'string',
        'Description': 'string',
        'Platform': 'WINDOWS_SERVER_2019',
        'InstanceType': 'string',
        'EnableDefaultInternetAccess': True|False,
        'IamRoleArn': 'string',
        'VpcConfig': {
            'SubnetIds': [
                'string',
            ],
            'SecurityGroupIds': [
                'string',
            ]
        },
        'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED',
        'CreatedTime': datetime(2015, 1, 1),
        'AppBlockBuilderErrors': [
            {
                'ErrorCode': 'IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION'|'NETWORK_INTERFACE_LIMIT_EXCEEDED'|'INTERNAL_SERVICE_ERROR'|'IAM_SERVICE_ROLE_IS_MISSING'|'MACHINE_ROLE_IS_MISSING'|'STS_DISABLED_IN_REGION'|'SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION'|'SUBNET_NOT_FOUND'|'IMAGE_NOT_FOUND'|'INVALID_SUBNET_CONFIGURATION'|'SECURITY_GROUPS_NOT_FOUND'|'IGW_NOT_ATTACHED'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SECURITY_GROUPS_ACTION'|'FLEET_STOPPED'|'FLEET_INSTANCE_PROVISIONING_FAILURE'|'DOMAIN_JOIN_ERROR_FILE_NOT_FOUND'|'DOMAIN_JOIN_ERROR_ACCESS_DENIED'|'DOMAIN_JOIN_ERROR_LOGON_FAILURE'|'DOMAIN_JOIN_ERROR_INVALID_PARAMETER'|'DOMAIN_JOIN_ERROR_MORE_DATA'|'DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN'|'DOMAIN_JOIN_ERROR_NOT_SUPPORTED'|'DOMAIN_JOIN_NERR_INVALID_WORKGROUP_NAME'|'DOMAIN_JOIN_NERR_WORKSTATION_NOT_STARTED'|'DOMAIN_JOIN_ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED'|'DOMAIN_JOIN_NERR_PASSWORD_EXPIRED'|'DOMAIN_JOIN_INTERNAL_SERVICE_ERROR',
                'ErrorMessage': 'string',
                'ErrorTimestamp': datetime(2015, 1, 1)
            },
        ],
        'StateChangeReason': {
            'Code': 'INTERNAL_ERROR',
            'Message': 'string'
        },
        'AccessEndpoints': [
            {
                'EndpointType': 'STREAMING',
                'VpceId': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) –

    • AppBlockBuilder (dict) –

      Describes an app block builder.

      • Arn (string) –

        The ARN of the app block builder.

      • Name (string) –

        The name of the app block builder.

      • DisplayName (string) –

        The display name of the app block builder.

      • Description (string) –

        The description of the app block builder.

      • Platform (string) –

        The platform of the app block builder.

        WINDOWS_SERVER_2019 is the only valid value.

      • InstanceType (string) –

        The instance type of the app block builder.

      • EnableDefaultInternetAccess (boolean) –

        Indicates whether default internet access is enabled for the app block builder.

      • IamRoleArn (string) –

        The ARN of the IAM role that is applied to the app block builder.

      • VpcConfig (dict) –

        The VPC configuration for the app block builder.

        • SubnetIds (list) –

          The identifiers of the subnets to which a network interface is attached from the fleet instance or image builder instance. Fleet instances use one or more subnets. Image builder instances use one subnet.

          • (string) –

        • SecurityGroupIds (list) –

          The identifiers of the security groups for the fleet or image builder.

          • (string) –

      • State (string) –

        The state of the app block builder.

      • CreatedTime (datetime) –

        The creation time of the app block builder.

      • AppBlockBuilderErrors (list) –

        The app block builder errors.

        • (dict) –

          Describes a resource error.

          • ErrorCode (string) –

            The error code.

          • ErrorMessage (string) –

            The error message.

          • ErrorTimestamp (datetime) –

            The time the error occurred.

      • StateChangeReason (dict) –

        The state change reason.

        • Code (string) –

          The state change reason code.

        • Message (string) –

          The state change reason message.

      • AccessEndpoints (list) –

        The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block builder only through the specified endpoints.

        • (dict) –

          Describes an interface VPC endpoint (interface endpoint) that lets you create a private connection between the virtual private cloud (VPC) that you specify and AppStream 2.0. When you specify an interface endpoint for a stack, users of the stack can connect to AppStream 2.0 only through that endpoint. When you specify an interface endpoint for an image builder, administrators can connect to the image builder only through that endpoint.

          • EndpointType (string) –

            The type of interface endpoint.

          • VpceId (string) –

            The identifier (ID) of the VPC in which the interface endpoint is used.

Exceptions

  • AppStream.Client.exceptions.ConcurrentModificationException

  • AppStream.Client.exceptions.InvalidAccountStatusException

  • AppStream.Client.exceptions.InvalidParameterCombinationException

  • AppStream.Client.exceptions.InvalidRoleException

  • AppStream.Client.exceptions.LimitExceededException

  • AppStream.Client.exceptions.OperationNotPermittedException

  • AppStream.Client.exceptions.RequestLimitExceededException

  • AppStream.Client.exceptions.ResourceInUseException

  • AppStream.Client.exceptions.ResourceNotAvailableException

  • AppStream.Client.exceptions.ResourceNotFoundException