v1alpha1

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 29, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=site.upbound.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "site.upbound.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	Site_Kind             = "Site"
	Site_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Site_Kind}.String()
	Site_KindAPIVersion   = Site_Kind + "." + CRDGroupVersion.String()
	Site_GroupVersionKind = CRDGroupVersion.WithKind(Site_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Site

type Site struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.domain) || (has(self.initProvider) && has(self.initProvider.domain))",message="spec.forProvider.domain is a required parameter"
	Spec   SiteSpec   `json:"spec"`
	Status SiteStatus `json:"status,omitempty"`
}

Site is the Schema for the Sites API. Provides a Incapsula Site resource. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,incapsula}

func (*Site) DeepCopy

func (in *Site) DeepCopy() *Site

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Site.

func (*Site) DeepCopyInto

func (in *Site) DeepCopyInto(out *Site)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Site) DeepCopyObject

func (in *Site) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Site) GetCondition

func (mg *Site) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Site.

func (*Site) GetConnectionDetailsMapping

func (tr *Site) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Site

func (*Site) GetDeletionPolicy

func (mg *Site) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Site.

func (*Site) GetID

func (tr *Site) GetID() string

GetID returns ID of underlying Terraform resource of this Site

func (*Site) GetInitParameters

func (tr *Site) GetInitParameters() (map[string]any, error)

GetInitParameters of this Site

func (*Site) GetManagementPolicies

func (mg *Site) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Site.

func (*Site) GetObservation

func (tr *Site) GetObservation() (map[string]any, error)

GetObservation of this Site

func (*Site) GetParameters

func (tr *Site) GetParameters() (map[string]any, error)

GetParameters of this Site

func (*Site) GetProviderConfigReference

func (mg *Site) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Site.

func (*Site) GetPublishConnectionDetailsTo

func (mg *Site) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Site.

func (*Site) GetTerraformResourceType

func (mg *Site) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Site

func (*Site) GetTerraformSchemaVersion

func (tr *Site) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Site) GetWriteConnectionSecretToReference

func (mg *Site) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Site.

func (*Site) LateInitialize

func (tr *Site) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Site using its observed tfState. returns True if there are any spec changes for the resource.

func (*Site) SetConditions

func (mg *Site) SetConditions(c ...xpv1.Condition)

SetConditions of this Site.

func (*Site) SetDeletionPolicy

func (mg *Site) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Site.

func (*Site) SetManagementPolicies

func (mg *Site) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Site.

func (*Site) SetObservation

func (tr *Site) SetObservation(obs map[string]any) error

SetObservation for this Site

func (*Site) SetParameters

func (tr *Site) SetParameters(params map[string]any) error

SetParameters for this Site

func (*Site) SetProviderConfigReference

func (mg *Site) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Site.

func (*Site) SetPublishConnectionDetailsTo

func (mg *Site) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Site.

func (*Site) SetWriteConnectionSecretToReference

func (mg *Site) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Site.

type SiteInitParameters

