1. Packages
  2. Wavefront
  3. API Docs
  4. CloudIntegrationGcpBilling
Wavefront v3.1.2 published on Friday, May 10, 2024 by Pulumi

wavefront.CloudIntegrationGcpBilling

Explore with Pulumi AI

wavefront logo
Wavefront v3.1.2 published on Friday, May 10, 2024 by Pulumi

    Provides a Wavefront Cloud Integration for Google Cloud Billing. This allows GCP Billing cloud integrations to be created, updated, and deleted.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as wavefront from "@pulumi/wavefront";
    
    const gcpBilling = new wavefront.CloudIntegrationGcpBilling("gcp_billing", {
        name: "Test Integration",
        projectId: "example-gcp-project",
        apiKey: "example-api-key",
        jsonKey: "{...your gcp key ...}\n",
    });
    
    import pulumi
    import pulumi_wavefront as wavefront
    
    gcp_billing = wavefront.CloudIntegrationGcpBilling("gcp_billing",
        name="Test Integration",
        project_id="example-gcp-project",
        api_key="example-api-key",
        json_key="{...your gcp key ...}\n")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-wavefront/sdk/v3/go/wavefront"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wavefront.NewCloudIntegrationGcpBilling(ctx, "gcp_billing", &wavefront.CloudIntegrationGcpBillingArgs{
    			Name:      pulumi.String("Test Integration"),
    			ProjectId: pulumi.String("example-gcp-project"),
    			ApiKey:    pulumi.String("example-api-key"),
    			JsonKey:   pulumi.String("{...your gcp key ...}\n"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Wavefront = Pulumi.Wavefront;
    
    return await Deployment.RunAsync(() => 
    {
        var gcpBilling = new Wavefront.CloudIntegrationGcpBilling("gcp_billing", new()
        {
            Name = "Test Integration",
            ProjectId = "example-gcp-project",
            ApiKey = "example-api-key",
            JsonKey = @"{...your gcp key ...}
    ",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.wavefront.CloudIntegrationGcpBilling;
    import com.pulumi.wavefront.CloudIntegrationGcpBillingArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var gcpBilling = new CloudIntegrationGcpBilling("gcpBilling", CloudIntegrationGcpBillingArgs.builder()        
                .name("Test Integration")
                .projectId("example-gcp-project")
                .apiKey("example-api-key")
                .jsonKey("""
    {...your gcp key ...}
                """)
                .build());
    
        }
    }
    
    resources:
      gcpBilling:
        type: wavefront:CloudIntegrationGcpBilling
        name: gcp_billing
        properties:
          name: Test Integration
          projectId: example-gcp-project
          apiKey: example-api-key
          jsonKey: |
            {...your gcp key ...}        
    

    Create CloudIntegrationGcpBilling Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new CloudIntegrationGcpBilling(name: string, args: CloudIntegrationGcpBillingArgs, opts?: CustomResourceOptions);
    @overload
    def CloudIntegrationGcpBilling(resource_name: str,
                                   args: CloudIntegrationGcpBillingArgs,
                                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def CloudIntegrationGcpBilling(resource_name: str,
                                   opts: Optional[ResourceOptions] = None,
                                   api_key: Optional[str] = None,
                                   json_key: Optional[str] = None,
                                   project_id: Optional[str] = None,
                                   service: Optional[str] = None,
                                   additional_tags: Optional[Mapping[str, str]] = None,
                                   force_save: Optional[bool] = None,
                                   name: Optional[str] = None,
                                   service_refresh_rate_in_minutes: Optional[int] = None)
    func NewCloudIntegrationGcpBilling(ctx *Context, name string, args CloudIntegrationGcpBillingArgs, opts ...ResourceOption) (*CloudIntegrationGcpBilling, error)
    public CloudIntegrationGcpBilling(string name, CloudIntegrationGcpBillingArgs args, CustomResourceOptions? opts = null)
    public CloudIntegrationGcpBilling(String name, CloudIntegrationGcpBillingArgs args)
    public CloudIntegrationGcpBilling(String name, CloudIntegrationGcpBillingArgs args, CustomResourceOptions options)
    
    type: wavefront:CloudIntegrationGcpBilling
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args CloudIntegrationGcpBillingArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args CloudIntegrationGcpBillingArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args CloudIntegrationGcpBillingArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CloudIntegrationGcpBillingArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CloudIntegrationGcpBillingArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var cloudIntegrationGcpBillingResource = new Wavefront.CloudIntegrationGcpBilling("cloudIntegrationGcpBillingResource", new()
    {
        ApiKey = "string",
        JsonKey = "string",
        ProjectId = "string",
        Service = "string",
        AdditionalTags = 
        {
            { "string", "string" },
        },
        ForceSave = false,
        Name = "string",
        ServiceRefreshRateInMinutes = 0,
    });
    
    example, err := wavefront.NewCloudIntegrationGcpBilling(ctx, "cloudIntegrationGcpBillingResource", &wavefront.CloudIntegrationGcpBillingArgs{
    	ApiKey:    pulumi.String("string"),
    	JsonKey:   pulumi.String("string"),
    	ProjectId: pulumi.String("string"),
    	Service:   pulumi.String("string"),
    	AdditionalTags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	ForceSave:                   pulumi.Bool(false),
    	Name:                        pulumi.String("string"),
    	ServiceRefreshRateInMinutes: pulumi.Int(0),
    })
    
    var cloudIntegrationGcpBillingResource = new CloudIntegrationGcpBilling("cloudIntegrationGcpBillingResource", CloudIntegrationGcpBillingArgs.builder()
        .apiKey("string")
        .jsonKey("string")
        .projectId("string")
        .service("string")
        .additionalTags(Map.of("string", "string"))
        .forceSave(false)
        .name("string")
        .serviceRefreshRateInMinutes(0)
        .build());
    
    cloud_integration_gcp_billing_resource = wavefront.CloudIntegrationGcpBilling("cloudIntegrationGcpBillingResource",
        api_key="string",
        json_key="string",
        project_id="string",
        service="string",
        additional_tags={
            "string": "string",
        },
        force_save=False,
        name="string",
        service_refresh_rate_in_minutes=0)
    
    const cloudIntegrationGcpBillingResource = new wavefront.CloudIntegrationGcpBilling("cloudIntegrationGcpBillingResource", {
        apiKey: "string",
        jsonKey: "string",
        projectId: "string",
        service: "string",
        additionalTags: {
            string: "string",
        },
        forceSave: false,
        name: "string",
        serviceRefreshRateInMinutes: 0,
    });
    
    type: wavefront:CloudIntegrationGcpBilling
    properties:
        additionalTags:
            string: string
        apiKey: string
        forceSave: false
        jsonKey: string
        name: string
        projectId: string
        service: string
        serviceRefreshRateInMinutes: 0
    

    CloudIntegrationGcpBilling Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The CloudIntegrationGcpBilling resource accepts the following input properties:

    ApiKey string
    API key for Google Cloud Platform (GCP).
    JsonKey string
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    ProjectId string
    The Google Cloud Platform (GCP) Project ID.
    Service string
    A value denoting which cloud service this service integrates with.
    AdditionalTags Dictionary<string, string>
    A list of point tag key-values to add to every point ingested using this integration.
    ForceSave bool
    Forces this resource to save, even if errors are present.
    Name string
    The human-readable name of this integration.
    ServiceRefreshRateInMinutes int
    How often, in minutes, to refresh the service.
    ApiKey string
    API key for Google Cloud Platform (GCP).
    JsonKey string
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    ProjectId string
    The Google Cloud Platform (GCP) Project ID.
    Service string
    A value denoting which cloud service this service integrates with.
    AdditionalTags map[string]string
    A list of point tag key-values to add to every point ingested using this integration.
    ForceSave bool
    Forces this resource to save, even if errors are present.
    Name string
    The human-readable name of this integration.
    ServiceRefreshRateInMinutes int
    How often, in minutes, to refresh the service.
    apiKey String
    API key for Google Cloud Platform (GCP).
    jsonKey String
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    projectId String
    The Google Cloud Platform (GCP) Project ID.
    service String
    A value denoting which cloud service this service integrates with.
    additionalTags Map<String,String>
    A list of point tag key-values to add to every point ingested using this integration.
    forceSave Boolean
    Forces this resource to save, even if errors are present.
    name String
    The human-readable name of this integration.
    serviceRefreshRateInMinutes Integer
    How often, in minutes, to refresh the service.
    apiKey string
    API key for Google Cloud Platform (GCP).
    jsonKey string
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    projectId string
    The Google Cloud Platform (GCP) Project ID.
    service string
    A value denoting which cloud service this service integrates with.
    additionalTags {[key: string]: string}
    A list of point tag key-values to add to every point ingested using this integration.
    forceSave boolean
    Forces this resource to save, even if errors are present.
    name string
    The human-readable name of this integration.
    serviceRefreshRateInMinutes number
    How often, in minutes, to refresh the service.
    api_key str
    API key for Google Cloud Platform (GCP).
    json_key str
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    project_id str
    The Google Cloud Platform (GCP) Project ID.
    service str
    A value denoting which cloud service this service integrates with.
    additional_tags Mapping[str, str]
    A list of point tag key-values to add to every point ingested using this integration.
    force_save bool
    Forces this resource to save, even if errors are present.
    name str
    The human-readable name of this integration.
    service_refresh_rate_in_minutes int
    How often, in minutes, to refresh the service.
    apiKey String
    API key for Google Cloud Platform (GCP).
    jsonKey String
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    projectId String
    The Google Cloud Platform (GCP) Project ID.
    service String
    A value denoting which cloud service this service integrates with.
    additionalTags Map<String>
    A list of point tag key-values to add to every point ingested using this integration.
    forceSave Boolean
    Forces this resource to save, even if errors are present.
    name String
    The human-readable name of this integration.
    serviceRefreshRateInMinutes Number
    How often, in minutes, to refresh the service.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the CloudIntegrationGcpBilling resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing CloudIntegrationGcpBilling Resource

    Get an existing CloudIntegrationGcpBilling resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: CloudIntegrationGcpBillingState, opts?: CustomResourceOptions): CloudIntegrationGcpBilling
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            additional_tags: Optional[Mapping[str, str]] = None,
            api_key: Optional[str] = None,
            force_save: Optional[bool] = None,
            json_key: Optional[str] = None,
            name: Optional[str] = None,
            project_id: Optional[str] = None,
            service: Optional[str] = None,
            service_refresh_rate_in_minutes: Optional[int] = None) -> CloudIntegrationGcpBilling
    func GetCloudIntegrationGcpBilling(ctx *Context, name string, id IDInput, state *CloudIntegrationGcpBillingState, opts ...ResourceOption) (*CloudIntegrationGcpBilling, error)
    public static CloudIntegrationGcpBilling Get(string name, Input<string> id, CloudIntegrationGcpBillingState? state, CustomResourceOptions? opts = null)
    public static CloudIntegrationGcpBilling get(String name, Output<String> id, CloudIntegrationGcpBillingState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AdditionalTags Dictionary<string, string>
    A list of point tag key-values to add to every point ingested using this integration.
    ApiKey string
    API key for Google Cloud Platform (GCP).
    ForceSave bool
    Forces this resource to save, even if errors are present.
    JsonKey string
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    Name string
    The human-readable name of this integration.
    ProjectId string
    The Google Cloud Platform (GCP) Project ID.
    Service string
    A value denoting which cloud service this service integrates with.
    ServiceRefreshRateInMinutes int
    How often, in minutes, to refresh the service.
    AdditionalTags map[string]string
    A list of point tag key-values to add to every point ingested using this integration.
    ApiKey string
    API key for Google Cloud Platform (GCP).
    ForceSave bool
    Forces this resource to save, even if errors are present.
    JsonKey string
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    Name string
    The human-readable name of this integration.
    ProjectId string
    The Google Cloud Platform (GCP) Project ID.
    Service string
    A value denoting which cloud service this service integrates with.
    ServiceRefreshRateInMinutes int
    How often, in minutes, to refresh the service.
    additionalTags Map<String,String>
    A list of point tag key-values to add to every point ingested using this integration.
    apiKey String
    API key for Google Cloud Platform (GCP).
    forceSave Boolean
    Forces this resource to save, even if errors are present.
    jsonKey String
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    name String
    The human-readable name of this integration.
    projectId String
    The Google Cloud Platform (GCP) Project ID.
    service String
    A value denoting which cloud service this service integrates with.
    serviceRefreshRateInMinutes Integer
    How often, in minutes, to refresh the service.
    additionalTags {[key: string]: string}
    A list of point tag key-values to add to every point ingested using this integration.
    apiKey string
    API key for Google Cloud Platform (GCP).
    forceSave boolean
    Forces this resource to save, even if errors are present.
    jsonKey string
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    name string
    The human-readable name of this integration.
    projectId string
    The Google Cloud Platform (GCP) Project ID.
    service string
    A value denoting which cloud service this service integrates with.
    serviceRefreshRateInMinutes number
    How often, in minutes, to refresh the service.
    additional_tags Mapping[str, str]
    A list of point tag key-values to add to every point ingested using this integration.
    api_key str
    API key for Google Cloud Platform (GCP).
    force_save bool
    Forces this resource to save, even if errors are present.
    json_key str
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    name str
    The human-readable name of this integration.
    project_id str
    The Google Cloud Platform (GCP) Project ID.
    service str
    A value denoting which cloud service this service integrates with.
    service_refresh_rate_in_minutes int
    How often, in minutes, to refresh the service.
    additionalTags Map<String>
    A list of point tag key-values to add to every point ingested using this integration.
    apiKey String
    API key for Google Cloud Platform (GCP).
    forceSave Boolean
    Forces this resource to save, even if errors are present.
    jsonKey String
    Private key for a Google Cloud Platform (GCP) service account within your project. The account must have at least Viewer permissions. This key must be in the JSON format generated by GCP.
    name String
    The human-readable name of this integration.
    projectId String
    The Google Cloud Platform (GCP) Project ID.
    service String
    A value denoting which cloud service this service integrates with.
    serviceRefreshRateInMinutes Number
    How often, in minutes, to refresh the service.

    Import

    GCP Billing Cloud Integrations can be imported by using the id, e.g.:

    $ pulumi import wavefront:index/cloudIntegrationGcpBilling:CloudIntegrationGcpBilling gcp_billing a411c16b-3cf7-4f03-bf11-8ca05aab898d
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Wavefront pulumi/pulumi-wavefront
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the wavefront Terraform Provider.
    wavefront logo
    Wavefront v3.1.2 published on Friday, May 10, 2024 by Pulumi