Documentation
¶
Overview ¶
nolint: lll Package cloudfront exports types, functions, subpackages for provisioning cloudfront resources.
> This provider is a derived work of the [Terraform Provider](https://github.com/terraform-providers/terraform-provider-aws) > distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature, > first check the [`pulumi/pulumi-aws` repo](https://github.com/pulumi/pulumi-aws/issues); however, if that doesn't turn up anything, > please consult the source [`terraform-providers/terraform-provider-aws` repo](https://github.com/terraform-providers/terraform-provider-aws/issues).
Index ¶
- type Distribution
- func (r *Distribution) ActiveTrustedSigners() *pulumi.MapOutput
- func (r *Distribution) Aliases() *pulumi.ArrayOutput
- func (r *Distribution) Arn() *pulumi.StringOutput
- func (r *Distribution) CallerReference() *pulumi.StringOutput
- func (r *Distribution) Comment() *pulumi.StringOutput
- func (r *Distribution) CustomErrorResponses() *pulumi.ArrayOutput
- func (r *Distribution) DefaultCacheBehavior() *pulumi.Output
- func (r *Distribution) DefaultRootObject() *pulumi.StringOutput
- func (r *Distribution) DomainName() *pulumi.StringOutput
- func (r *Distribution) Enabled() *pulumi.BoolOutput
- func (r *Distribution) Etag() *pulumi.StringOutput
- func (r *Distribution) HostedZoneId() *pulumi.StringOutput
- func (r *Distribution) HttpVersion() *pulumi.StringOutput
- func (r *Distribution) ID() *pulumi.IDOutput
- func (r *Distribution) InProgressValidationBatches() *pulumi.IntOutput
- func (r *Distribution) IsIpv6Enabled() *pulumi.BoolOutput
- func (r *Distribution) LastModifiedTime() *pulumi.StringOutput
- func (r *Distribution) LoggingConfig() *pulumi.Output
- func (r *Distribution) OrderedCacheBehaviors() *pulumi.ArrayOutput
- func (r *Distribution) OriginGroups() *pulumi.ArrayOutput
- func (r *Distribution) Origins() *pulumi.ArrayOutput
- func (r *Distribution) PriceClass() *pulumi.StringOutput
- func (r *Distribution) Restrictions() *pulumi.Output
- func (r *Distribution) RetainOnDelete() *pulumi.BoolOutput
- func (r *Distribution) Status() *pulumi.StringOutput
- func (r *Distribution) Tags() *pulumi.MapOutput
- func (r *Distribution) URN() *pulumi.URNOutput
- func (r *Distribution) ViewerCertificate() *pulumi.Output
- func (r *Distribution) WaitForDeployment() *pulumi.BoolOutput
- func (r *Distribution) WebAclId() *pulumi.StringOutput
- type DistributionArgs
- type DistributionState
- type OriginAccessIdentity
- func (r *OriginAccessIdentity) CallerReference() *pulumi.StringOutput
- func (r *OriginAccessIdentity) CloudfrontAccessIdentityPath() *pulumi.StringOutput
- func (r *OriginAccessIdentity) Comment() *pulumi.StringOutput
- func (r *OriginAccessIdentity) Etag() *pulumi.StringOutput
- func (r *OriginAccessIdentity) ID() *pulumi.IDOutput
- func (r *OriginAccessIdentity) IamArn() *pulumi.StringOutput
- func (r *OriginAccessIdentity) S3CanonicalUserId() *pulumi.StringOutput
- func (r *OriginAccessIdentity) URN() *pulumi.URNOutput
- type OriginAccessIdentityArgs
- type OriginAccessIdentityState
- type PublicKey
- func (r *PublicKey) CallerReference() *pulumi.StringOutput
- func (r *PublicKey) Comment() *pulumi.StringOutput
- func (r *PublicKey) EncodedKey() *pulumi.StringOutput
- func (r *PublicKey) Etag() *pulumi.StringOutput
- func (r *PublicKey) ID() *pulumi.IDOutput
- func (r *PublicKey) Name() *pulumi.StringOutput
- func (r *PublicKey) NamePrefix() *pulumi.StringOutput
- func (r *PublicKey) URN() *pulumi.URNOutput
- type PublicKeyArgs
- type PublicKeyState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Distribution ¶
type Distribution struct {
// contains filtered or unexported fields
}
Creates an Amazon CloudFront web distribution.
For information about CloudFront distributions, see the [Amazon CloudFront Developer Guide][1]. For specific information about creating CloudFront web distributions, see the [POST Distribution][2] page in the Amazon CloudFront API Reference.
> **NOTE:** CloudFront distributions take about 15 minutes to a deployed state after creation or modification. During this time, deletes to resources will be blocked. If you need to delete a distribution that is enabled and you do not want to wait, you need to use the `retainOnDelete` flag.
> This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/cloudfront_distribution.html.markdown.
func GetDistribution ¶
func GetDistribution(ctx *pulumi.Context, name string, id pulumi.ID, state *DistributionState, opts ...pulumi.ResourceOpt) (*Distribution, error)
GetDistribution gets an existing Distribution resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDistribution ¶
func NewDistribution(ctx *pulumi.Context, name string, args *DistributionArgs, opts ...pulumi.ResourceOpt) (*Distribution, error)
NewDistribution registers a new resource with the given unique name, arguments, and options.
func (*Distribution) ActiveTrustedSigners ¶
func (r *Distribution) ActiveTrustedSigners() *pulumi.MapOutput
The key pair IDs that CloudFront is aware of for each trusted signer, if the distribution is set up to serve private content with signed URLs.
func (*Distribution) Aliases ¶
func (r *Distribution) Aliases() *pulumi.ArrayOutput
Extra CNAMEs (alternate domain names), if any, for this distribution.
func (*Distribution) Arn ¶
func (r *Distribution) Arn() *pulumi.StringOutput
The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account ID.
func (*Distribution) CallerReference ¶
func (r *Distribution) CallerReference() *pulumi.StringOutput
Internal value used by CloudFront to allow future updates to the distribution configuration.
func (*Distribution) Comment ¶
func (r *Distribution) Comment() *pulumi.StringOutput
Any comments you want to include about the distribution.
func (*Distribution) CustomErrorResponses ¶
func (r *Distribution) CustomErrorResponses() *pulumi.ArrayOutput
One or more custom error response elements (multiples allowed).
func (*Distribution) DefaultCacheBehavior ¶
func (r *Distribution) DefaultCacheBehavior() *pulumi.Output
The default cache behavior for this distribution (maximum one).
func (*Distribution) DefaultRootObject ¶
func (r *Distribution) DefaultRootObject() *pulumi.StringOutput
The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL.
func (*Distribution) DomainName ¶
func (r *Distribution) DomainName() *pulumi.StringOutput
The DNS domain name of either the S3 bucket, or web site of your custom origin.
func (*Distribution) Enabled ¶
func (r *Distribution) Enabled() *pulumi.BoolOutput
Whether the distribution is enabled to accept end user requests for content.
func (*Distribution) Etag ¶
func (r *Distribution) Etag() *pulumi.StringOutput
The current version of the distribution's information. For example: `E2QWRUHAPOMQZL`.
func (*Distribution) HostedZoneId ¶
func (r *Distribution) HostedZoneId() *pulumi.StringOutput
The CloudFront Route 53 zone ID that can be used to route an [Alias Resource Record Set][7] to. This attribute is simply an alias for the zone ID `Z2FDTNDATAQYW2`.
func (*Distribution) HttpVersion ¶
func (r *Distribution) HttpVersion() *pulumi.StringOutput
The maximum HTTP version to support on the distribution. Allowed values are `http1.1` and `http2`. The default is `http2`.
func (*Distribution) ID ¶
func (r *Distribution) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*Distribution) InProgressValidationBatches ¶
func (r *Distribution) InProgressValidationBatches() *pulumi.IntOutput
The number of invalidation batches currently in progress.
func (*Distribution) IsIpv6Enabled ¶
func (r *Distribution) IsIpv6Enabled() *pulumi.BoolOutput
Whether the IPv6 is enabled for the distribution.
func (*Distribution) LastModifiedTime ¶
func (r *Distribution) LastModifiedTime() *pulumi.StringOutput
The date and time the distribution was last modified.
func (*Distribution) LoggingConfig ¶
func (r *Distribution) LoggingConfig() *pulumi.Output
The logging configuration that controls how logs are written to your distribution (maximum one).
func (*Distribution) OrderedCacheBehaviors ¶
func (r *Distribution) OrderedCacheBehaviors() *pulumi.ArrayOutput
An ordered list of cache behaviors resource for this distribution. List from top to bottom in order of precedence. The topmost cache behavior will have precedence 0.
func (*Distribution) OriginGroups ¶ added in v0.18.1
func (r *Distribution) OriginGroups() *pulumi.ArrayOutput
One or more originGroup for this distribution (multiples allowed).
func (*Distribution) Origins ¶
func (r *Distribution) Origins() *pulumi.ArrayOutput
One or more origins for this distribution (multiples allowed).
func (*Distribution) PriceClass ¶
func (r *Distribution) PriceClass() *pulumi.StringOutput
The price class for this distribution. One of `PriceClass_All`, `PriceClass_200`, `PriceClass_100`
func (*Distribution) Restrictions ¶
func (r *Distribution) Restrictions() *pulumi.Output
The restriction configuration for this distribution (maximum one).
func (*Distribution) RetainOnDelete ¶
func (r *Distribution) RetainOnDelete() *pulumi.BoolOutput
Disables the distribution instead of deleting it when destroying the resource. If this is set, the distribution needs to be deleted manually afterwards. Default: `false`.
func (*Distribution) Status ¶
func (r *Distribution) Status() *pulumi.StringOutput
The current status of the distribution. `Deployed` if the distribution's information is fully propagated throughout the Amazon CloudFront system.
func (*Distribution) Tags ¶
func (r *Distribution) Tags() *pulumi.MapOutput
A mapping of tags to assign to the resource.
func (*Distribution) URN ¶
func (r *Distribution) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*Distribution) ViewerCertificate ¶
func (r *Distribution) ViewerCertificate() *pulumi.Output
The SSL configuration for this distribution (maximum one).
func (*Distribution) WaitForDeployment ¶ added in v0.18.2
func (r *Distribution) WaitForDeployment() *pulumi.BoolOutput
If enabled, the resource will wait for the distribution status to change from `InProgress` to `Deployed`. Setting this to`false` will skip the process. Default: `true`.
func (*Distribution) WebAclId ¶
func (r *Distribution) WebAclId() *pulumi.StringOutput
If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution. The WAF Web ACL must exist in the WAF Global (CloudFront) region and the credentials configuring this argument must have `waf:GetWebACL` permissions assigned.
type DistributionArgs ¶
type DistributionArgs struct { // Extra CNAMEs (alternate domain names), if any, for // this distribution. Aliases interface{} // Any comments you want to include about the // distribution. Comment interface{} // One or more custom error response elements (multiples allowed). CustomErrorResponses interface{} // The default cache behavior for this distribution (maximum // one). DefaultCacheBehavior interface{} // The object that you want CloudFront to // return (for example, index.html) when an end user requests the root URL. DefaultRootObject interface{} // Whether the distribution is enabled to accept end // user requests for content. Enabled interface{} // The maximum HTTP version to support on the // distribution. Allowed values are `http1.1` and `http2`. The default is // `http2`. HttpVersion interface{} // Whether the IPv6 is enabled for the distribution. IsIpv6Enabled interface{} // The logging // configuration that controls how logs are written // to your distribution (maximum one). LoggingConfig interface{} // An ordered list of cache behaviors // resource for this distribution. List from top to bottom // in order of precedence. The topmost cache behavior will have precedence 0. OrderedCacheBehaviors interface{} // One or more origins for this // distribution (multiples allowed). Origins interface{} // One or more originGroup for this // distribution (multiples allowed). OriginGroups interface{} // The price class for this distribution. One of // `PriceClass_All`, `PriceClass_200`, `PriceClass_100` PriceClass interface{} // The restriction // configuration for this distribution (maximum one). Restrictions interface{} // Disables the distribution instead of // deleting it when destroying the resource. If this is set, // the distribution needs to be deleted manually afterwards. Default: `false`. RetainOnDelete interface{} // A mapping of tags to assign to the resource. Tags interface{} // The SSL // configuration for this distribution (maximum // one). ViewerCertificate interface{} // If enabled, the resource will wait for // the distribution status to change from `InProgress` to `Deployed`. Setting // this to`false` will skip the process. Default: `true`. WaitForDeployment interface{} // If you're using AWS WAF to filter CloudFront // requests, the Id of the AWS WAF web ACL that is associated with the // distribution. The WAF Web ACL must exist in the WAF Global (CloudFront) // region and the credentials configuring this argument must have // `waf:GetWebACL` permissions assigned. WebAclId interface{} }
The set of arguments for constructing a Distribution resource.
type DistributionState ¶
type DistributionState struct { // The key pair IDs that CloudFront is aware of for // each trusted signer, if the distribution is set up to serve private content // with signed URLs. ActiveTrustedSigners interface{} // Extra CNAMEs (alternate domain names), if any, for // this distribution. Aliases interface{} // The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account ID. Arn interface{} // Internal value used by CloudFront to allow future // updates to the distribution configuration. CallerReference interface{} // Any comments you want to include about the // distribution. Comment interface{} // One or more custom error response elements (multiples allowed). CustomErrorResponses interface{} // The default cache behavior for this distribution (maximum // one). DefaultCacheBehavior interface{} // The object that you want CloudFront to // return (for example, index.html) when an end user requests the root URL. DefaultRootObject interface{} // The DNS domain name of either the S3 bucket, or // web site of your custom origin. DomainName interface{} // Whether the distribution is enabled to accept end // user requests for content. Enabled interface{} // The current version of the distribution's information. For example: // `E2QWRUHAPOMQZL`. Etag interface{} // The CloudFront Route 53 zone ID that can be used to // route an [Alias Resource Record Set][7] to. This attribute is simply an // alias for the zone ID `Z2FDTNDATAQYW2`. HostedZoneId interface{} // The maximum HTTP version to support on the // distribution. Allowed values are `http1.1` and `http2`. The default is // `http2`. HttpVersion interface{} // The number of invalidation batches // currently in progress. InProgressValidationBatches interface{} // Whether the IPv6 is enabled for the distribution. IsIpv6Enabled interface{} // The date and time the distribution was last modified. LastModifiedTime interface{} // The logging // configuration that controls how logs are written // to your distribution (maximum one). LoggingConfig interface{} // An ordered list of cache behaviors // resource for this distribution. List from top to bottom // in order of precedence. The topmost cache behavior will have precedence 0. OrderedCacheBehaviors interface{} // One or more origins for this // distribution (multiples allowed). Origins interface{} // One or more originGroup for this // distribution (multiples allowed). OriginGroups interface{} // The price class for this distribution. One of // `PriceClass_All`, `PriceClass_200`, `PriceClass_100` PriceClass interface{} // The restriction // configuration for this distribution (maximum one). Restrictions interface{} // Disables the distribution instead of // deleting it when destroying the resource. If this is set, // the distribution needs to be deleted manually afterwards. Default: `false`. RetainOnDelete interface{} // The current status of the distribution. `Deployed` if the // distribution's information is fully propagated throughout the Amazon // CloudFront system. Status interface{} // A mapping of tags to assign to the resource. Tags interface{} // The SSL // configuration for this distribution (maximum // one). ViewerCertificate interface{} // If enabled, the resource will wait for // the distribution status to change from `InProgress` to `Deployed`. Setting // this to`false` will skip the process. Default: `true`. WaitForDeployment interface{} // If you're using AWS WAF to filter CloudFront // requests, the Id of the AWS WAF web ACL that is associated with the // distribution. The WAF Web ACL must exist in the WAF Global (CloudFront) // region and the credentials configuring this argument must have // `waf:GetWebACL` permissions assigned. WebAclId interface{} }
Input properties used for looking up and filtering Distribution resources.
type OriginAccessIdentity ¶
type OriginAccessIdentity struct {
// contains filtered or unexported fields
}
Creates an Amazon CloudFront origin access identity.
For information about CloudFront distributions, see the [Amazon CloudFront Developer Guide][1]. For more information on generating origin access identities, see [Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content][2].
> This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/cloudfront_origin_access_identity.html.markdown.
func GetOriginAccessIdentity ¶
func GetOriginAccessIdentity(ctx *pulumi.Context, name string, id pulumi.ID, state *OriginAccessIdentityState, opts ...pulumi.ResourceOpt) (*OriginAccessIdentity, error)
GetOriginAccessIdentity gets an existing OriginAccessIdentity resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewOriginAccessIdentity ¶
func NewOriginAccessIdentity(ctx *pulumi.Context, name string, args *OriginAccessIdentityArgs, opts ...pulumi.ResourceOpt) (*OriginAccessIdentity, error)
NewOriginAccessIdentity registers a new resource with the given unique name, arguments, and options.
func (*OriginAccessIdentity) CallerReference ¶
func (r *OriginAccessIdentity) CallerReference() *pulumi.StringOutput
Internal value used by CloudFront to allow future updates to the origin access identity.
func (*OriginAccessIdentity) CloudfrontAccessIdentityPath ¶
func (r *OriginAccessIdentity) CloudfrontAccessIdentityPath() *pulumi.StringOutput
A shortcut to the full path for the origin access identity to use in CloudFront, see below.
func (*OriginAccessIdentity) Comment ¶
func (r *OriginAccessIdentity) Comment() *pulumi.StringOutput
An optional comment for the origin access identity.
func (*OriginAccessIdentity) Etag ¶
func (r *OriginAccessIdentity) Etag() *pulumi.StringOutput
The current version of the origin access identity's information. For example: `E2QWRUHAPOMQZL`.
func (*OriginAccessIdentity) ID ¶
func (r *OriginAccessIdentity) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*OriginAccessIdentity) IamArn ¶
func (r *OriginAccessIdentity) IamArn() *pulumi.StringOutput
A pre-generated ARN for use in S3 bucket policies (see below). Example: `arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E2QWRUHAPOMQZL`.
func (*OriginAccessIdentity) S3CanonicalUserId ¶
func (r *OriginAccessIdentity) S3CanonicalUserId() *pulumi.StringOutput
The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.
func (*OriginAccessIdentity) URN ¶
func (r *OriginAccessIdentity) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type OriginAccessIdentityArgs ¶
type OriginAccessIdentityArgs struct {
// An optional comment for the origin access identity.
Comment interface{}
}
The set of arguments for constructing a OriginAccessIdentity resource.
type OriginAccessIdentityState ¶
type OriginAccessIdentityState struct { // Internal value used by CloudFront to allow future // updates to the origin access identity. CallerReference interface{} // A shortcut to the full path for the // origin access identity to use in CloudFront, see below. CloudfrontAccessIdentityPath interface{} // An optional comment for the origin access identity. Comment interface{} // The current version of the origin access identity's information. // For example: `E2QWRUHAPOMQZL`. Etag interface{} // A pre-generated ARN for use in S3 bucket policies (see below). // Example: `arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity // E2QWRUHAPOMQZL`. IamArn interface{} // The Amazon S3 canonical user ID for the origin // access identity, which you use when giving the origin access identity read // permission to an object in Amazon S3. S3CanonicalUserId interface{} }
Input properties used for looking up and filtering OriginAccessIdentity resources.
type PublicKey ¶ added in v0.16.0
type PublicKey struct {
// contains filtered or unexported fields
}
func GetPublicKey ¶ added in v0.16.0
func GetPublicKey(ctx *pulumi.Context, name string, id pulumi.ID, state *PublicKeyState, opts ...pulumi.ResourceOpt) (*PublicKey, error)
GetPublicKey gets an existing PublicKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewPublicKey ¶ added in v0.16.0
func NewPublicKey(ctx *pulumi.Context, name string, args *PublicKeyArgs, opts ...pulumi.ResourceOpt) (*PublicKey, error)
NewPublicKey registers a new resource with the given unique name, arguments, and options.
func (*PublicKey) CallerReference ¶ added in v0.16.0
func (r *PublicKey) CallerReference() *pulumi.StringOutput
Internal value used by CloudFront to allow future updates to the public key configuration.
func (*PublicKey) Comment ¶ added in v0.16.0
func (r *PublicKey) Comment() *pulumi.StringOutput
An optional comment about the public key.
func (*PublicKey) EncodedKey ¶ added in v0.16.0
func (r *PublicKey) EncodedKey() *pulumi.StringOutput
The encoded public key that you want to add to CloudFront to use with features like field-level encryption.
func (*PublicKey) Etag ¶ added in v0.16.0
func (r *PublicKey) Etag() *pulumi.StringOutput
The current version of the public key. For example: `E2QWRUHAPOMQZL`.
func (*PublicKey) ID ¶ added in v0.16.0
ID is this resource's unique identifier assigned by its provider.
func (*PublicKey) Name ¶ added in v0.16.0
func (r *PublicKey) Name() *pulumi.StringOutput
The name for the public key. By default generated by this provider.
func (*PublicKey) NamePrefix ¶ added in v0.16.0
func (r *PublicKey) NamePrefix() *pulumi.StringOutput
The name for the public key. Conflicts with `name`.
type PublicKeyArgs ¶ added in v0.16.0
type PublicKeyArgs struct { // An optional comment about the public key. Comment interface{} // The encoded public key that you want to add to CloudFront to use with features like field-level encryption. EncodedKey interface{} // The name for the public key. By default generated by this provider. Name interface{} // The name for the public key. Conflicts with `name`. NamePrefix interface{} }
The set of arguments for constructing a PublicKey resource.
type PublicKeyState ¶ added in v0.16.0
type PublicKeyState struct { // Internal value used by CloudFront to allow future updates to the public key configuration. CallerReference interface{} // An optional comment about the public key. Comment interface{} // The encoded public key that you want to add to CloudFront to use with features like field-level encryption. EncodedKey interface{} // The current version of the public key. For example: `E2QWRUHAPOMQZL`. Etag interface{} // The name for the public key. By default generated by this provider. Name interface{} // The name for the public key. Conflicts with `name`. NamePrefix interface{} }
Input properties used for looking up and filtering PublicKey resources.