libZSservicesZSamazonka-gameliftZSamazonka-gamelift
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.GameLift.CreateScript

Description

Creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session.

To create a new script record, specify a script name and provide the script file(s). The script files and all dependencies must be zipped into a single file. You can pull the zip file from either of these locations:

  • A locally available directory. Use the ZipFile parameter for this option.
  • An Amazon Simple Storage Service (Amazon S3) bucket under your AWS account. Use the StorageLocation parameter for this option. You'll need to have an Identity Access Management (IAM) role that allows the Amazon GameLift service to access your S3 bucket.

If the call is successful, a new script record is created with a unique script ID. If the script file is provided as a local file, the file is uploaded to an Amazon GameLift-owned S3 bucket and the script record's storage location reflects this location. If the script file is provided as an S3 bucket, Amazon GameLift accesses the file at this storage location as needed for deployment.

Learn more

Amazon GameLift Realtime Servers

Set Up a Role for Amazon GameLift Access

Related actions

CreateScript | ListScripts | DescribeScript | UpdateScript | DeleteScript | All APIs by task

Synopsis

Creating a Request

data CreateScript Source #

See: newCreateScript smart constructor.

Constructors

CreateScript' 

Fields

  • storageLocation :: Maybe S3Location

    The location of the Amazon S3 bucket where a zipped file containing your Realtime scripts is stored. The storage location must specify the Amazon S3 bucket name, the zip file name (the "key"), and a role ARN that allows Amazon GameLift to access the Amazon S3 storage location. The S3 bucket must be in the same Region where you want to create a new script. By default, Amazon GameLift uploads the latest version of the zip file; if you have S3 object versioning turned on, you can use the ObjectVersion parameter to specify an earlier version.

  • zipFile :: Maybe Base64

    A data object containing your Realtime scripts and dependencies as a zip file. The zip file can have one or multiple files. Maximum size of a zip file is 5 MB.

    When using the AWS CLI tool to create a script, this parameter is set to the zip file name. It must be prepended with the string "fileb://" to indicate that the file data is a binary object. For example: --zip-file fileb://myRealtimeScript.zip.

  • name :: Maybe Text

    A descriptive label that is associated with a script. Script names do not need to be unique. You can use UpdateScript to change this value later.

  • version :: Maybe Text

    Version information that is associated with a build or script. Version strings do not need to be unique. You can use UpdateScript to change this value later.

  • tags :: Maybe [Tag]

    A list of labels to assign to the new script resource. Tags are developer-defined key-value pairs. Tagging AWS resources are useful for resource management, access management and cost allocation. For more information, see Tagging AWS Resources in the AWS General Reference. Once the resource is created, you can use TagResource, UntagResource, and ListTagsForResource to add, remove, and view tags. The maximum tag limit may be lower than stated. See the AWS General Reference for actual tagging limits.

Instances

Instances details
Eq CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Read CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Show CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Generic CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Associated Types

type Rep CreateScript :: Type -> Type #

NFData CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Methods

rnf :: CreateScript -> () #

Hashable CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

ToJSON CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

AWSRequest CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Associated Types

type AWSResponse CreateScript #

ToHeaders CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

ToPath CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

ToQuery CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

type Rep CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

type Rep CreateScript = D1 ('MetaData "CreateScript" "Amazonka.GameLift.CreateScript" "libZSservicesZSamazonka-gameliftZSamazonka-gamelift" 'False) (C1 ('MetaCons "CreateScript'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "storageLocation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe S3Location)) :*: S1 ('MetaSel ('Just "zipFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Base64))) :*: (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "version") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Tag]))))))
type AWSResponse CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

newCreateScript :: CreateScript Source #

Create a value of CreateScript with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:storageLocation:CreateScript', createScript_storageLocation - The location of the Amazon S3 bucket where a zipped file containing your Realtime scripts is stored. The storage location must specify the Amazon S3 bucket name, the zip file name (the "key"), and a role ARN that allows Amazon GameLift to access the Amazon S3 storage location. The S3 bucket must be in the same Region where you want to create a new script. By default, Amazon GameLift uploads the latest version of the zip file; if you have S3 object versioning turned on, you can use the ObjectVersion parameter to specify an earlier version.

$sel:zipFile:CreateScript', createScript_zipFile - A data object containing your Realtime scripts and dependencies as a zip file. The zip file can have one or multiple files. Maximum size of a zip file is 5 MB.

When using the AWS CLI tool to create a script, this parameter is set to the zip file name. It must be prepended with the string "fileb://" to indicate that the file data is a binary object. For example: --zip-file fileb://myRealtimeScript.zip.-- -- Note: This Lens automatically encodes and decodes Base64 data. -- The underlying isomorphism will encode to Base64 representation during -- serialisation, and decode from Base64 representation during deserialisation. -- This Lens accepts and returns only raw unencoded data.