type SiteInitParameters struct {

	// Sets the acceleration level of the site. Options are none, standard, and aggressive.
	// none | standard | aggressive.
	AccelerationLevel *string `json:"accelerationLevel,omitempty" tf:"acceleration_level,omitempty"`

	// The account to operate on. If not specified, operation will be performed on the account identified by the authentication parameters.
	// Numeric identifier of the account to operate on. If not specified, operation will be performed on the account identified by the authentication parameters.
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// Whether the site is active or bypassed by the Imperva network. Options are active and bypass.
	// active or bypass.
	Active *string `json:"active,omitempty" tf:"active,omitempty"`

	// Sets the approver e-mail address that will be used to perform SSL domain validation.
	// my.approver@email.com (some approver email address).
	Approver *string `json:"approver,omitempty" tf:"approver,omitempty"`

	// The data region to use. Options are APAC, AU, EU, and US.
	// The data region to use. Options are `APAC`, `AU`, `EU`, and `US`.
	DataStorageRegion *string `json:"dataStorageRegion,omitempty" tf:"data_storage_region,omitempty"`

	// The fully qualified domain name of the site. For example: www.example.com, hello.example.com.
	// The fully qualified domain name of the site. For example: www.example.com, hello.example.com.
	Domain *string `json:"domain,omitempty" tf:"domain,omitempty"`

	// Sets the redirect naked to full flag. Pass "true" or empty string in the value parameter.
	// true or empty string.
	DomainRedirectToFull *string `json:"domainRedirectToFull,omitempty" tf:"domain_redirect_to_full,omitempty"`

	// Sets the domain validation method that will be used to generate an SSL certificate. Options are email, html, cname and dns.
	// email or html or dns or cname.
	DomainValidation *string `json:"domainValidation,omitempty" tf:"domain_validation,omitempty"`

	// Force SSL. This option is only available for sites with manually configured IP/CNAME and for specific accounts.
	// If this value is true, manually set the site to support SSL. This option is only available for sites with manually configured IP/CNAME and for specific accounts.
	ForceSSL *string `json:"forceSsl,omitempty" tf:"force_ssl,omitempty"`

	// Specify the hash salt (masking setting), required if hashing is enabled. Maximum length of 64 characters.
	// Specify the hash salt (masking setting), required if hashing is enabled. Maximum length of 64 characters.
	HashSalt *string `json:"hashSalt,omitempty" tf:"hash_salt,omitempty"`

	// Specify if hashing (masking setting) should be enabled.
	// Specify if hashing (masking setting) should be enabled.
	HashingEnabled *bool `json:"hashingEnabled,omitempty" tf:"hashing_enabled,omitempty"`

	// Sets the ignore SSL flag (if the site is in pending-select-approver state). Pass "true" or empty string in the value parameter.
	// true or empty string.
	IgnoreSSL *string `json:"ignoreSsl,omitempty" tf:"ignore_ssl,omitempty"`

	// The log level. Options are full, security, and none.
	// The log level. Options are `full`, `security`, and `none`.
	LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"`

	// Account where logs should be stored. Available only for Enterprise Plan customers that purchased the Logs Integration SKU. Numeric identifier of the account that purchased the logs integration SKU and which collects the logs. If not specified, operation will be performed on the account identified by the authentication parameters.
	// Available only for Enterprise Plan customers that purchased the Logs Integration SKU. Numeric identifier of the account that purchased the logs integration SKU and which collects the logs. If not specified, operation will be performed on the account identified by the authentication parameters.
	LogsAccountID *string `json:"logsAccountId,omitempty" tf:"logs_account_id,omitempty"`

	// Use true to add the naked domain SAN to a www site’s SSL certificate. Default value: true
	// Use 'true' to add the naked domain SAN to a www site’s SSL certificate. Default value: true
	NakedDomainSan *bool `json:"nakedDomainSan,omitempty" tf:"naked_domain_san,omitempty"`

	// Comply with No-Cache and Max-Age directives in client requests. By default, these cache directives are ignored. Resources are dynamically profiled and re-configured to optimize performance.
	// Comply with No-Cache and Max-Age directives in client requests. By default, these cache directives are ignored. Resources are dynamically profiled and re-configured to optimize performance.
	PerfClientComplyNoCache *bool `json:"perfClientComplyNoCache,omitempty" tf:"perf_client_comply_no_cache,omitempty"`

	// Cache content on client browsers or applications. When not enabled, content is cached only on the Imperva proxies.
	// Cache content on client browsers or applications. When not enabled, content is cached only on the Imperva proxies.
	PerfClientEnableClientSideCaching *bool `json:"perfClientEnableClientSideCaching,omitempty" tf:"perf_client_enable_client_side_caching,omitempty"`

	// Send Cache-Control: max-age and Age headers.
	// Send Cache-Control: max-age and Age headers.
	PerfClientSendAgeHeader *bool `json:"perfClientSendAgeHeader,omitempty" tf:"perf_client_send_age_header,omitempty"`

	// Comply with Vary. Cache resources in accordance with the Vary response header.
	// Comply with Vary. Cache resources in accordance with the Vary response header.
	PerfKeyComplyVary *bool `json:"perfKeyComplyVary,omitempty" tf:"perf_key_comply_vary,omitempty"`

	// Use the Same Cache for Full and Naked Domains. For example, use the same cached resource for www.example.com/a and example.com/a.
	// Use the Same Cache for Full and Naked Domains. For example, use the same cached resource for www.example.com/a and example.com/a.
	PerfKeyUniteNakedFullCache *bool `json:"perfKeyUniteNakedFullCache,omitempty" tf:"perf_key_unite_naked_full_cache,omitempty"`

	// The resources that are cached over HTTPS, the general level applies. Options are disabled, dont_include_html, include_html, and include_all_resources.
	// The resources that are cached over HTTPS, the general level applies. Options are `disabled`, `dont_include_html`, `include_html`, and `include_all_resources`.
	PerfModeHTTPS *string `json:"perfModeHttps,omitempty" tf:"perf_mode_https,omitempty"`

	// Caching level. Options are disabled, custom_cache_rules_only, standard, smart, and all_resources.
	// Caching level. Options are `disable`, `standard`, `smart`, and `all_resources`.
	PerfModeLevel *string `json:"perfModeLevel,omitempty" tf:"perf_mode_level,omitempty"`

	// The time, in seconds, that you set for this option determines how often the cache is refreshed. Relevant for the include_html and include_all_resources levels only.
	// The time, in seconds, that you set for this option determines how often the cache is refreshed. Relevant for the `include_html` and `include_all_resources` levels only.
	PerfModeTime *float64 `json:"perfModeTime,omitempty" tf:"perf_mode_time,omitempty"`

	// When this option is checked Imperva will cache 301, 302, 303, 307, and 308 redirect response headers containing the target URI.
	// When this option is checked Imperva will cache 301, 302, 303, 307, and 308 redirect response headers containing the target URI.
	PerfResponseCache300X *bool `json:"perfResponseCache300X,omitempty" tf:"perf_response_cache_300x,omitempty"`

	// Whether or not to cache 404 responses.
	// Whether or not to cache 404 responses.
	PerfResponseCache404Enabled *bool `json:"perfResponseCache404Enabled,omitempty" tf:"perf_response_cache_404_enabled,omitempty"`

	// The time in seconds to cache 404 responses. Value should be divisible by
	// 60.
	// The time in seconds to cache 404 responses.
	PerfResponseCache404Time *float64 `json:"perfResponseCache404Time,omitempty" tf:"perf_response_cache_404_time,omitempty"`

	// Cache responses that don’t have a message body.
	// Cache responses that don’t have a message body.
	PerfResponseCacheEmptyResponses *bool `json:"perfResponseCacheEmptyResponses,omitempty" tf:"perf_response_cache_empty_responses,omitempty"`

	// Cache HTTP 1.0 type responses that don’t include the Content-Length header or chunking.
	// Cache HTTP 1.0 type responses that don’t include the Content-Length header or chunking.
	PerfResponseCacheHTTP10Responses *bool `json:"perfResponseCacheHttp10Responses,omitempty" tf:"perf_response_cache_http_10_responses,omitempty"`

	// The working mode for caching response headers. Options are all and custom.
	// The working mode for caching response headers. Options are `all` and `custom`.
	PerfResponseCacheResponseHeaderMode *string `json:"perfResponseCacheResponseHeaderMode,omitempty" tf:"perf_response_cache_response_header_mode,omitempty"`

	// An array of strings representing the response headers to be cached when working in custom mode. If empty, no response headers are cached.
	// For example: ["Access-Control-Allow-Origin","Access-Control-Allow-Methods"].
	// An array of strings representing the response headers to be cached when working in `custom` mode. If empty, no response headers are cached.
	PerfResponseCacheResponseHeaders []*string `json:"perfResponseCacheResponseHeaders,omitempty" tf:"perf_response_cache_response_headers,omitempty"`

	// Adds an intermediate cache between other Imperva PoPs and your origin servers to protect your servers from redundant requests.
	// Adds an intermediate cache between other Imperva PoPs and your origin servers to protect your servers from redundant requests.
	PerfResponseCacheShield *bool `json:"perfResponseCacheShield,omitempty" tf:"perf_response_cache_shield,omitempty"`

	// The working mode for serving stale content. Options are disabled, adaptive, and custom.
	// The working mode for serving stale content. Options are `disabled`, `adaptive`, and `custom`.
	PerfResponseStaleContentMode *string `json:"perfResponseStaleContentMode,omitempty" tf:"perf_response_stale_content_mode,omitempty"`

	// The time, in seconds, to serve stale content for when working in custom work mode.
	// The time, in seconds, to serve stale content for when working in `custom` work mode.
	PerfResponseStaleContentTime *float64 `json:"perfResponseStaleContentTime,omitempty" tf:"perf_response_stale_content_time,omitempty"`

	// Tag the response according to the value of this header. Specify which origin response header contains the cache tags in your resources.
	// Tag the response according to the value of this header. Specify which origin response header contains the cache tags in your resources.
	PerfResponseTagResponseHeader *string `json:"perfResponseTagResponseHeader,omitempty" tf:"perf_response_tag_response_header,omitempty"`

	// Prefer 'Last Modified' over eTag. When this option is checked, Imperva prefers using Last Modified values (if available) over eTag values (recommended on multi-server setups).
	// Prefer 'Last Modified' over eTag. When this option is checked, Imperva prefers using Last Modified values (if available) over eTag values (recommended on multi-server setups).
	PerfTTLPreferLastModified *bool `json:"perfTtlPreferLastModified,omitempty" tf:"perf_ttl_prefer_last_modified,omitempty"`

	// Use shortest caching duration in case of conflicts. By default, the longest duration is used in case of conflict between caching rules or modes. When this option is checked, Imperva uses the shortest duration in case of conflict.
	// Use shortest caching duration in case of conflicts. By default, the longest duration is used in case of conflict between caching rules or modes. When this option is checked, Imperva uses the shortest duration in case of conflict.
	PerfTTLUseShortestCaching *bool `json:"perfTtlUseShortestCaching,omitempty" tf:"perf_ttl_use_shortest_caching,omitempty"`

	// Unique identifier in the API for the site.
	// Customer specific identifier for this operation.
	RefID *string `json:"refId,omitempty" tf:"ref_id,omitempty"`

	// Sets the remove SSL from site flag. Pass "true" or empty string in the value parameter.
	// true or empty string.
	RemoveSSL *string `json:"removeSsl,omitempty" tf:"remove_ssl,omitempty"`

	// parameter is currently not supported. Please do not use/change value.
	// Use this option to allow Imperva to detect and add domains that are using the Imperva-provided CNAME (not recommended). One of: true | false
	RestrictedCnameReuse *string `json:"restrictedCnameReuse,omitempty" tf:"restricted_cname_reuse,omitempty"`

	// Sets the seal location. Options are api.seal_location.none, api.seal_location.bottom_left, api.seal_location.right_bottom, api.seal_location.left, and api.seal_location.right.
	// api.seal_location.bottom_left | api.seal_location.none | api.seal_location.right_bottom | api.seal_location.right | api.seal_location.left | api.seal_location.bottom_right | api.seal_location.bottom.
	SealLocation *string `json:"sealLocation,omitempty" tf:"seal_location,omitempty"`

	// If this value is false, end users will not get emails about the add site process such as DNS instructions and SSL setup.
	// If this value is false, end users will not get emails about the add site process such as DNS instructions and SSL setup.
	SendSiteSetupEmails *string `json:"sendSiteSetupEmails,omitempty" tf:"send_site_setup_emails,omitempty"`

	// The web server IP/CNAME. This field should be specified when creating a site and the domain does not yet exist or the domain already points to Imperva Cloud. When specified, its value will be used for adding site only. After site is already created this field will be ignored. To modify site ip, please use resource incapsula_data_centers_configuration instead.
	// Manually set the web server IP/CNAME.
	SiteIP *string `json:"siteIp,omitempty" tf:"site_ip,omitempty"`

	// Use true to add the wildcard SAN or false to add the full domain SAN to the site’s SSL certificate. Default value: true
	// Use 'true' to add the wildcard SAN or 'false' to add the full domain SAN to the site’s SSL certificate. Default value: true
	WildcardSan *bool `json:"wildcardSan,omitempty" tf:"wildcard_san,omitempty"`
}

