amazonka-gamelift-2.0: Amazon GameLift SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

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 Amazon Web Services 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

All APIs by task

Synopsis

Creating a Request

data CreateScript Source #

See: newCreateScript smart constructor.

Constructors

CreateScript' 

Fields

  • 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.

  • 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.

  • tags :: Maybe [Tag]

    A list of labels to assign to the new script resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources are useful for resource management, access management and cost allocation. For more information, see Tagging Amazon Web Services Resources in the Amazon Web Services 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 Amazon Web Services General Reference for actual tagging limits.

  • version :: Maybe Text

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

  • 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 Amazon Web Services 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.

Instances

Instances details
ToJSON CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.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

AWSRequest CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Associated Types

type AWSResponse CreateScript #

Generic CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Associated Types

type Rep CreateScript :: Type -> Type #

Read CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Show CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

NFData CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Methods

rnf :: CreateScript -> () #

Eq CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Hashable CreateScript Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

type AWSResponse 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" "amazonka-gamelift-2.0-IjhNQby9jLV6gj30IrgsyK" 'False) (C1 ('MetaCons "CreateScript'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "storageLocation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe S3Location))) :*: (S1 ('MetaSel ('Just "tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Tag])) :*: (S1 ('MetaSel ('Just "version") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "zipFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Base64))))))

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:

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.

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:tags:CreateScript', createScript_tags - A list of labels to assign to the new script resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources are useful for resource management, access management and cost allocation. For more information, see Tagging Amazon Web Services Resources in the Amazon Web Services 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 Amazon Web Services General Reference for actual tagging limits.

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

$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 Amazon Web Services 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.

Request Lenses

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_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_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 Amazon Web Services resources are useful for resource management, access management and cost allocation. For more information, see Tagging Amazon Web Services Resources in the Amazon Web Services 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 Amazon Web Services General Reference for actual tagging limits.

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

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

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 Amazon Web Services 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.

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
Generic CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Associated Types

type Rep CreateScriptResponse :: Type -> Type #

Read CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Show CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

NFData CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

Methods

rnf :: CreateScriptResponse -> () #

Eq CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

type Rep CreateScriptResponse Source # 
Instance details

Defined in Amazonka.GameLift.CreateScript

type Rep CreateScriptResponse = D1 ('MetaData "CreateScriptResponse" "Amazonka.GameLift.CreateScript" "amazonka-gamelift-2.0-IjhNQby9jLV6gj30IrgsyK" '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.