Class Fog::CDN::AWS::Real
In: lib/fog/aws/cdn.rb
lib/fog/aws/requests/cdn/post_distribution.rb
lib/fog/aws/requests/cdn/get_streaming_distribution.rb
lib/fog/aws/requests/cdn/get_invalidation_list.rb
lib/fog/aws/requests/cdn/delete_streaming_distribution.rb
lib/fog/aws/requests/cdn/get_distribution.rb
lib/fog/aws/requests/cdn/put_distribution_config.rb
lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb
lib/fog/aws/requests/cdn/delete_distribution.rb
lib/fog/aws/requests/cdn/get_distribution_list.rb
lib/fog/aws/requests/cdn/post_invalidation.rb
lib/fog/aws/requests/cdn/post_streaming_distribution.rb
lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb
lib/fog/aws/requests/cdn/get_invalidation.rb
Parent: Object

Methods

Included Modules

Fog::AWS::CredentialFetcher::ConnectionMethods

Public Class methods

Initialize connection to Cloudfront

Notes

options parameter must include values for :aws_access_key_id and :aws_secret_access_key in order to create a connection

Examples

  cdn = Fog::AWS::CDN.new(
    :aws_access_key_id => your_aws_access_key_id,
    :aws_secret_access_key => your_aws_secret_access_key
  )

Parameters

  • options<~Hash> - config arguments for connection. Defaults to {}.

Returns

  • cdn object with connection to aws.

Public Instance methods

Delete a distribution from CloudFront

Parameters

  • distribution_id<~String> - Id of distribution to delete
  • etag<~String> - etag of that distribution from earlier get or put

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/DeleteDistribution.html

Delete a streaming distribution from CloudFront

Parameters

  • distribution_id<~String> - Id of distribution to delete
  • etag<~String> - etag of that distribution from earlier get or put

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/DeleteStreamingDistribution.html

Get information about a distribution from CloudFront

Parameters

  • distribution_id<~String> - id of distribution

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘S3Origin’<~Hash>:
        • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘
        • ‘OriginAccessIdentity’<~String> - Optional: Used when serving private content

      or

      • ‘CustomOrigin’<~Hash>:
        • ‘DNSName’<~String> - origin to associate with distribution, ie ‘www.example.com
        • ‘HTTPPort’<~Integer> - HTTP port of origin, in [80, 443] or (1024...65535)
        • ‘HTTPSPort’<~Integer> - HTTPS port of origin, in [80, 443] or (1024...65535)
        • ‘OriginProtocolPolicy’<~String> - Policy on using http vs https, in [‘http-only’, ‘match-viewer’]
      • ‘Id’<~String> - Id of distribution
      • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
      • ‘Status’<~String> - Status of distribution
      • ‘DistributionConfig’<~Array>:
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Comment’<~String> - comment associated with distribution
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘InProgressInvalidationBatches’<~Integer> - number of invalidation batches in progress
        • ‘Logging’<~Hash>:
          • ‘Bucket’<~String> - bucket logs are stored in
          • ‘Prefix’<~String> - prefix logs are stored with
        • ‘Origin’<~String> - s3 origin bucket
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/GetDistribution.html

List information about distributions in CloudFront

Parameters

  • options<~Hash> - config arguments for list. Defaults to {}.
    • ‘Marker’<~String> - limits object keys to only those that appear lexicographically after its value.
    • ‘MaxItems’<~Integer> - limits number of object keys returned

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘IsTruncated’<~Boolean> - Whether or not the listing is truncated
      • ‘Marker’<~String> - Marker specified for query
      • ‘MaxItems’<~Integer> - Maximum number of keys specified for query
      • ‘NextMarker’<~String> - Marker to specify for next page (id of last result of current page)
      • ‘DistributionSummary’<~Array>:
        • ‘S3Origin’<~Hash>:
          • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘
          • ‘OriginAccessIdentity’<~String> - Optional: Used when serving private content

        or

        • ‘CustomOrigin’<~Hash>:
          • ‘DNSName’<~String> - origin to associate with distribution, ie ‘www.example.com
          • ‘HTTPPort’<~Integer> - HTTP port of origin, in [80, 443] or (1024...65535)
          • ‘HTTPSPort’<~Integer> - HTTPS port of origin, in [80, 443] or (1024...65535)
        • ‘OriginProtocolPolicy’<~String> - Policy on using http vs https, in [‘http-only’, ‘match-viewer’]
        • ‘Comment’<~String> - comment associated with distribution
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘Id’<~String> - Id of distribution
        • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
        • ‘Origin’<~String> - s3 origin bucket
        • ‘Status’<~String> - Status of distribution
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/ListDistributions.html