func (*SiteInitParameters) DeepCopy

func (in *SiteInitParameters) DeepCopy() *SiteInitParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteInitParameters.

func (*SiteInitParameters) DeepCopyInto

func (in *SiteInitParameters) DeepCopyInto(out *SiteInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SiteList

type SiteList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Site `json:"items"`
}

SiteList contains a list of Sites

func (*SiteList) DeepCopy

func (in *SiteList) DeepCopy() *SiteList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteList.

func (*SiteList) DeepCopyInto

func (in *SiteList) DeepCopyInto(out *SiteList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SiteList) DeepCopyObject

func (in *SiteList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SiteList) GetItems

func (l *SiteList) GetItems() []resource.Managed

GetItems of this SiteList.

type SiteObservation

type SiteObservation struct {

	// Sets the acceleration level of the site. Options are none, standard, and aggressive.
	// none | standard | aggressive.
	AccelerationLevel *string `json:"accelerationLevel,omitempty" tf:"acceleration_level,omitempty"`

	// The account to operate on. If not specified, operation will be performed on the account identified by the authentication parameters.
	// Numeric identifier of the account to operate on. If not specified, operation will be performed on the account identified by the authentication parameters.
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// Whether the site is active or bypassed by the Imperva network. Options are active and bypass.
	// active or bypass.
	Active *string `json:"active,omitempty" tf:"active,omitempty"`

	// Sets the approver e-mail address that will be used to perform SSL domain validation.
	// my.approver@email.com (some approver email address).
	Approver *string `json:"approver,omitempty" tf:"approver,omitempty"`

	// The A record name.
	// A record name.
	DNSARecordName *string `json:"dnsARecordName,omitempty" tf:"dns_a_record_name,omitempty"`

	// The A record value.
	// A record value.
	DNSARecordValue []*string `json:"dnsARecordValue,omitempty" tf:"dns_a_record_value,omitempty"`

	// The CNAME record name.
	// CNAME record name.
	DNSCnameRecordName *string `json:"dnsCnameRecordName,omitempty" tf:"dns_cname_record_name,omitempty"`

	// The CNAME record value.
	// CNAME record value.
	DNSCnameRecordValue *string `json:"dnsCnameRecordValue,omitempty" tf:"dns_cname_record_value,omitempty"`

	// the DNS Record type TXT that should be created and set to the domain_verification output value.
	// The DNS Record type TXT that should be created and set to the `domain_verification` output value.
	DNSRecordName *string `json:"dnsRecordName,omitempty" tf:"dns_record_name,omitempty"`

	// The data region to use. Options are APAC, AU, EU, and US.
	// The data region to use. Options are `APAC`, `AU`, `EU`, and `US`.
	DataStorageRegion *string `json:"dataStorageRegion,omitempty" tf:"data_storage_region,omitempty"`

	// The fully qualified domain name of the site. For example: www.example.com, hello.example.com.
	// The fully qualified domain name of the site. For example: www.example.com, hello.example.com.
	Domain *string `json:"domain,omitempty" tf:"domain,omitempty"`

	// Sets the redirect naked to full flag. Pass "true" or empty string in the value parameter.
	// true or empty string.
	DomainRedirectToFull *string `json:"domainRedirectToFull,omitempty" tf:"domain_redirect_to_full,omitempty"`

	// Sets the domain validation method that will be used to generate an SSL certificate. Options are email, html, cname and dns.
	// email or html or dns or cname.
	DomainValidation *string `json:"domainValidation,omitempty" tf:"domain_validation,omitempty"`

	// The domain verification (e.g. GlobalSign verification, HTML meta tag).
	// Domain verification (e.g. GlobalSign verification).
	DomainVerification *string `json:"domainVerification,omitempty" tf:"domain_verification,omitempty"`

	// Force SSL. This option is only available for sites with manually configured IP/CNAME and for specific accounts.
	// If this value is true, manually set the site to support SSL. This option is only available for sites with manually configured IP/CNAME and for specific accounts.
	ForceSSL *string `json:"forceSsl,omitempty" tf:"force_ssl,omitempty"`

	// Specify the hash salt (masking setting), required if hashing is enabled. Maximum length of 64 characters.
	// Specify the hash salt (masking setting), required if hashing is enabled. Maximum length of 64 characters.
	HashSalt *string `json:"hashSalt,omitempty" tf:"hash_salt,omitempty"`

	// Specify if hashing (masking setting) should be enabled.
	// Specify if hashing (masking setting) should be enabled.
	HashingEnabled *bool `json:"hashingEnabled,omitempty" tf:"hashing_enabled,omitempty"`

	// Unique identifier in the API for the site.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Sets the ignore SSL flag (if the site is in pending-select-approver state). Pass "true" or empty string in the value parameter.
	// true or empty string.
	IgnoreSSL *string `json:"ignoreSsl,omitempty" tf:"ignore_ssl,omitempty"`

	// The log level. Options are full, security, and none.
	// The log level. Options are `full`, `security`, and `none`.
	LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"`

	// Account where logs should be stored. Available only for Enterprise Plan customers that purchased the Logs Integration SKU. Numeric identifier of the account that purchased the logs integration SKU and which collects the logs. If not specified, operation will be performed on the account identified by the authentication parameters.
	// Available only for Enterprise Plan customers that purchased the Logs Integration SKU. Numeric identifier of the account that purchased the logs integration SKU and which collects the logs. If not specified, operation will be performed on the account identified by the authentication parameters.
	LogsAccountID *string `json:"logsAccountId,omitempty" tf:"logs_account_id,omitempty"`

	// Use true to add the naked domain SAN to a www site’s SSL certificate. Default value: true
	// Use 'true' to add the naked domain SAN to a www site’s SSL certificate. Default value: true
	NakedDomainSan *bool `json:"nakedDomainSan,omitempty" tf:"naked_domain_san,omitempty"`

	// Numeric representation of the data center created with the site. This parameter is
	// deprecated. Please, use data_source_data_center instead.
	// Numeric representation of the data center created with the site.
	OriginalDataCenterID *float64 `json:"originalDataCenterId,omitempty" tf:"original_data_center_id,omitempty"`

	// Comply with No-Cache and Max-Age directives in client requests. By default, these cache directives are ignored. Resources are dynamically profiled and re-configured to optimize performance.
	// Comply with No-Cache and Max-Age directives in client requests. By default, these cache directives are ignored. Resources are dynamically profiled and re-configured to optimize performance.
	PerfClientComplyNoCache *bool `json:"perfClientComplyNoCache,omitempty" tf:"perf_client_comply_no_cache,omitempty"`

	// Cache content on client browsers or applications. When not enabled, content is cached only on the Imperva proxies.
	// Cache content on client browsers or applications. When not enabled, content is cached only on the Imperva proxies.
	PerfClientEnableClientSideCaching *bool `json:"perfClientEnableClientSideCaching,omitempty" tf:"perf_client_enable_client_side_caching,omitempty"`

	// Send Cache-Control: max-age and Age headers.
	// Send Cache-Control: max-age and Age headers.
	PerfClientSendAgeHeader *bool `json:"perfClientSendAgeHeader,omitempty" tf:"perf_client_send_age_header,omitempty"`

	// Comply with Vary. Cache resources in accordance with the Vary response header.
	// Comply with Vary. Cache resources in accordance with the Vary response header.
	PerfKeyComplyVary *bool `json:"perfKeyComplyVary,omitempty" tf:"perf_key_comply_vary,omitempty"`

	// Use the Same Cache for Full and Naked Domains. For example, use the same cached resource for www.example.com/a and example.com/a.
	// Use the Same Cache for Full and Naked Domains. For example, use the same cached resource for www.example.com/a and example.com/a.
	PerfKeyUniteNakedFullCache *bool `json:"perfKeyUniteNakedFullCache,omitempty" tf:"perf_key_unite_naked_full_cache,omitempty"`

	// The resources that are cached over HTTPS, the general level applies. Options are disabled, dont_include_html, include_html, and include_all_resources.
	// The resources that are cached over HTTPS, the general level applies. Options are `disabled`, `dont_include_html`, `include_html`, and `include_all_resources`.
	PerfModeHTTPS *string `json:"perfModeHttps,omitempty" tf:"perf_mode_https,omitempty"`

	// Caching level. Options are disabled, custom_cache_rules_only, standard, smart, and all_resources.
	// Caching level. Options are `disable`, `standard`, `smart`, and `all_resources`.
	PerfModeLevel *string `json:"perfModeLevel,omitempty" tf:"perf_mode_level,omitempty"`

	// The time, in seconds, that you set for this option determines how often the cache is refreshed. Relevant for the include_html and include_all_resources levels only.
	// The time, in seconds, that you set for this option determines how often the cache is refreshed. Relevant for the `include_html` and `include_all_resources` levels only.
	PerfModeTime *float64 `json:"perfModeTime,omitempty" tf:"perf_mode_time,omitempty"`

	// When this option is checked Imperva will cache 301, 302, 303, 307, and 308 redirect response headers containing the target URI.
	// When this option is checked Imperva will cache 301, 302, 303, 307, and 308 redirect response headers containing the target URI.
	PerfResponseCache300X *bool `json:"perfResponseCache300X,omitempty" tf:"perf_response_cache_300x,omitempty"`

	// Whether or not to cache 404 responses.
	// Whether or not to cache 404 responses.
	PerfResponseCache404Enabled *bool `json:"perfResponseCache404Enabled,omitempty" tf:"perf_response_cache_404_enabled,omitempty"`

	// The time in seconds to cache 404 responses. Value should be divisible by
	// 60.
	// The time in seconds to cache 404 responses.
	PerfResponseCache404Time *float64 `json:"perfResponseCache404Time,omitempty" tf:"perf_response_cache_404_time,omitempty"`

	// Cache responses that don’t have a message body.
	// Cache responses that don’t have a message body.
	PerfResponseCacheEmptyResponses *bool `json:"perfResponseCacheEmptyResponses,omitempty" tf:"perf_response_cache_empty_responses,omitempty"`

	// Cache HTTP 1.0 type responses that don’t include the Content-Length header or chunking.
	// Cache HTTP 1.0 type responses that don’t include the Content-Length header or chunking.
	PerfResponseCacheHTTP10Responses *bool `json:"perfResponseCacheHttp10Responses,omitempty" tf:"perf_response_cache_http_10_responses,omitempty"`

	// The working mode for caching response headers. Options are all and custom.
	// The working mode for caching response headers. Options are `all` and `custom`.
	PerfResponseCacheResponseHeaderMode *string `json:"perfResponseCacheResponseHeaderMode,omitempty" tf:"perf_response_cache_response_header_mode,omitempty"`

	// An array of strings representing the response headers to be cached when working in custom mode. If empty, no response headers are cached.
	// For example: ["Access-Control-Allow-Origin","Access-Control-Allow-Methods"].
	// An array of strings representing the response headers to be cached when working in `custom` mode. If empty, no response headers are cached.
	PerfResponseCacheResponseHeaders []*string `json:"perfResponseCacheResponseHeaders,omitempty" tf:"perf_response_cache_response_headers,omitempty"`

	// Adds an intermediate cache between other Imperva PoPs and your origin servers to protect your servers from redundant requests.
	// Adds an intermediate cache between other Imperva PoPs and your origin servers to protect your servers from redundant requests.
	PerfResponseCacheShield *bool `json:"perfResponseCacheShield,omitempty" tf:"perf_response_cache_shield,omitempty"`

	// The working mode for serving stale content. Options are disabled, adaptive, and custom.
	// The working mode for serving stale content. Options are `disabled`, `adaptive`, and `custom`.
	PerfResponseStaleContentMode *string `json:"perfResponseStaleContentMode,omitempty" tf:"perf_response_stale_content_mode,omitempty"`

	// The time, in seconds, to serve stale content for when working in custom work mode.
	// The time, in seconds, to serve stale content for when working in `custom` work mode.
	PerfResponseStaleContentTime *float64 `json:"perfResponseStaleContentTime,omitempty" tf:"perf_response_stale_content_time,omitempty"`

	// Tag the response according to the value of this header. Specify which origin response header contains the cache tags in your resources.
	// Tag the response according to the value of this header. Specify which origin response header contains the cache tags in your resources.
	PerfResponseTagResponseHeader *string `json:"perfResponseTagResponseHeader,omitempty" tf:"perf_response_tag_response_header,omitempty"`

	// Prefer 'Last Modified' over eTag. When this option is checked, Imperva prefers using Last Modified values (if available) over eTag values (recommended on multi-server setups).
	// Prefer 'Last Modified' over eTag. When this option is checked, Imperva prefers using Last Modified values (if available) over eTag values (recommended on multi-server setups).
	PerfTTLPreferLastModified *bool `json:"perfTtlPreferLastModified,omitempty" tf:"perf_ttl_prefer_last_modified,omitempty"`

	// Use shortest caching duration in case of conflicts. By default, the longest duration is used in case of conflict between caching rules or modes. When this option is checked, Imperva uses the shortest duration in case of conflict.
	// Use shortest caching duration in case of conflicts. By default, the longest duration is used in case of conflict between caching rules or modes. When this option is checked, Imperva uses the shortest duration in case of conflict.
	PerfTTLUseShortestCaching *bool `json:"perfTtlUseShortestCaching,omitempty" tf:"perf_ttl_use_shortest_caching,omitempty"`

	// Unique identifier in the API for the site.
	// Customer specific identifier for this operation.
	RefID *string `json:"refId,omitempty" tf:"ref_id,omitempty"`

	// Sets the remove SSL from site flag. Pass "true" or empty string in the value parameter.
	// true or empty string.
	RemoveSSL *string `json:"removeSsl,omitempty" tf:"remove_ssl,omitempty"`

	// parameter is currently not supported. Please do not use/change value.
	// Use this option to allow Imperva to detect and add domains that are using the Imperva-provided CNAME (not recommended). One of: true | false
	RestrictedCnameReuse *string `json:"restrictedCnameReuse,omitempty" tf:"restricted_cname_reuse,omitempty"`

	// Sets the seal location. Options are api.seal_location.none, api.seal_location.bottom_left, api.seal_location.right_bottom, api.seal_location.left, and api.seal_location.right.
	// api.seal_location.bottom_left | api.seal_location.none | api.seal_location.right_bottom | api.seal_location.right | api.seal_location.left | api.seal_location.bottom_right | api.seal_location.bottom.
	SealLocation *string `json:"sealLocation,omitempty" tf:"seal_location,omitempty"`

	// If this value is false, end users will not get emails about the add site process such as DNS instructions and SSL setup.
	// If this value is false, end users will not get emails about the add site process such as DNS instructions and SSL setup.
	SendSiteSetupEmails *string `json:"sendSiteSetupEmails,omitempty" tf:"send_site_setup_emails,omitempty"`

	// Numeric representation of the site creation date.
	// Numeric representation of the site creation date.
	SiteCreationDate *float64 `json:"siteCreationDate,omitempty" tf:"site_creation_date,omitempty"`

	// The web server IP/CNAME. This field should be specified when creating a site and the domain does not yet exist or the domain already points to Imperva Cloud. When specified, its value will be used for adding site only. After site is already created this field will be ignored. To modify site ip, please use resource incapsula_data_centers_configuration instead.
	// Manually set the web server IP/CNAME.
	SiteIP *string `json:"siteIp,omitempty" tf:"site_ip,omitempty"`

	// Use true to add the wildcard SAN or false to add the full domain SAN to the site’s SSL certificate. Default value: true
	// Use 'true' to add the wildcard SAN or 'false' to add the full domain SAN to the site’s SSL certificate. Default value: true
	WildcardSan *bool `json:"wildcardSan,omitempty" tf:"wildcard_san,omitempty"`
}

