Documentation ¶
Index ¶
- Variables
- func GetFloatFieldValueByUsageTag(tagValue string, s interface{}) float64
- func GetRegionTier(region string) string
- type ArtifactRegistryRepository
- type BigQueryDataset
- type BigQueryTable
- type CloudFunctionsFunction
- type CloudRunService
- type CloudRunV2Job
- type ComputeAddress
- type ComputeDisk
- type ComputeExternalVPNGateway
- type ComputeExternalVPNGatewayNetworkEgressUsage
- type ComputeForwardingRule
- type ComputeGuestAccelerator
- type ComputeImage
- type ComputeInstance
- type ComputeInstanceGroupManager
- type ComputeMachineImage
- type ComputeRegionInstanceGroupManager
- type ComputeRouterNAT
- type ComputeSnapshot
- type ComputeTargetGRPCProxy
- type ComputeVPNGateway
- type ComputeVPNGatewayNetworkEgressUsage
- type ComputeVPNTunnel
- type ContainerCluster
- type ContainerNodeConfig
- type ContainerNodePool
- type ContainerRegistry
- type ContainerRegistryNetworkEgressUsage
- type DNSManagedZone
- type DNSRecordSet
- type KMSCryptoKey
- type Logging
- type MonitoringMetricDescriptor
- type NetworkEgressUsage
- type PubSubSubscription
- type PubSubTopic
- type RedisInstance
- type RegionUsage
- type RegionsUsage
- type SQLDatabaseInstance
- func (r *SQLDatabaseInstance) BuildResource() *schema.Resource
- func (r *SQLDatabaseInstance) CoreType() string
- func (r *SQLDatabaseInstance) IsCustom() bool
- func (r *SQLDatabaseInstance) IsHighMem() bool
- func (r *SQLDatabaseInstance) IsLegacy() bool
- func (r *SQLDatabaseInstance) IsShared() bool
- func (r *SQLDatabaseInstance) IsStandard() bool
- func (r *SQLDatabaseInstance) PopulateUsage(u *schema.UsageData)
- func (r *SQLDatabaseInstance) UsageSchema() []*schema.UsageItem
- type SQLInstanceDBType
- type SecretManagerSecret
- type SecretManagerSecretVersion
- type StorageBucket
- type StorageBucketNetworkEgressUsage
Constants ¶
This section is empty.
Variables ¶
var ComputeExternalVPNGatewayNetworkEgressUsageSchema = []*schema.UsageItem{ {ValueType: schema.Float64, DefaultValue: 0, Key: "asia"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "worldwide"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "china"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "australia"}, }
var ComputeVPNGatewayNetworkEgressUsageSchema = []*schema.UsageItem{ {ValueType: schema.Float64, DefaultValue: 0, Key: "same_region"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_or_canada"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "south_america"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "oceania"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "worldwide"}, }
var ContainerRegistryNetworkEgressUsageSchema = []*schema.UsageItem{ {ValueType: schema.Float64, DefaultValue: 0, Key: "same_continent"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "worldwide"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "china"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "australia"}, }
var RegionUsageSchema = []*schema.UsageItem{ {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_east1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_east2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_northeast1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_northeast2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_northeast3"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_south1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_south2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_southeast1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia_southeast2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "australia_southeast1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "australia_southeast2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_central2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_north1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_west1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_west2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_west3"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_west4"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "europe_west6"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "northamerica_northeast1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "northamerica_northeast2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "southamerica_east1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "southamerica_west1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_central1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_east1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_east4"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_west1"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_west2"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_west3"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "us_west4"}, }
RegionUsageSchema is the schema representation of the RegionsUsage type. This can be used as a schema.SubResourceUsage to define a structure that's commonly used with resources that vary on a per region basis.
var StorageBucketNetworkEgressUsageSchema = []*schema.UsageItem{ {ValueType: schema.Float64, DefaultValue: 0, Key: "same_continent"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "asia"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "worldwide"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "china"}, {ValueType: schema.Float64, DefaultValue: 0, Key: "australia"}, }
Functions ¶
func GetFloatFieldValueByUsageTag ¶ added in v0.9.20
func GetRegionTier ¶ added in v0.10.37
Types ¶
type ArtifactRegistryRepository ¶ added in v0.9.16
type ArtifactRegistryRepository struct { Address string Region string Continent string // StorageGB represents a usage cost that defines the amount of gb the artifact registry uses on a per monthly basis. StorageGB *float64 `infracost_usage:"storage_gb"` // MonthlyEgressDataTransferGB represents a complex usage cost that defines data transfer to different regions in the // google cloud infra. This does not include outbound internet egress (e.g. downloading artifact data to a local machine). MonthlyEgressDataTransferGB *RegionsUsage `infracost_usage:"monthly_egress_data_transfer_gb"` }
ArtifactRegistryRepository struct represents a GCP artifact Registry. Artifact registry is essentially a next generation version of google's container registry. It allows users to store container images and language packages in the GCP.
Pricing for Artifact Registry is based on storage amounts and data transfer.
Resource information: https://cloud.google.com/artifact-registry Pricing information: https://cloud.google.com/artifact-registry/pricing
func (*ArtifactRegistryRepository) BuildResource ¶ added in v0.9.16
func (r *ArtifactRegistryRepository) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ArtifactRegistryRepository struct. It returns ArtifactRegistryRepository as a schema.Resource with two main cost components: storage costs & egress costs.
Storage costs:
priced at $0.10 a month after artifact registry usage is > 0.5 GB. We ignore the free tier as there is no way to currently tell if other artifact registry resources have gone beyond this free usage tier.
Network costs:
- free within the same region
- free from multi-region to a region within the same continent, e.g. europe -> europe-west1
- $0.01 when between different regions in North America continent
- $0.02 when between different regions in Europe continent
- $0.05 when between different regions in AsiaPacific continent
- $0.15 when between any region and Oceania continent
- $0.08 for all other intercontinental data transfer
This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ArtifactRegistryRepository) CoreType ¶ added in v0.10.35
func (r *ArtifactRegistryRepository) CoreType() string
artifactRegistryRepositoryUsageSchema defines a list which represents the usage schema of ArtifactRegistryRepository.
func (*ArtifactRegistryRepository) PopulateUsage ¶ added in v0.9.16
func (r *ArtifactRegistryRepository) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ArtifactRegistryRepository. It uses the `infracost_usage` struct tags to populate data into the ArtifactRegistryRepository.
func (*ArtifactRegistryRepository) UsageSchema ¶ added in v0.10.35
func (r *ArtifactRegistryRepository) UsageSchema() []*schema.UsageItem
type BigQueryDataset ¶ added in v0.9.17
type BigQueryDataset struct { Address string Region string MonthlyQueriesTB *float64 `infracost_usage:"monthly_queries_tb"` }
func (*BigQueryDataset) BuildResource ¶ added in v0.9.17
func (r *BigQueryDataset) BuildResource() *schema.Resource
func (*BigQueryDataset) CoreType ¶ added in v0.10.35
func (r *BigQueryDataset) CoreType() string
func (*BigQueryDataset) PopulateUsage ¶ added in v0.9.17
func (r *BigQueryDataset) PopulateUsage(u *schema.UsageData)
func (*BigQueryDataset) UsageSchema ¶ added in v0.10.35
func (r *BigQueryDataset) UsageSchema() []*schema.UsageItem
type BigQueryTable ¶ added in v0.9.17
type BigQueryTable struct { Address string Region string MonthlyStreamingInsertsMB *float64 `infracost_usage:"monthly_streaming_inserts_mb"` MonthlyStorageWriteAPIGB *float64 `infracost_usage:"monthly_storage_write_api_gb"` MonthlyStorageReadAPITB *float64 `infracost_usage:"monthly_storage_read_api_tb"` MonthlyActiveStorageGB *float64 `infracost_usage:"monthly_active_storage_gb"` MonthlyLongTermStorageGB *float64 `infracost_usage:"monthly_long_term_storage_gb"` }
func (*BigQueryTable) BuildResource ¶ added in v0.9.17
func (r *BigQueryTable) BuildResource() *schema.Resource
func (*BigQueryTable) CoreType ¶ added in v0.10.35
func (r *BigQueryTable) CoreType() string
func (*BigQueryTable) PopulateUsage ¶ added in v0.9.17
func (r *BigQueryTable) PopulateUsage(u *schema.UsageData)
func (*BigQueryTable) UsageSchema ¶ added in v0.10.35
func (r *BigQueryTable) UsageSchema() []*schema.UsageItem
type CloudFunctionsFunction ¶ added in v0.9.17
type CloudFunctionsFunction struct { Address string Region string AvailableMemoryMB *int64 RequestDurationMs *int64 `infracost_usage:"request_duration_ms"` MonthlyFunctionInvocations *int64 `infracost_usage:"monthly_function_invocations"` MonthlyOutboundDataGB *float64 `infracost_usage:"monthly_outbound_data_gb"` }
func (*CloudFunctionsFunction) BuildResource ¶ added in v0.9.17
func (r *CloudFunctionsFunction) BuildResource() *schema.Resource
func (*CloudFunctionsFunction) CoreType ¶ added in v0.10.35
func (r *CloudFunctionsFunction) CoreType() string
func (*CloudFunctionsFunction) PopulateUsage ¶ added in v0.9.17
func (r *CloudFunctionsFunction) PopulateUsage(u *schema.UsageData)
func (*CloudFunctionsFunction) UsageSchema ¶ added in v0.10.35
func (r *CloudFunctionsFunction) UsageSchema() []*schema.UsageItem
type CloudRunService ¶ added in v0.10.37
type CloudRunService struct { Address string Region string CpuLimit int64 IsThrottlingEnabled bool MemoryLimit int64 MinInstanceCount float64 MonthlyRequests *int64 `infracost_usage:"monthly_requests"` AverageRequestDurationMs *int64 `infracost_usage:"average_request_duration_ms"` ConcurrentRequestsPerInstance *int64 `infracost_usage:"concurrent_requests_per_instance"` InstanceHrs *int64 `infracost_usage:"instance_hrs"` }
CloudRunService acts as a top-level container that manages a set of configurations and revision templates which implement a network service. Service exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership.
Resource information: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/cloud_run_v2_service/
func (*CloudRunService) BuildResource ¶ added in v0.10.37
func (r *CloudRunService) BuildResource() *schema.Resource
func (*CloudRunService) CoreType ¶ added in v0.10.37
func (r *CloudRunService) CoreType() string
func (*CloudRunService) PopulateUsage ¶ added in v0.10.37
func (r *CloudRunService) PopulateUsage(u *schema.UsageData)
func (*CloudRunService) UsageSchema ¶ added in v0.10.37
func (r *CloudRunService) UsageSchema() []*schema.UsageItem
type CloudRunV2Job ¶ added in v0.10.37
type CloudRunV2Job struct { Address string Region string CpuLimit int64 MemoryLimit int64 TaskCount int64 MonthlyJobExecutions *int64 `infracost_usage:"monthly_job_executions"` AvgTaskExecutionMins *float64 `infracost_usage:"average_task_execution_mins"` }
CloudRunV2Job represents a resource that references a container image which is run to completion.
func (*CloudRunV2Job) BuildResource ¶ added in v0.10.37
func (r *CloudRunV2Job) BuildResource() *schema.Resource
func (*CloudRunV2Job) CoreType ¶ added in v0.10.37
func (r *CloudRunV2Job) CoreType() string
CoreType returns the name of this resource type
func (*CloudRunV2Job) PopulateUsage ¶ added in v0.10.37
func (r *CloudRunV2Job) PopulateUsage(u *schema.UsageData)
func (*CloudRunV2Job) UsageSchema ¶ added in v0.10.37
func (r *CloudRunV2Job) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of CloudRunV2Job.
type ComputeAddress ¶ added in v0.9.18
type ComputeAddress struct { Address string Region string AddressType string Purpose string InstancePurchaseOption string }
func (*ComputeAddress) BuildResource ¶ added in v0.9.18
func (r *ComputeAddress) BuildResource() *schema.Resource
func (*ComputeAddress) CoreType ¶ added in v0.10.35
func (r *ComputeAddress) CoreType() string
func (*ComputeAddress) PopulateUsage ¶ added in v0.9.18
func (r *ComputeAddress) PopulateUsage(u *schema.UsageData)
func (*ComputeAddress) UsageSchema ¶ added in v0.10.35
func (r *ComputeAddress) UsageSchema() []*schema.UsageItem
type ComputeDisk ¶ added in v0.9.20
type ComputeDisk struct { Address string Region string Type string Size float64 // applicable for pd-extreme and hyperdisk-extreme IOPS int64 }
ComputeDisk struct represents Compute Disk resource.
func (*ComputeDisk) BuildResource ¶ added in v0.9.21
func (r *ComputeDisk) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeDisk struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeDisk) CoreType ¶ added in v0.10.35
func (r *ComputeDisk) CoreType() string
func (*ComputeDisk) PopulateUsage ¶ added in v0.9.21
func (r *ComputeDisk) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeDisk. It uses the `infracost_usage` struct tags to populate data into the ComputeDisk.
func (*ComputeDisk) UsageSchema ¶ added in v0.10.35
func (r *ComputeDisk) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeDisk.
type ComputeExternalVPNGateway ¶ added in v0.9.20
type ComputeExternalVPNGateway struct { Address string Region string MonthlyEgressDataTransferGB *ComputeExternalVPNGatewayNetworkEgressUsage `infracost_usage:"monthly_egress_data_transfer_gb"` }
func (*ComputeExternalVPNGateway) BuildResource ¶ added in v0.9.20
func (r *ComputeExternalVPNGateway) BuildResource() *schema.Resource
func (*ComputeExternalVPNGateway) CoreType ¶ added in v0.10.35
func (r *ComputeExternalVPNGateway) CoreType() string
func (*ComputeExternalVPNGateway) PopulateUsage ¶ added in v0.9.20
func (r *ComputeExternalVPNGateway) PopulateUsage(u *schema.UsageData)
func (*ComputeExternalVPNGateway) UsageSchema ¶ added in v0.10.35
func (r *ComputeExternalVPNGateway) UsageSchema() []*schema.UsageItem
type ComputeExternalVPNGatewayNetworkEgressUsage ¶ added in v0.9.20
type ComputeExternalVPNGatewayNetworkEgressUsage struct { Asia *float64 `infracost_usage:"asia"` Worldwide *float64 `infracost_usage:"worldwide"` China *float64 `infracost_usage:"china"` Australia *float64 `infracost_usage:"australia"` NetworkEgressUsage }
func (*ComputeExternalVPNGatewayNetworkEgressUsage) BuildResource ¶ added in v0.9.20
func (r *ComputeExternalVPNGatewayNetworkEgressUsage) BuildResource() *schema.Resource
func (*ComputeExternalVPNGatewayNetworkEgressUsage) CoreType ¶ added in v0.10.35
func (r *ComputeExternalVPNGatewayNetworkEgressUsage) CoreType() string
func (*ComputeExternalVPNGatewayNetworkEgressUsage) UsageSchema ¶ added in v0.10.35
func (r *ComputeExternalVPNGatewayNetworkEgressUsage) UsageSchema() []*schema.UsageItem
type ComputeForwardingRule ¶ added in v0.9.18
type ComputeForwardingRule struct { Address string Region string MonthlyIngressDataGB *float64 `infracost_usage:"monthly_ingress_data_gb"` }
func (*ComputeForwardingRule) BuildResource ¶ added in v0.9.18
func (r *ComputeForwardingRule) BuildResource() *schema.Resource
func (*ComputeForwardingRule) CoreType ¶ added in v0.10.35
func (r *ComputeForwardingRule) CoreType() string
func (*ComputeForwardingRule) PopulateUsage ¶ added in v0.9.18
func (r *ComputeForwardingRule) PopulateUsage(u *schema.UsageData)
func (*ComputeForwardingRule) UsageSchema ¶ added in v0.10.35
func (r *ComputeForwardingRule) UsageSchema() []*schema.UsageItem
type ComputeGuestAccelerator ¶ added in v0.9.20
ComputeGuestAccelerator defines Guest Accelerator setup for Compute resources.
type ComputeImage ¶ added in v0.9.21
type ComputeImage struct { Address string Region string StorageSize float64 // "usage" args StorageGB *float64 `infracost_usage:"storage_gb"` }
ComputeImage struct represents Compute Image resource.
func (*ComputeImage) BuildResource ¶ added in v0.9.21
func (r *ComputeImage) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeImage struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeImage) CoreType ¶ added in v0.10.35
func (r *ComputeImage) CoreType() string
func (*ComputeImage) PopulateUsage ¶ added in v0.9.21
func (r *ComputeImage) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeImage. It uses the `infracost_usage` struct tags to populate data into the ComputeImage.
func (*ComputeImage) UsageSchema ¶ added in v0.10.35
func (r *ComputeImage) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeImage.
type ComputeInstance ¶ added in v0.9.20
type ComputeInstance struct { Address string Region string MachineType string PurchaseOption string Size int64 HasBootDisk bool BootDiskSize float64 BootDiskType string ScratchDisks int GuestAccelerators []*ComputeGuestAccelerator MonthlyHours *float64 `infracost_usage:"monthly_hrs"` }
ComputeInstance struct represents Compute Instance resource.
func (*ComputeInstance) BuildResource ¶ added in v0.9.20
func (r *ComputeInstance) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeInstance struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeInstance) CoreType ¶ added in v0.10.35
func (r *ComputeInstance) CoreType() string
func (*ComputeInstance) PopulateUsage ¶ added in v0.9.20
func (r *ComputeInstance) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeInstance. It uses the `infracost_usage` struct tags to populate data into the ComputeInstance.
func (*ComputeInstance) UsageSchema ¶ added in v0.10.35
func (r *ComputeInstance) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeInstance.
type ComputeInstanceGroupManager ¶ added in v0.9.20
type ComputeInstanceGroupManager struct { Address string Region string MachineType string PurchaseOption string TargetSize int64 Disks []*ComputeDisk ScratchDisks int GuestAccelerators []*ComputeGuestAccelerator }
ComputeInstanceGroupManager struct represents Compute Instance Group Manager resource.
func (*ComputeInstanceGroupManager) BuildResource ¶ added in v0.9.20
func (r *ComputeInstanceGroupManager) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeInstanceGroupManager struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeInstanceGroupManager) CoreType ¶ added in v0.10.35
func (r *ComputeInstanceGroupManager) CoreType() string
func (*ComputeInstanceGroupManager) PopulateUsage ¶ added in v0.9.20
func (r *ComputeInstanceGroupManager) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeInstanceGroupManager. It uses the `infracost_usage` struct tags to populate data into the ComputeInstanceGroupManager.
func (*ComputeInstanceGroupManager) UsageSchema ¶ added in v0.10.35
func (r *ComputeInstanceGroupManager) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeInstanceGroupManager.
type ComputeMachineImage ¶ added in v0.9.21
type ComputeMachineImage struct { Address string Region string // "usage" args StorageGB *float64 `infracost_usage:"storage_gb"` }
ComputeMachineImage struct represents Compute Machine Image resource.
func (*ComputeMachineImage) BuildResource ¶ added in v0.9.21
func (r *ComputeMachineImage) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeMachineImage struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeMachineImage) CoreType ¶ added in v0.10.35
func (r *ComputeMachineImage) CoreType() string
func (*ComputeMachineImage) PopulateUsage ¶ added in v0.9.21
func (r *ComputeMachineImage) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeMachineImage. It uses the `infracost_usage` struct tags to populate data into the ComputeMachineImage.
func (*ComputeMachineImage) UsageSchema ¶ added in v0.10.35
func (r *ComputeMachineImage) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeMachineImage.
type ComputeRegionInstanceGroupManager ¶ added in v0.9.20
type ComputeRegionInstanceGroupManager struct { Address string Region string MachineType string PurchaseOption string TargetSize int64 ScratchDisks int Disks []*ComputeDisk GuestAccelerators []*ComputeGuestAccelerator }
ComputeRegionInstanceGroupManager struct represents Compute Region Instance Group Manager resource.
func (*ComputeRegionInstanceGroupManager) BuildResource ¶ added in v0.9.20
func (r *ComputeRegionInstanceGroupManager) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeRegionInstanceGroupManager struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeRegionInstanceGroupManager) CoreType ¶ added in v0.10.35
func (r *ComputeRegionInstanceGroupManager) CoreType() string
func (*ComputeRegionInstanceGroupManager) PopulateUsage ¶ added in v0.9.20
func (r *ComputeRegionInstanceGroupManager) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeRegionInstanceGroupManager. It uses the `infracost_usage` struct tags to populate data into the ComputeRegionInstanceGroupManager.
func (*ComputeRegionInstanceGroupManager) UsageSchema ¶ added in v0.10.35
func (r *ComputeRegionInstanceGroupManager) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeRegionInstanceGroupManager.
type ComputeRouterNAT ¶ added in v0.9.17
type ComputeRouterNAT struct { Address string Region string AssignedVMs *int64 `infracost_usage:"assigned_vms"` MonthlyDataProcessedGB *float64 `infracost_usage:"monthly_data_processed_gb"` }
func (*ComputeRouterNAT) BuildResource ¶ added in v0.9.17
func (r *ComputeRouterNAT) BuildResource() *schema.Resource
func (*ComputeRouterNAT) CoreType ¶ added in v0.10.35
func (r *ComputeRouterNAT) CoreType() string
func (*ComputeRouterNAT) PopulateUsage ¶ added in v0.9.17
func (r *ComputeRouterNAT) PopulateUsage(u *schema.UsageData)
func (*ComputeRouterNAT) UsageSchema ¶ added in v0.10.35
func (r *ComputeRouterNAT) UsageSchema() []*schema.UsageItem
type ComputeSnapshot ¶ added in v0.9.21
type ComputeSnapshot struct { Address string Region string DiskSize float64 // "usage" args StorageGB *float64 `infracost_usage:"storage_gb"` }
ComputeSnapshot struct represents Compute Snapshot resource.
func (*ComputeSnapshot) BuildResource ¶ added in v0.9.21
func (r *ComputeSnapshot) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ComputeSnapshot struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ComputeSnapshot) CoreType ¶ added in v0.10.35
func (r *ComputeSnapshot) CoreType() string
func (*ComputeSnapshot) PopulateUsage ¶ added in v0.9.21
func (r *ComputeSnapshot) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ComputeSnapshot. It uses the `infracost_usage` struct tags to populate data into the ComputeSnapshot.
func (*ComputeSnapshot) UsageSchema ¶ added in v0.10.35
func (r *ComputeSnapshot) UsageSchema() []*schema.UsageItem
UsageSchema defines a list which represents the usage schema of ComputeSnapshot.
type ComputeTargetGRPCProxy ¶ added in v0.9.18
type ComputeTargetGRPCProxy struct { Address string Region string MonthlyProxyInstances *float64 `infracost_usage:"monthly_proxy_instances"` MonthlyDataProcessedGB *float64 `infracost_usage:"monthly_data_processed_gb"` }
func (*ComputeTargetGRPCProxy) BuildResource ¶ added in v0.9.18
func (r *ComputeTargetGRPCProxy) BuildResource() *schema.Resource
func (*ComputeTargetGRPCProxy) CoreType ¶ added in v0.10.35
func (r *ComputeTargetGRPCProxy) CoreType() string
func (*ComputeTargetGRPCProxy) PopulateUsage ¶ added in v0.9.18
func (r *ComputeTargetGRPCProxy) PopulateUsage(u *schema.UsageData)
func (*ComputeTargetGRPCProxy) UsageSchema ¶ added in v0.10.35
func (r *ComputeTargetGRPCProxy) UsageSchema() []*schema.UsageItem
type ComputeVPNGateway ¶ added in v0.9.22
type ComputeVPNGateway struct { Address string Region string MonthlyEgressDataTransferGB *ComputeVPNGatewayNetworkEgressUsage `infracost_usage:"monthly_egress_data_transfer_gb"` }
func (*ComputeVPNGateway) BuildResource ¶ added in v0.9.22
func (r *ComputeVPNGateway) BuildResource() *schema.Resource
func (*ComputeVPNGateway) CoreType ¶ added in v0.10.35
func (r *ComputeVPNGateway) CoreType() string
func (*ComputeVPNGateway) PopulateUsage ¶ added in v0.9.22
func (r *ComputeVPNGateway) PopulateUsage(u *schema.UsageData)
func (*ComputeVPNGateway) UsageSchema ¶ added in v0.10.35
func (r *ComputeVPNGateway) UsageSchema() []*schema.UsageItem
type ComputeVPNGatewayNetworkEgressUsage ¶ added in v0.9.20
type ComputeVPNGatewayNetworkEgressUsage struct { SameRegion *float64 `infracost_usage:"same_region"` USOrCanada *float64 `infracost_usage:"us_or_canada"` Europe *float64 `infracost_usage:"europe"` Asia *float64 `infracost_usage:"asia"` SouthAmerica *float64 `infracost_usage:"south_america"` Oceania *float64 `infracost_usage:"oceania"` Worldwide *float64 `infracost_usage:"worldwide"` NetworkEgressUsage }
func (*ComputeVPNGatewayNetworkEgressUsage) BuildResource ¶ added in v0.9.20
func (r *ComputeVPNGatewayNetworkEgressUsage) BuildResource() *schema.Resource
func (*ComputeVPNGatewayNetworkEgressUsage) CoreType ¶ added in v0.10.35
func (r *ComputeVPNGatewayNetworkEgressUsage) CoreType() string
func (*ComputeVPNGatewayNetworkEgressUsage) UsageSchema ¶ added in v0.10.35
func (r *ComputeVPNGatewayNetworkEgressUsage) UsageSchema() []*schema.UsageItem
type ComputeVPNTunnel ¶ added in v0.9.17
func (*ComputeVPNTunnel) BuildResource ¶ added in v0.9.17
func (r *ComputeVPNTunnel) BuildResource() *schema.Resource
func (*ComputeVPNTunnel) CoreType ¶ added in v0.10.35
func (r *ComputeVPNTunnel) CoreType() string
func (*ComputeVPNTunnel) PopulateUsage ¶ added in v0.9.17
func (r *ComputeVPNTunnel) PopulateUsage(u *schema.UsageData)
func (*ComputeVPNTunnel) UsageSchema ¶ added in v0.10.35
func (r *ComputeVPNTunnel) UsageSchema() []*schema.UsageItem
type ContainerCluster ¶ added in v0.9.20
type ContainerCluster struct { Address string Region string AutopilotEnabled bool IsZone bool DefaultNodePool *ContainerNodePool NodePools []*ContainerNodePool // "usage" args DefaultNodePoolNodes *int64 `infracost_usage:"nodes"` AutopilotVCPUCount *float64 `infracost_usage:"autopilot_vcpu_count"` AutopilotMemoryGB *float64 `infracost_usage:"autopilot_memory_gb"` AutopilotEphemeralStorageGB *float64 `infracost_usage:"autopilot_ephemeral_storage_gb"` }
ContainerCluster struct represents Container Cluster resource.
func (*ContainerCluster) BuildResource ¶ added in v0.9.20
func (r *ContainerCluster) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ContainerCluster struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ContainerCluster) CoreType ¶ added in v0.10.35
func (r *ContainerCluster) CoreType() string
func (*ContainerCluster) PopulateUsage ¶ added in v0.9.20
func (r *ContainerCluster) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ContainerCluster. It uses the `infracost_usage` struct tags to populate data into the ContainerCluster.
func (*ContainerCluster) UsageSchema ¶ added in v0.10.35
func (r *ContainerCluster) UsageSchema() []*schema.UsageItem
type ContainerNodeConfig ¶ added in v0.9.20
type ContainerNodeConfig struct { MachineType string PurchaseOption string DiskType string DiskSize float64 LocalSSDCount int64 GuestAccelerators []*ComputeGuestAccelerator }
ContainerNodeConfig defines Node configuration for Container resources.
type ContainerNodePool ¶ added in v0.9.20
type ContainerNodePool struct { Address string Region string Zones int64 CountPerZone int64 NodeConfig *ContainerNodeConfig // "usage" args Nodes *int64 `infracost_usage:"nodes"` }
ContainerNodePool struct represents Container Cluster's Node Pool resource.
func (*ContainerNodePool) BuildResource ¶ added in v0.9.20
func (r *ContainerNodePool) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid ContainerNodePool struct. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*ContainerNodePool) CoreType ¶ added in v0.10.35
func (r *ContainerNodePool) CoreType() string
func (*ContainerNodePool) PopulateUsage ¶ added in v0.9.20
func (r *ContainerNodePool) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the ContainerNodePool. It uses the `infracost_usage` struct tags to populate data into the ContainerNodePool.
func (*ContainerNodePool) UsageSchema ¶ added in v0.10.35
func (r *ContainerNodePool) UsageSchema() []*schema.UsageItem
type ContainerRegistry ¶ added in v0.9.22
type ContainerRegistry struct { Address string Region string Location string StorageClass string StorageGB *float64 `infracost_usage:"storage_gb"` MonthlyClassAOperations *int64 `infracost_usage:"monthly_class_a_operations"` MonthlyClassBOperations *int64 `infracost_usage:"monthly_class_b_operations"` MonthlyEgressDataTransferGB *ContainerRegistryNetworkEgressUsage `infracost_usage:"monthly_egress_data_transfer_gb"` }
func (*ContainerRegistry) BuildResource ¶ added in v0.9.22
func (r *ContainerRegistry) BuildResource() *schema.Resource
func (*ContainerRegistry) CoreType ¶ added in v0.10.35
func (r *ContainerRegistry) CoreType() string
func (*ContainerRegistry) PopulateUsage ¶ added in v0.9.22
func (r *ContainerRegistry) PopulateUsage(u *schema.UsageData)
func (*ContainerRegistry) UsageSchema ¶ added in v0.10.35
func (r *ContainerRegistry) UsageSchema() []*schema.UsageItem
type ContainerRegistryNetworkEgressUsage ¶ added in v0.9.20
type ContainerRegistryNetworkEgressUsage struct { SameContinent *float64 `infracost_usage:"same_continent"` Asia *float64 `infracost_usage:"asia"` Worldwide *float64 `infracost_usage:"worldwide"` China *float64 `infracost_usage:"china"` Australia *float64 `infracost_usage:"australia"` NetworkEgressUsage }
func (*ContainerRegistryNetworkEgressUsage) BuildResource ¶ added in v0.9.20
func (r *ContainerRegistryNetworkEgressUsage) BuildResource() *schema.Resource
func (*ContainerRegistryNetworkEgressUsage) CoreType ¶ added in v0.10.35
func (r *ContainerRegistryNetworkEgressUsage) CoreType() string
func (*ContainerRegistryNetworkEgressUsage) UsageSchema ¶ added in v0.10.35
func (r *ContainerRegistryNetworkEgressUsage) UsageSchema() []*schema.UsageItem
type DNSManagedZone ¶ added in v0.9.17
type DNSManagedZone struct {
Address string
}
func (*DNSManagedZone) BuildResource ¶ added in v0.9.17
func (r *DNSManagedZone) BuildResource() *schema.Resource
func (*DNSManagedZone) CoreType ¶ added in v0.10.35
func (r *DNSManagedZone) CoreType() string
func (*DNSManagedZone) PopulateUsage ¶ added in v0.9.17
func (r *DNSManagedZone) PopulateUsage(u *schema.UsageData)
func (*DNSManagedZone) UsageSchema ¶ added in v0.10.35
func (r *DNSManagedZone) UsageSchema() []*schema.UsageItem
type DNSRecordSet ¶ added in v0.9.17
type DNSRecordSet struct { Address string MonthlyQueries *int64 `infracost_usage:"monthly_queries"` }
func (*DNSRecordSet) BuildResource ¶ added in v0.9.17
func (r *DNSRecordSet) BuildResource() *schema.Resource
func (*DNSRecordSet) CoreType ¶ added in v0.10.35
func (r *DNSRecordSet) CoreType() string
func (*DNSRecordSet) PopulateUsage ¶ added in v0.9.17
func (r *DNSRecordSet) PopulateUsage(u *schema.UsageData)
func (*DNSRecordSet) UsageSchema ¶ added in v0.10.35
func (r *DNSRecordSet) UsageSchema() []*schema.UsageItem
type KMSCryptoKey ¶ added in v0.9.18
type KMSCryptoKey struct { Address string Region string VersionTemplate string Algorithm string ProtectionLevel string RotationPeriod string KeyVersions *int64 `infracost_usage:"key_versions"` MonthlyKeyOperations *int64 `infracost_usage:"monthly_key_operations"` }
func (*KMSCryptoKey) BuildResource ¶ added in v0.9.18
func (r *KMSCryptoKey) BuildResource() *schema.Resource
func (*KMSCryptoKey) CoreType ¶ added in v0.10.35
func (r *KMSCryptoKey) CoreType() string
func (*KMSCryptoKey) PopulateUsage ¶ added in v0.9.18
func (r *KMSCryptoKey) PopulateUsage(u *schema.UsageData)
func (*KMSCryptoKey) UsageSchema ¶ added in v0.10.35
func (r *KMSCryptoKey) UsageSchema() []*schema.UsageItem
type Logging ¶ added in v0.9.17
type Logging struct { Address string MonthlyLoggingDataGB *float64 `infracost_usage:"monthly_logging_data_gb"` }
func (*Logging) BuildResource ¶ added in v0.9.17
func (*Logging) PopulateUsage ¶ added in v0.9.17
func (*Logging) UsageSchema ¶ added in v0.10.35
type MonitoringMetricDescriptor ¶ added in v0.9.17
type MonitoringMetricDescriptor struct { Address string MonthlyMonitoringDataMB *int64 `infracost_usage:"monthly_monitoring_data_mb"` MonthlyAPICalls *int64 `infracost_usage:"monthly_api_calls"` }
func (*MonitoringMetricDescriptor) BuildResource ¶ added in v0.9.17
func (r *MonitoringMetricDescriptor) BuildResource() *schema.Resource
func (*MonitoringMetricDescriptor) CoreType ¶ added in v0.10.35
func (r *MonitoringMetricDescriptor) CoreType() string
func (*MonitoringMetricDescriptor) PopulateUsage ¶ added in v0.9.17
func (r *MonitoringMetricDescriptor) PopulateUsage(u *schema.UsageData)
func (*MonitoringMetricDescriptor) UsageSchema ¶ added in v0.10.35
func (r *MonitoringMetricDescriptor) UsageSchema() []*schema.UsageItem
type NetworkEgressUsage ¶ added in v0.9.20
type PubSubSubscription ¶ added in v0.9.17
type PubSubSubscription struct { Address string MonthlyMessageDataTB *float64 `infracost_usage:"monthly_message_data_tb"` StorageGB *float64 `infracost_usage:"storage_gb"` SnapshotStorageGB *float64 `infracost_usage:"snapshot_storage_gb"` }
func (*PubSubSubscription) BuildResource ¶ added in v0.9.17
func (r *PubSubSubscription) BuildResource() *schema.Resource
func (*PubSubSubscription) CoreType ¶ added in v0.10.35
func (r *PubSubSubscription) CoreType() string
func (*PubSubSubscription) PopulateUsage ¶ added in v0.9.17
func (r *PubSubSubscription) PopulateUsage(u *schema.UsageData)
func (*PubSubSubscription) UsageSchema ¶ added in v0.10.35
func (r *PubSubSubscription) UsageSchema() []*schema.UsageItem
type PubSubTopic ¶ added in v0.9.17
type PubSubTopic struct { Address string MonthlyMessageDataTB *float64 `infracost_usage:"monthly_message_data_tb"` }
func (*PubSubTopic) BuildResource ¶ added in v0.9.17
func (r *PubSubTopic) BuildResource() *schema.Resource
func (*PubSubTopic) CoreType ¶ added in v0.10.35
func (r *PubSubTopic) CoreType() string
func (*PubSubTopic) PopulateUsage ¶ added in v0.9.17
func (r *PubSubTopic) PopulateUsage(u *schema.UsageData)
func (*PubSubTopic) UsageSchema ¶ added in v0.10.35
func (r *PubSubTopic) UsageSchema() []*schema.UsageItem
type RedisInstance ¶ added in v0.9.17
func (*RedisInstance) BuildResource ¶ added in v0.9.17
func (r *RedisInstance) BuildResource() *schema.Resource
func (*RedisInstance) CoreType ¶ added in v0.10.35
func (r *RedisInstance) CoreType() string
func (*RedisInstance) PopulateUsage ¶ added in v0.9.17
func (r *RedisInstance) PopulateUsage(u *schema.UsageData)
func (*RedisInstance) UsageSchema ¶ added in v0.10.35
func (r *RedisInstance) UsageSchema() []*schema.UsageItem
type RegionUsage ¶ added in v0.9.16
RegionUsage defines a hard definition in the regions map.
type RegionsUsage ¶ added in v0.9.16
type RegionsUsage struct { AsiaEast1 *float64 `infracost_usage:"asia_east1"` AsiaEast2 *float64 `infracost_usage:"asia_east2"` AsiaNortheast1 *float64 `infracost_usage:"asia_northeast1"` AsiaNortheast2 *float64 `infracost_usage:"asia_northeast2"` AsiaNortheast3 *float64 `infracost_usage:"asia_northeast3"` AsiaSouth1 *float64 `infracost_usage:"asia_south1"` AsiaSouth2 *float64 `infracost_usage:"asia_south2"` AsiaSoutheast1 *float64 `infracost_usage:"asia_southeast1"` AsiaSoutheast2 *float64 `infracost_usage:"asia_southeast2"` AustraliaSoutheast1 *float64 `infracost_usage:"australia_southeast1"` AustraliaSoutheast2 *float64 `infracost_usage:"australia_southeast2"` EuropeCentral2 *float64 `infracost_usage:"europe_central2"` EuropeNorth1 *float64 `infracost_usage:"europe_north1"` EuropeWest1 *float64 `infracost_usage:"europe_west1"` EuropeWest2 *float64 `infracost_usage:"europe_west2"` EuropeWest3 *float64 `infracost_usage:"europe_west3"` EuropeWest4 *float64 `infracost_usage:"europe_west4"` EuropeWest6 *float64 `infracost_usage:"europe_west6"` NorthAmericaNortheast1 *float64 `infracost_usage:"northamerica_northeast1"` NorthAmericaNortheast2 *float64 `infracost_usage:"northamerica_northeast2"` SouthAmericaEast1 *float64 `infracost_usage:"southamerica_east1"` SouthAmericaWest1 *float64 `infracost_usage:"southamerica_west1"` USCentral1 *float64 `infracost_usage:"us_central1"` USEast1 *float64 `infracost_usage:"us_east1"` USEast4 *float64 `infracost_usage:"us_east4"` USWest1 *float64 `infracost_usage:"us_west1"` USWest2 *float64 `infracost_usage:"us_west2"` USWest3 *float64 `infracost_usage:"us_west3"` USWest4 *float64 `infracost_usage:"us_west4"` }
RegionsUsage is a reusable type that represents a usage cost map. This can be used in resources that define a usage parameter that's changed on a per-region basis, e.g:
monthly_data_processed_gb:
asia_northeast1: 188 asia_east2: 78
can be handled by adding a usage cost property to your resource like so:
type MyResource struct { ... MonthlyDataProcessedGB *RegionsUsage `infracost_usage:"monthly_processed_gb"` }
func (RegionsUsage) Values ¶ added in v0.9.16
func (r RegionsUsage) Values() []RegionUsage
Values returns RegionUsage as a slice which can be iterated over to create cost components. The keys of the regions returned have their underscores replaced with hypens so they can be used in product filters and cost lookups.
type SQLDatabaseInstance ¶ added in v0.10.0
type SQLDatabaseInstance struct { Address string DiskSize int64 UseIPV4 bool ReplicaConfiguration string Tier string Edition string AvailabilityType string Region string DatabaseVersion string DiskType string BackupStorageGB *float64 `infracost_usage:"backup_storage_gb"` }
func (*SQLDatabaseInstance) BuildResource ¶ added in v0.10.0
func (r *SQLDatabaseInstance) BuildResource() *schema.Resource
func (*SQLDatabaseInstance) CoreType ¶ added in v0.10.35
func (r *SQLDatabaseInstance) CoreType() string
func (*SQLDatabaseInstance) IsCustom ¶ added in v0.10.32
func (r *SQLDatabaseInstance) IsCustom() bool
func (*SQLDatabaseInstance) IsHighMem ¶ added in v0.10.32
func (r *SQLDatabaseInstance) IsHighMem() bool
func (*SQLDatabaseInstance) IsLegacy ¶ added in v0.10.32
func (r *SQLDatabaseInstance) IsLegacy() bool
func (*SQLDatabaseInstance) IsShared ¶ added in v0.10.32
func (r *SQLDatabaseInstance) IsShared() bool
func (*SQLDatabaseInstance) IsStandard ¶ added in v0.10.32
func (r *SQLDatabaseInstance) IsStandard() bool
func (*SQLDatabaseInstance) PopulateUsage ¶ added in v0.10.0
func (r *SQLDatabaseInstance) PopulateUsage(u *schema.UsageData)
func (*SQLDatabaseInstance) UsageSchema ¶ added in v0.10.35
func (r *SQLDatabaseInstance) UsageSchema() []*schema.UsageItem
type SQLInstanceDBType ¶ added in v0.10.0
type SQLInstanceDBType int
const ( MySQL SQLInstanceDBType = iota PostgreSQL SQLServer )
type SecretManagerSecret ¶
type SecretManagerSecret struct { Address string Region string ReplicationLocations int64 // "usage" args ActiveSecretVersions *int64 `infracost_usage:"active_secret_versions"` MonthlyAccessOperations *int64 `infracost_usage:"monthly_access_operations"` MonthlyRotationNotifications *int64 `infracost_usage:"monthly_rotation_notifications"` }
SecretManagerSecret represents Google Secret Manager's Secret resource.
The cost of active secret versions depends on the number of replication locations. If it's more than one then the price is multiplied by the locations' quantity. Pricing API includes Free Tier, but it's not used.
More resource information here: https://cloud.google.com/secret-manager Pricing information here: https://cloud.google.com/secret-manager/pricing
func (*SecretManagerSecret) BuildResource ¶
func (r *SecretManagerSecret) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid SecretManagerSecret. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*SecretManagerSecret) CoreType ¶ added in v0.10.35
func (r *SecretManagerSecret) CoreType() string
func (*SecretManagerSecret) PopulateUsage ¶
func (r *SecretManagerSecret) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the SecretManagerSecret. It uses the `infracost_usage` struct tags to populate data into the SecretManagerSecret.
func (*SecretManagerSecret) UsageSchema ¶ added in v0.10.35
func (r *SecretManagerSecret) UsageSchema() []*schema.UsageItem
type SecretManagerSecretVersion ¶
type SecretManagerSecretVersion struct { Address string Region string ReplicationLocations int64 // "usage" args MonthlyAccessOperations *int64 `infracost_usage:"monthly_access_operations"` }
SecretManagerSecretVersion represents one Google Secret Manager Secret's Version resource.
The cost of active secret version depends on the number of replication locations specified by its parent secret. If it's more than one then the price is multiplied by the locations' quantity. Pricing API includes Free Tier, but it's not used.
More resource information here: https://cloud.google.com/secret-manager Pricing information here: https://cloud.google.com/secret-manager/pricing
func (*SecretManagerSecretVersion) BuildResource ¶
func (r *SecretManagerSecretVersion) BuildResource() *schema.Resource
BuildResource builds a schema.Resource from a valid SecretManagerSecretVersion. This method is called after the resource is initialised by an IaC provider. See providers folder for more information.
func (*SecretManagerSecretVersion) CoreType ¶ added in v0.10.35
func (r *SecretManagerSecretVersion) CoreType() string
func (*SecretManagerSecretVersion) PopulateUsage ¶
func (r *SecretManagerSecretVersion) PopulateUsage(u *schema.UsageData)
PopulateUsage parses the u schema.UsageData into the SecretManagerSecretVersion. It uses the `infracost_usage` struct tags to populate data into the SecretManagerSecretVersion.
func (*SecretManagerSecretVersion) UsageSchema ¶ added in v0.10.35
func (r *SecretManagerSecretVersion) UsageSchema() []*schema.UsageItem
type StorageBucket ¶ added in v0.9.22
type StorageBucket struct { Address string Region string Location string StorageClass string StorageGB *float64 `infracost_usage:"storage_gb"` MonthlyClassAOperations *int64 `infracost_usage:"monthly_class_a_operations"` MonthlyClassBOperations *int64 `infracost_usage:"monthly_class_b_operations"` MonthlyDataRetrievalGB *float64 `infracost_usage:"monthly_data_retrieval_gb"` MonthlyEgressDataTransferGB *StorageBucketNetworkEgressUsage `infracost_usage:"monthly_egress_data_transfer_gb"` }
func (*StorageBucket) BuildResource ¶ added in v0.9.22
func (r *StorageBucket) BuildResource() *schema.Resource
func (*StorageBucket) CoreType ¶ added in v0.10.35
func (r *StorageBucket) CoreType() string
func (*StorageBucket) PopulateUsage ¶ added in v0.9.22
func (r *StorageBucket) PopulateUsage(u *schema.UsageData)
func (*StorageBucket) UsageSchema ¶ added in v0.10.35
func (r *StorageBucket) UsageSchema() []*schema.UsageItem
type StorageBucketNetworkEgressUsage ¶ added in v0.9.20
type StorageBucketNetworkEgressUsage struct { SameContinent *float64 `infracost_usage:"same_continent"` Asia *float64 `infracost_usage:"asia"` Worldwide *float64 `infracost_usage:"worldwide"` China *float64 `infracost_usage:"china"` Australia *float64 `infracost_usage:"australia"` NetworkEgressUsage }
func (*StorageBucketNetworkEgressUsage) BuildResource ¶ added in v0.9.20
func (r *StorageBucketNetworkEgressUsage) BuildResource() *schema.Resource
func (*StorageBucketNetworkEgressUsage) CoreType ¶ added in v0.10.35
func (r *StorageBucketNetworkEgressUsage) CoreType() string
func (*StorageBucketNetworkEgressUsage) UsageSchema ¶ added in v0.10.35
func (r *StorageBucketNetworkEgressUsage) UsageSchema() []*schema.UsageItem
Source Files ¶
- artifact_registry_repository.go
- bigquery_dataset.go
- bigquery_table.go
- cloud_run_v2_job.go
- cloud_run_v2_service.go
- cloudfunctions_function.go
- compute_address.go
- compute_cost_component_helpers.go
- compute_disk.go
- compute_external_vpn_gateway.go
- compute_forwarding_rule.go
- compute_image.go
- compute_instance.go
- compute_instance_group_manager.go
- compute_machine_image.go
- compute_region_instance_group_manager.go
- compute_router_nat.go
- compute_snapshot.go
- compute_target_grpc_proxy.go
- compute_vpn_gateway.go
- compute_vpn_tunnel.go
- container_cluster.go
- container_node_pool.go
- container_registry.go
- dns_managed_zone.go
- dns_record_set.go
- kms_crypto_key.go
- logging.go
- monitoring_metric_descriptor.go
- network_egress_internal.go
- pubsub_subscription.go
- pubsub_topic.go
- redis_instance.go
- secret_manager_secret.go
- secret_manager_secret_version.go
- sql_database_instance.go
- storage_bucket.go
- util.go