$sel:name:CreateScript', createScript_name - A descriptive label that is associated with a script. Script names do not need to be unique. You can use UpdateScript to change this value later.

$sel:version:CreateScript', createScript_version - Version information that is associated with a build or script. Version strings do not need to be unique. You can use UpdateScript to change this value later.

$sel:tags:CreateScript', createScript_tags - A list of labels to assign to the new script resource. Tags are developer-defined key-value pairs. Tagging AWS resources are useful for resource management, access management and cost allocation. For more information, see Tagging AWS Resources in the AWS General Reference. Once the resource is created, you can use TagResource, UntagResource, and ListTagsForResource to add, remove, and view tags. The maximum tag limit may be lower than stated. See the AWS General Reference for actual tagging limits.

Request Lenses

createScript_storageLocation :: Lens' CreateScript (Maybe S3Location) Source #

The location of the Amazon S3 bucket where a zipped file containing your Realtime scripts is stored. The storage location must specify the Amazon S3 bucket name, the zip file name (the "key"), and a role ARN that allows Amazon GameLift to access the Amazon S3 storage location. The S3 bucket must be in the same Region where you want to create a new script. By default, Amazon GameLift uploads the latest version of the zip file; if you have S3 object versioning turned on, you can use the ObjectVersion parameter to specify an earlier version.

createScript_zipFile :: Lens' CreateScript (Maybe ByteString) Source #

A data object containing your Realtime scripts and dependencies as a zip file. The zip file can have one or multiple files. Maximum size of a zip file is 5 MB.

When using the AWS CLI tool to create a script, this parameter is set to the zip file name. It must be prepended with the string "fileb://" to indicate that the file data is a binary object. For example: --zip-file fileb://myRealtimeScript.zip.-- -- Note: This Lens automatically encodes and decodes Base64 data. -- The underlying isomorphism will encode to Base64 representation during -- serialisation, and decode from Base64 representation during deserialisation. -- This Lens accepts and returns only raw unencoded data.

createScript_name :: Lens' CreateScript (Maybe Text) Source #

A descriptive label that is associated with a script. Script names do not need to be unique. You can use UpdateScript to change this value later.

createScript_version :: Lens' CreateScript (Maybe Text) Source #

Version information that is associated with a build or script. Version strings do not need to be unique. You can use UpdateScript to change this value later.

createScript_tags :: Lens' CreateScript (Maybe [Tag]) Source #

A list of labels to assign to the new script resource. Tags are developer-defined key-value pairs. Tagging AWS resources are useful for resource management, access management and cost allocation. For more information, see Tagging AWS Resources in the AWS General Reference. Once the resource is created, you can use TagResource, UntagResource, and ListTagsForResource to add, remove, and view tags. The maximum tag limit may be lower than stated. See the AWS General Reference for actual tagging limits.

Destructuring the Response

data CreateScriptResponse Source #

See: newCreateScriptResponse smart constructor.

Constructors

CreateScriptResponse' 

Fields

  • script :: Maybe Script

    The newly created script record with a unique script ID and ARN. The new script's storage location reflects an Amazon S3 location: (1) If the script was uploaded from an S3 bucket under your account, the storage location reflects the information that was provided in the CreateScript request; (2) If the script file was uploaded from a local zip file, the storage location reflects an S3 location controls by the Amazon GameLift service.

  • httpStatus :: Int

    The response's http status code.

Instances

Instances details
Eq CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Read CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Show CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Generic CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Associated Types

type Rep CreateScriptResponse :: Type -> Type #

NFData CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Methods

rnf :: CreateScriptResponse -> () #

type Rep CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

type Rep CreateScriptResponse = D1 ('MetaData "CreateScriptResponse" "Amazonka.GameLift.CreateScript" "libZSservicesZSamazonka-gameliftZSamazonka-gamelift" 'False) (C1 ('MetaCons "CreateScriptResponse'" 'PrefixI 'True) (S1 ('MetaSel ('Just "script") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Script)) :*: S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)))

newCreateScriptResponse Source #

Create a value of CreateScriptResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:script:CreateScriptResponse', createScriptResponse_script - The newly created script record with a unique script ID and ARN. The new script's storage location reflects an Amazon S3 location: (1) If the script was uploaded from an S3 bucket under your account, the storage location reflects the information that was provided in the CreateScript request; (2) If the script file was uploaded from a local zip file, the storage location reflects an S3 location controls by the Amazon GameLift service.

$sel:httpStatus:CreateScriptResponse', createScriptResponse_httpStatus - The response's http status code.

Response Lenses

createScriptResponse_script :: Lens' CreateScriptResponse (Maybe Script) Source #

The newly created script record with a unique script ID and ARN. The new script's storage location reflects an Amazon S3 location: (1) If the script was uploaded from an S3 bucket under your account, the storage location reflects the information that was provided in the CreateScript request; (2) If the script file was uploaded from a local zip file, the storage location reflects an S3 location controls by the Amazon GameLift service.