Parameters

Returns

See Also

docs.amazonwebservices.com/AmazonCloudFront/2010-11-01/APIReference/GetInvalidation.html

Parameters

  • options<~Hash> - config arguments for list. Defaults to {}.
    • ‘Marker’<~String> - limits object keys to only those that appear lexicographically after its value.
    • ‘MaxItems’<~Integer> - limits number of object keys returned

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘IsTruncated’<~Boolean> - Whether or not the listing is truncated
      • ‘Marker’<~String> - Marker specified for query
      • ‘MaxItems’<~Integer> - Maximum number of keys specified for query
      • ‘NextMarker’<~String> - Marker to specify for next page (id of last result of current page)
      • ‘InvalidationSummary’<~Array>:

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/ListInvalidation.html

Get information about a streaming distribution from CloudFront

Parameters

  • distribution_id<~String> - id of distribution

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘S3Origin’<~Hash>:
        • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘
        • ‘OriginAccessIdentity’<~String> - Optional: Used when serving private content
      • ‘Id’<~String> - Id of distribution
      • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
      • ‘Status’<~String> - Status of distribution
      • ‘StreamingDistributionConfig’<~Array>:
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Comment’<~String> - comment associated with distribution
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘InProgressInvalidationBatches’<~Integer> - number of invalidation batches in progress
        • ‘Logging’<~Hash>:
          • ‘Bucket’<~String> - bucket logs are stored in
          • ‘Prefix’<~String> - prefix logs are stored with
        • ‘Origin’<~String> - s3 origin bucket
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/GetStreamingDistribution.html

List information about distributions in CloudFront

Parameters

  • options<~Hash> - config arguments for list. Defaults to {}.
    • ‘Marker’<~String> - limits object keys to only those that appear lexicographically after its value.
    • ‘MaxItems’<~Integer> - limits number of object keys returned

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘IsTruncated’<~Boolean> - Whether or not the listing is truncated
      • ‘Marker’<~String> - Marker specified for query
      • ‘MaxItems’<~Integer> - Maximum number of keys specified for query
      • ‘NextMarker’<~String> - Marker to specify for next page (id of last result of current page)
      • ‘StreamingDistributionSummary’<~Array>:
        • ‘S3Origin’<~Hash>:
          • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘
          • ‘OriginAccessIdentity’<~String> - Optional: Used when serving private content

        or

        • ‘CustomOrigin’<~Hash>:
          • ‘DNSName’<~String> - origin to associate with distribution, ie ‘www.example.com
          • ‘HTTPPort’<~Integer> - HTTP port of origin, in [80, 443] or (1024...65535)
          • ‘HTTPSPort’<~Integer> - HTTPS port of origin, in [80, 443] or (1024...65535)
        • ‘OriginProtocolPolicy’<~String> - Policy on using http vs https, in [‘http-only’, ‘match-viewer’]
        • ‘Comment’<~String> - comment associated with distribution
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘Id’<~String> - Id of distribution
        • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
        • ‘Origin’<~String> - s3 origin bucket
        • ‘Status’<~String> - Status of distribution
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/ListStreamingDistributions.html

create a new distribution in CloudFront