func (*SiteObservation) DeepCopy

func (in *SiteObservation) DeepCopy() *SiteObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteObservation.

func (*SiteObservation) DeepCopyInto

func (in *SiteObservation) DeepCopyInto(out *SiteObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SiteParameters

type SiteParameters struct {

	// Sets the acceleration level of the site. Options are none, standard, and aggressive.
	// none | standard | aggressive.
	// +kubebuilder:validation:Optional
	AccelerationLevel *string `json:"accelerationLevel,omitempty" tf:"acceleration_level,omitempty"`

	// The account to operate on. If not specified, operation will be performed on the account identified by the authentication parameters.
	// Numeric identifier of the account to operate on. If not specified, operation will be performed on the account identified by the authentication parameters.
	// +kubebuilder:validation:Optional
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// Whether the site is active or bypassed by the Imperva network. Options are active and bypass.
	// active or bypass.
	// +kubebuilder:validation:Optional
	Active *string `json:"active,omitempty" tf:"active,omitempty"`

	// Sets the approver e-mail address that will be used to perform SSL domain validation.
	// my.approver@email.com (some approver email address).
	// +kubebuilder:validation:Optional
	Approver *string `json:"approver,omitempty" tf:"approver,omitempty"`

	// The data region to use. Options are APAC, AU, EU, and US.
	// The data region to use. Options are `APAC`, `AU`, `EU`, and `US`.
	// +kubebuilder:validation:Optional
	DataStorageRegion *string `json:"dataStorageRegion,omitempty" tf:"data_storage_region,omitempty"`

	// The fully qualified domain name of the site. For example: www.example.com, hello.example.com.
	// The fully qualified domain name of the site. For example: www.example.com, hello.example.com.
	// +kubebuilder:validation:Optional
	Domain *string `json:"domain,omitempty" tf:"domain,omitempty"`

	// Sets the redirect naked to full flag. Pass "true" or empty string in the value parameter.
	// true or empty string.
	// +kubebuilder:validation:Optional
	DomainRedirectToFull *string `json:"domainRedirectToFull,omitempty" tf:"domain_redirect_to_full,omitempty"`

	// Sets the domain validation method that will be used to generate an SSL certificate. Options are email, html, cname and dns.
	// email or html or dns or cname.
	// +kubebuilder:validation:Optional
	DomainValidation *string `json:"domainValidation,omitempty" tf:"domain_validation,omitempty"`

	// Force SSL. This option is only available for sites with manually configured IP/CNAME and for specific accounts.
	// If this value is true, manually set the site to support SSL. This option is only available for sites with manually configured IP/CNAME and for specific accounts.
	// +kubebuilder:validation:Optional
	ForceSSL *string `json:"forceSsl,omitempty" tf:"force_ssl,omitempty"`

	// Specify the hash salt (masking setting), required if hashing is enabled. Maximum length of 64 characters.
	// Specify the hash salt (masking setting), required if hashing is enabled. Maximum length of 64 characters.
	// +kubebuilder:validation:Optional
	HashSalt *string `json:"hashSalt,omitempty" tf:"hash_salt,omitempty"`

	// Specify if hashing (masking setting) should be enabled.
	// Specify if hashing (masking setting) should be enabled.
	// +kubebuilder:validation:Optional
	HashingEnabled *bool `json:"hashingEnabled,omitempty" tf:"hashing_enabled,omitempty"`

	// Sets the ignore SSL flag (if the site is in pending-select-approver state). Pass "true" or empty string in the value parameter.
	// true or empty string.
	// +kubebuilder:validation:Optional
	IgnoreSSL *string `json:"ignoreSsl,omitempty" tf:"ignore_ssl,omitempty"`

	// The log level. Options are full, security, and none.
	// The log level. Options are `full`, `security`, and `none`.
	// +kubebuilder:validation:Optional
	LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"`

	// Account where logs should be stored. Available only for Enterprise Plan customers that purchased the Logs Integration SKU. Numeric identifier of the account that purchased the logs integration SKU and which collects the logs. If not specified, operation will be performed on the account identified by the authentication parameters.
	// Available only for Enterprise Plan customers that purchased the Logs Integration SKU. Numeric identifier of the account that purchased the logs integration SKU and which collects the logs. If not specified, operation will be performed on the account identified by the authentication parameters.
	// +kubebuilder:validation:Optional
	LogsAccountID *string `json:"logsAccountId,omitempty" tf:"logs_account_id,omitempty"`

	// Use true to add the naked domain SAN to a www site’s SSL certificate. Default value: true
	// Use 'true' to add the naked domain SAN to a www site’s SSL certificate. Default value: true
	// +kubebuilder:validation:Optional
	NakedDomainSan *bool `json:"nakedDomainSan,omitempty" tf:"naked_domain_san,omitempty"`

	// Comply with No-Cache and Max-Age directives in client requests. By default, these cache directives are ignored. Resources are dynamically profiled and re-configured to optimize performance.
	// Comply with No-Cache and Max-Age directives in client requests. By default, these cache directives are ignored. Resources are dynamically profiled and re-configured to optimize performance.
	// +kubebuilder:validation:Optional
	PerfClientComplyNoCache *bool `json:"perfClientComplyNoCache,omitempty" tf:"perf_client_comply_no_cache,omitempty"`

	// Cache content on client browsers or applications. When not enabled, content is cached only on the Imperva proxies.
	// Cache content on client browsers or applications. When not enabled, content is cached only on the Imperva proxies.
	// +kubebuilder:validation:Optional
	PerfClientEnableClientSideCaching *bool `json:"perfClientEnableClientSideCaching,omitempty" tf:"perf_client_enable_client_side_caching,omitempty"`

	// Send Cache-Control: max-age and Age headers.
	// Send Cache-Control: max-age and Age headers.
	// +kubebuilder:validation:Optional
	PerfClientSendAgeHeader *bool `json:"perfClientSendAgeHeader,omitempty" tf:"perf_client_send_age_header,omitempty"`

	// Comply with Vary. Cache resources in accordance with the Vary response header.
	// Comply with Vary. Cache resources in accordance with the Vary response header.
	// +kubebuilder:validation:Optional
	PerfKeyComplyVary *bool `json:"perfKeyComplyVary,omitempty" tf:"perf_key_comply_vary,omitempty"`

	// Use the Same Cache for Full and Naked Domains. For example, use the same cached resource for www.example.com/a and example.com/a.
	// Use the Same Cache for Full and Naked Domains. For example, use the same cached resource for www.example.com/a and example.com/a.
	// +kubebuilder:validation:Optional
	PerfKeyUniteNakedFullCache *bool `json:"perfKeyUniteNakedFullCache,omitempty" tf:"perf_key_unite_naked_full_cache,omitempty"`

	// The resources that are cached over HTTPS, the general level applies. Options are disabled, dont_include_html, include_html, and include_all_resources.
	// The resources that are cached over HTTPS, the general level applies. Options are `disabled`, `dont_include_html`, `include_html`, and `include_all_resources`.
	// +kubebuilder:validation:Optional
	PerfModeHTTPS *string `json:"perfModeHttps,omitempty" tf:"perf_mode_https,omitempty"`

	// Caching level. Options are disabled, custom_cache_rules_only, standard, smart, and all_resources.
	// Caching level. Options are `disable`, `standard`, `smart`, and `all_resources`.
	// +kubebuilder:validation:Optional
	PerfModeLevel *string `json:"perfModeLevel,omitempty" tf:"perf_mode_level,omitempty"`

	// The time, in seconds, that you set for this option determines how often the cache is refreshed. Relevant for the include_html and include_all_resources levels only.
	// The time, in seconds, that you set for this option determines how often the cache is refreshed. Relevant for the `include_html` and `include_all_resources` levels only.
	// +kubebuilder:validation:Optional
	PerfModeTime *float64 `json:"perfModeTime,omitempty" tf:"perf_mode_time,omitempty"`

	// When this option is checked Imperva will cache 301, 302, 303, 307, and 308 redirect response headers containing the target URI.
	// When this option is checked Imperva will cache 301, 302, 303, 307, and 308 redirect response headers containing the target URI.
	// +kubebuilder:validation:Optional
	PerfResponseCache300X *bool `json:"perfResponseCache300X,omitempty" tf:"perf_response_cache_300x,omitempty"`

	// Whether or not to cache 404 responses.
	// Whether or not to cache 404 responses.
	// +kubebuilder:validation:Optional
	PerfResponseCache404Enabled *bool `json:"perfResponseCache404Enabled,omitempty" tf:"perf_response_cache_404_enabled,omitempty"`

	// The time in seconds to cache 404 responses. Value should be divisible by
	// 60.
	// The time in seconds to cache 404 responses.
	// +kubebuilder:validation:Optional
	PerfResponseCache404Time *float64 `json:"perfResponseCache404Time,omitempty" tf:"perf_response_cache_404_time,omitempty"`

	// Cache responses that don’t have a message body.
	// Cache responses that don’t have a message body.
	// +kubebuilder:validation:Optional
	PerfResponseCacheEmptyResponses *bool `json:"perfResponseCacheEmptyResponses,omitempty" tf:"perf_response_cache_empty_responses,omitempty"`

	// Cache HTTP 1.0 type responses that don’t include the Content-Length header or chunking.
	// Cache HTTP 1.0 type responses that don’t include the Content-Length header or chunking.
	// +kubebuilder:validation:Optional
	PerfResponseCacheHTTP10Responses *bool `json:"perfResponseCacheHttp10Responses,omitempty" tf:"perf_response_cache_http_10_responses,omitempty"`

	// The working mode for caching response headers. Options are all and custom.
	// The working mode for caching response headers. Options are `all` and `custom`.
	// +kubebuilder:validation:Optional
	PerfResponseCacheResponseHeaderMode *string `json:"perfResponseCacheResponseHeaderMode,omitempty" tf:"perf_response_cache_response_header_mode,omitempty"`

	// An array of strings representing the response headers to be cached when working in custom mode. If empty, no response headers are cached.
	// For example: ["Access-Control-Allow-Origin","Access-Control-Allow-Methods"].
	// An array of strings representing the response headers to be cached when working in `custom` mode. If empty, no response headers are cached.
	// +kubebuilder:validation:Optional
	PerfResponseCacheResponseHeaders []*string `json:"perfResponseCacheResponseHeaders,omitempty" tf:"perf_response_cache_response_headers,omitempty"`

	// Adds an intermediate cache between other Imperva PoPs and your origin servers to protect your servers from redundant requests.
	// Adds an intermediate cache between other Imperva PoPs and your origin servers to protect your servers from redundant requests.
	// +kubebuilder:validation:Optional
	PerfResponseCacheShield *bool `json:"perfResponseCacheShield,omitempty" tf:"perf_response_cache_shield,omitempty"`

	// The working mode for serving stale content. Options are disabled, adaptive, and custom.
	// The working mode for serving stale content. Options are `disabled`, `adaptive`, and `custom`.
	// +kubebuilder:validation:Optional
	PerfResponseStaleContentMode *string `json:"perfResponseStaleContentMode,omitempty" tf:"perf_response_stale_content_mode,omitempty"`

	// The time, in seconds, to serve stale content for when working in custom work mode.
	// The time, in seconds, to serve stale content for when working in `custom` work mode.
	// +kubebuilder:validation:Optional
	PerfResponseStaleContentTime *float64 `json:"perfResponseStaleContentTime,omitempty" tf:"perf_response_stale_content_time,omitempty"`

	// Tag the response according to the value of this header. Specify which origin response header contains the cache tags in your resources.
	// Tag the response according to the value of this header. Specify which origin response header contains the cache tags in your resources.
	// +kubebuilder:validation:Optional
	PerfResponseTagResponseHeader *string `json:"perfResponseTagResponseHeader,omitempty" tf:"perf_response_tag_response_header,omitempty"`

	// Prefer 'Last Modified' over eTag. When this option is checked, Imperva prefers using Last Modified values (if available) over eTag values (recommended on multi-server setups).
	// Prefer 'Last Modified' over eTag. When this option is checked, Imperva prefers using Last Modified values (if available) over eTag values (recommended on multi-server setups).
	// +kubebuilder:validation:Optional
	PerfTTLPreferLastModified *bool `json:"perfTtlPreferLastModified,omitempty" tf:"perf_ttl_prefer_last_modified,omitempty"`

	// Use shortest caching duration in case of conflicts. By default, the longest duration is used in case of conflict between caching rules or modes. When this option is checked, Imperva uses the shortest duration in case of conflict.
	// Use shortest caching duration in case of conflicts. By default, the longest duration is used in case of conflict between caching rules or modes. When this option is checked, Imperva uses the shortest duration in case of conflict.
	// +kubebuilder:validation:Optional
	PerfTTLUseShortestCaching *bool `json:"perfTtlUseShortestCaching,omitempty" tf:"perf_ttl_use_shortest_caching,omitempty"`

	// Unique identifier in the API for the site.
	// Customer specific identifier for this operation.
	// +kubebuilder:validation:Optional
	RefID *string `json:"refId,omitempty" tf:"ref_id,omitempty"`

	// Sets the remove SSL from site flag. Pass "true" or empty string in the value parameter.
	// true or empty string.
	// +kubebuilder:validation:Optional
	RemoveSSL *string `json:"removeSsl,omitempty" tf:"remove_ssl,omitempty"`

	// parameter is currently not supported. Please do not use/change value.
	// Use this option to allow Imperva to detect and add domains that are using the Imperva-provided CNAME (not recommended). One of: true | false
	// +kubebuilder:validation:Optional
	RestrictedCnameReuse *string `json:"restrictedCnameReuse,omitempty" tf:"restricted_cname_reuse,omitempty"`

	// Sets the seal location. Options are api.seal_location.none, api.seal_location.bottom_left, api.seal_location.right_bottom, api.seal_location.left, and api.seal_location.right.
	// api.seal_location.bottom_left | api.seal_location.none | api.seal_location.right_bottom | api.seal_location.right | api.seal_location.left | api.seal_location.bottom_right | api.seal_location.bottom.
	// +kubebuilder:validation:Optional
	SealLocation *string `json:"sealLocation,omitempty" tf:"seal_location,omitempty"`

	// If this value is false, end users will not get emails about the add site process such as DNS instructions and SSL setup.
	// If this value is false, end users will not get emails about the add site process such as DNS instructions and SSL setup.
	// +kubebuilder:validation:Optional
	SendSiteSetupEmails *string `json:"sendSiteSetupEmails,omitempty" tf:"send_site_setup_emails,omitempty"`

	// The web server IP/CNAME. This field should be specified when creating a site and the domain does not yet exist or the domain already points to Imperva Cloud. When specified, its value will be used for adding site only. After site is already created this field will be ignored. To modify site ip, please use resource incapsula_data_centers_configuration instead.
	// Manually set the web server IP/CNAME.
	// +kubebuilder:validation:Optional
	SiteIP *string `json:"siteIp,omitempty" tf:"site_ip,omitempty"`

	// Use true to add the wildcard SAN or false to add the full domain SAN to the site’s SSL certificate. Default value: true
	// Use 'true' to add the wildcard SAN or 'false' to add the full domain SAN to the site’s SSL certificate. Default value: true
	// +kubebuilder:validation:Optional
	WildcardSan *bool `json:"wildcardSan,omitempty" tf:"wildcard_san,omitempty"`
}

func (*SiteParameters) DeepCopy

func (in *SiteParameters) DeepCopy() *SiteParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteParameters.

func (*SiteParameters) DeepCopyInto

func (in *SiteParameters) DeepCopyInto(out *SiteParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SiteSpec

type SiteSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SiteParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider SiteInitParameters `json:"initProvider,omitempty"`
}

SiteSpec defines the desired state of Site

func (*SiteSpec) DeepCopy

func (in *SiteSpec) DeepCopy() *SiteSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteSpec.

func (*SiteSpec) DeepCopyInto

func (in *SiteSpec) DeepCopyInto(out *SiteSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SiteStatus

type SiteStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SiteObservation `json:"atProvider,omitempty"`
}

SiteStatus defines the observed state of Site.

func (*SiteStatus) DeepCopy

func (in *SiteStatus) DeepCopy() *SiteStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteStatus.

func (*SiteStatus) DeepCopyInto

func (in *SiteStatus) DeepCopyInto(out *SiteStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL