create_scheduling_policy

Batch.Client.create_scheduling_policy(**kwargs)

Creates an Batch scheduling policy.

See also: AWS API Documentation

Request Syntax

response = client.create_scheduling_policy(
    name='string',
    fairsharePolicy={
        'shareDecaySeconds': 123,
        'computeReservation': 123,
        'shareDistribution': [
            {
                'shareIdentifier': 'string',
                'weightFactor': ...
            },
        ]
    },
    tags={
        'string': 'string'
    }
)
Parameters
  • name (string) --

    [REQUIRED]

    The name of the scheduling policy. It can be up to 128 letters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).

  • fairsharePolicy (dict) --

    The fair share policy of the scheduling policy.

    • shareDecaySeconds (integer) --

      The amount of time (in seconds) to use to calculate a fair share percentage for each fair share identifier in use. A value of zero (0) indicates that only current usage is measured. The decay allows for more recently run jobs to have more weight than jobs that ran earlier. The maximum supported value is 604800 (1 week).

    • computeReservation (integer) --

      A value used to reserve some of the available maximum vCPU for fair share identifiers that aren't already used.

      The reserved ratio is (computeReservation/100)^ActiveFairShares where ActiveFairShares is the number of active fair share identifiers.

      For example, a computeReservation value of 50 indicates that Batchreserves 50% of the maximum available vCPU if there's only one fair share identifier. It reserves 25% if there are two fair share identifiers. It reserves 12.5% if there are three fair share identifiers. A computeReservation value of 25 indicates that Batch should reserve 25% of the maximum available vCPU if there's only one fair share identifier, 6.25% if there are two fair share identifiers, and 1.56% if there are three fair share identifiers.

      The minimum value is 0 and the maximum value is 99.

    • shareDistribution (list) --

      An array of SharedIdentifier objects that contain the weights for the fair share identifiers for the fair share policy. Fair share identifiers that aren't included have a default weight of 1.0 .

      • (dict) --

        Specifies the weights for the fair share identifiers for the fair share policy. Fair share identifiers that aren't included have a default weight of 1.0 .

        • shareIdentifier (string) -- [REQUIRED]

          A fair share identifier or fair share identifier prefix. If the string ends with an asterisk (*), this entry specifies the weight factor to use for fair share identifiers that start with that prefix. The list of fair share identifiers in a fair share policy can't overlap. For example, you can't have one that specifies a shareIdentifier of UserA* and another that specifies a shareIdentifier of UserA-1 .

          There can be no more than 500 fair share identifiers active in a job queue.

          The string is limited to 255 alphanumeric characters, and can be followed by an asterisk (*).

        • weightFactor (float) --

          The weight factor for the fair share identifier. The default value is 1.0. A lower value has a higher priority for compute resources. For example, jobs that use a share identifier with a weight factor of 0.125 (1/8) get 8 times the compute resources of jobs that use a share identifier with a weight factor of 1.

          The smallest supported value is 0.0001, and the largest supported value is 999.9999.

  • tags (dict) --

    The tags that you apply to the scheduling policy to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging Amazon Web Services Resources in Amazon Web Services General Reference .

    These tags can be updated or removed using the TagResource and UntagResource API operations.

    • (string) --
      • (string) --
Return type

dict

Returns

Response Syntax

{
    'name': 'string',
    'arn': 'string'
}

Response Structure

  • (dict) --

    • name (string) --

      The name of the scheduling policy.

    • arn (string) --

      The Amazon Resource Name (ARN) of the scheduling policy. The format is aws:Partition:batch:Region:Account:scheduling-policy/Name . For example, aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy .

Exceptions

  • Batch.Client.exceptions.ClientException
  • Batch.Client.exceptions.ServerException