Parameters

  • options<~Hash> - config for distribution. Defaults to {}. REQUIRED:
    • ‘S3Origin’<~Hash>:
      • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘
      • ‘OriginAccessIdentity’<~String> - Optional: Used when serving private content

    or

    • ‘CustomOrigin’<~Hash>:
      • ‘DNSName’<~String> - origin to associate with distribution, ie ‘www.example.com
      • ‘HTTPPort’<~Integer> - Optional HTTP port of origin, in [80, 443] or (1024...65535), defaults to 80
      • ‘HTTPSPort’<~Integer> - Optional HTTPS port of origin, in [80, 443] or (1024...65535), defaults to 443
      • ‘OriginProtocolPolicy’<~String> - Policy on using http vs https, in [‘http-only’, ‘match-viewer’]

    OPTIONAL:

    • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
    • ‘Comment’<~String> - Optional comment about distribution
    • ‘CNAME’<~Array> - Optional array of strings to set as CNAMEs
    • ‘DefaultRootObject’<~String> - Optional default object to return for ’/’
    • ‘Enabled’<~Boolean> - Whether or not distribution should accept requests, defaults to true
    • ‘Logging’<~Hash>: Optional logging config
      • ‘Bucket’<~String> - Bucket to store logs in, ie ‘mylogs.s3.amazonaws.com‘
      • ‘Prefix’<~String> - Optional prefix for log filenames, ie ‘myprefix/’
    • ‘OriginAccessIdentity’<~String> - Used for serving private content, in format ‘origin-access-identity/cloudfront/ID‘
    • ‘RequiredProtocols’<~String> - Optional, set to ‘https’ to force https connections
    • ‘TrustedSigners’<~Array> - Optional grant of rights to up to 5 aws accounts to generate signed URLs for private content, elements are either ‘Self’ for your own account or an AWS Account Number

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘DomainName’<~String>: Domain name of distribution
      • ‘Id’<~String> - Id of distribution
      • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
      • ‘Status’<~String> - Status of distribution
      • ‘DistributionConfig’<~Array>:
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Comment’<~String> - comment associated with distribution
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘Logging’<~Hash>:
          • ‘Bucket’<~String> - bucket logs are stored in
          • ‘Prefix’<~String> - prefix logs are stored with
        • ‘Origin’<~String> - s3 origin bucket
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/CreateDistribution.html

List information about distributions in CloudFront

Parameters

  • distribution_id<~String> - Id of distribution for invalidations
  • paths<~Array> - Array of string paths to objects to invalidate
  • caller_reference<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘Id’<~String> - Id of invalidation
      • ‘Status’<~String> - Status of invalidation
      • ‘CreateTime’<~Integer> - Time of invalidation creation
      • ‘InvalidationBatch’<~Array>:
        • ‘Path’<~Array> - Array of strings of objects to invalidate
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/CreateInvalidation.html

create a new streaming distribution in CloudFront

Parameters

  • options<~Hash> - config for distribution. Defaults to {}. REQUIRED:
    • ‘S3Origin’<~Hash>:
      • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘

    OPTIONAL:

    • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
    • ‘Comment’<~String> - Optional comment about distribution
    • ‘CNAME’<~Array> - Optional array of strings to set as CNAMEs
    • ‘Enabled’<~Boolean> - Whether or not distribution should accept requests, defaults to true
    • ‘Logging’<~Hash>: Optional logging config
      • ‘Bucket’<~String> - Bucket to store logs in, ie ‘mylogs.s3.amazonaws.com‘
      • ‘Prefix’<~String> - Optional prefix for log filenames, ie ‘myprefix/’

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘Id’<~String> - Id of distribution
      • ‘Status’<~String> - Status of distribution
      • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
      • ‘DomainName’<~String>: Domain name of distribution
      • ‘StreamingDistributionConfig’<~Array>:
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Comment’<~String> - comment associated with distribution
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘Logging’<~Hash>:
          • ‘Bucket’<~String> - bucket logs are stored in
          • ‘Prefix’<~String> - prefix logs are stored with

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/CreateStreamingDistribution.html

update a distribution in CloudFront

Parameters

  • distribution_id<~String> - Id of distribution to update config for
  • options<~Hash> - config for distribution. Defaults to {}. REQUIRED:
    • ‘S3Origin’<~Hash>:
      • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘
      • ‘OriginAccessIdentity’<~String> - Optional: Used when serving private content

    or

    • ‘CustomOrigin’<~Hash>:
      • ‘DNSName’<~String> - origin to associate with distribution, ie ‘www.example.com
      • ‘HTTPPort’<~Integer> - HTTP port of origin, in [80, 443] or (1024...65535)
      • ‘HTTPSPort’<~Integer> - HTTPS port of origin, in [80, 443] or (1024...65535)
      • ‘OriginProtocolPolicy’<~String> - Policy on using http vs https, in [‘http-only’, ‘match-viewer’]

    OPTIONAL:

    • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
    • ‘Comment’<~String> - Optional comment about distribution
    • ‘CNAME’<~Array> - Optional array of strings to set as CNAMEs
    • ‘DefaultRootObject’<~String> - Optional default object to return for ’/’
    • ‘Enabled’<~Boolean> - Whether or not distribution should accept requests, defaults to true
    • ‘Logging’<~Hash>: Optional logging config
      • ‘Bucket’<~String> - Bucket to store logs in, ie ‘mylogs.s3.amazonaws.com‘
      • ‘Prefix’<~String> - Optional prefix for log filenames, ie ‘myprefix/’
    • ‘OriginAccessIdentity’<~String> - Used for serving private content, in format ‘origin-access-identity/cloudfront/ID‘
    • ‘RequiredProtocols’<~String> - Optional, set to ‘https’ to force https connections
    • ‘TrustedSigners’<~Array> - Optional grant of rights to up to 5 aws accounts to generate signed URLs for private content, elements are either ‘Self’ for your own account or an AWS Account Number

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘DomainName’<~String>: Domain name of distribution
      • ‘Id’<~String> - Id of distribution
      • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
      • ‘Status’<~String> - Status of distribution
      • ‘DistributionConfig’<~Array>:
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Comment’<~String> - comment associated with distribution
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘Logging’<~Hash>:
          • ‘Bucket’<~String> - bucket logs are stored in
          • ‘Prefix’<~String> - prefix logs are stored with
        • ‘Origin’<~String> - s3 origin bucket
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/CreateDistribution.html

update a streaming distribution in CloudFront

Parameters

  • distribution_id<~String> - Id of distribution to update config for
  • options<~Hash> - config for distribution. Defaults to {}. REQUIRED:
    • ‘S3Origin’<~Hash>:
      • ‘DNSName’<~String> - origin to associate with distribution, ie ‘mybucket.s3.amazonaws.com‘

    OPTIONAL:

    • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
    • ‘Comment’<~String> - Optional comment about distribution
    • ‘CNAME’<~Array> - Optional array of strings to set as CNAMEs
    • ‘Enabled’<~Boolean> - Whether or not distribution should accept requests, defaults to true
    • ‘Logging’<~Hash>: Optional logging config
      • ‘Bucket’<~String> - Bucket to store logs in, ie ‘mylogs.s3.amazonaws.com‘
      • ‘Prefix’<~String> - Optional prefix for log filenames, ie ‘myprefix/’

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘DomainName’<~String>: Domain name of distribution
      • ‘Id’<~String> - Id of distribution
      • ‘LastModifiedTime’<~String> - Timestamp of last modification of distribution
      • ‘Status’<~String> - Status of distribution
      • ‘StreamingDistributionConfig’<~Array>:
        • ‘CallerReference’<~String> - Used to prevent replay, defaults to Time.now.to_i.to_s
        • ‘CNAME’<~Array> - array of associated cnames
        • ‘Comment’<~String> - comment associated with distribution
        • ‘Enabled’<~Boolean> - whether or not distribution is enabled
        • ‘Logging’<~Hash>:
          • ‘Bucket’<~String> - bucket logs are stored in
          • ‘Prefix’<~String> - prefix logs are stored with
        • ‘Origin’<~String> - s3 origin bucket
        • ‘TrustedSigners’<~Array> - trusted signers

See Also

docs.amazonwebservices.com/AmazonCloudFront/latest/APIReference/PutStreamingDistribution.html

[Validate]