Pulumi & Google Cloud: Review project
Let’s review some of the generated project files:
Pulumi.yamldefines the project.
Pulumi.yamldefines both the project and the program that manages your stack resources.
Pulumi.dev.yamlcontains configuration values for the stack you initialized.
src/main/java/myprojectdefines the project’s Java package root.
__main__.pyis the Pulumi program that defines your stack resources.
 is the Pulumi program that defines your stack resources.index.jsindex.tsmain.pymain.goProgram.csProgram.fsProgram.vbApp.javaPulumi.yaml
Let’s examine index.jsindex.ts__main__.pymain.goProgram.csProgram.fsProgram.vbApp.javaPulumi.yaml
"use strict";
const pulumi = require("@pulumi/pulumi");
const gcp = require("@pulumi/gcp");
// Create a Google Cloud resource (Storage Bucket)
const bucket = new gcp.storage.Bucket("my-bucket", {
    location: "US"
});
// Export the DNS name of the bucket
exports.bucketName = bucket.url;
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
// Create a Google Cloud resource (Storage Bucket)
const bucket = new gcp.storage.Bucket("my-bucket", {
    location: "US",
});
// Export the DNS name of the bucket
export const bucketName = bucket.url;
import pulumi
from pulumi_gcp import storage
# Create a Google Cloud resource (Storage Bucket)
bucket = storage.Bucket("my-bucket", location="US")
# Export the DNS name of the bucket
pulumi.export("bucket_name", bucket.url)
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/storage"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// Create a Google Cloud resource (Storage Bucket)
		bucket, err := storage.NewBucket(ctx, "my-bucket", &storage.BucketArgs{
			Location: pulumi.String("US"),
		})
		if err != nil {
			return err
		}
		// Export the DNS name of the bucket
		ctx.Export("bucketName", bucket.Url)
		return nil
	})
}
using Pulumi;
using Pulumi.Gcp.Storage;
using System.Collections.Generic;
return await Deployment.RunAsync(() =>
{
    // Create a Google Cloud resource (Storage Bucket).
    var bucket = new Bucket("my-bucket", new BucketArgs
    {
        Location = "US",
    });
    // Export the DNS name of the bucket.
    return new Dictionary<string, object?>
    {
        ["bucketName"] = bucket.Url,
    };
});
package myproject;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.storage.Bucket;
import com.pulumi.gcp.storage.BucketArgs;
public class App {
    public static void main(String[] args) {
        Pulumi.run(ctx -> {
            // Create a Google Cloud resource (Storage Bucket)
            var bucket = new Bucket("my-bucket", BucketArgs.builder()
                .location("US")
                .build());
            // Export the DNS name of the bucket
            ctx.export("bucketName", bucket.url());
        });
    }
}
name: quickstart
runtime: yaml
description: A minimal Google Cloud Pulumi YAML program
resources:
  # Create a Google Cloud resource (Storage Bucket)
  my-bucket:
    type: gcp:storage:Bucket
    properties:
      location: US
outputs:
  # Export the DNS name of the bucket
  bucketName: ${my-bucket.url}
This Pulumi program creates a new storage bucket and exports the DNS name of the bucket.
exports.bucketName = bucket.url;
export const bucketName = bucket.url;
pulumi.export("bucket_name", bucket.url)
ctx.Export("bucketName", bucket.Url)
return new Dictionary<string, object?>
{
    ["bucketName"] = bucket.Url,
};
ctx.export("bucketName", bucket.url());
outputs:
  bucketName: ${my-bucket.url}
Next, you’ll deploy your stack, which will provision your storage bucket.
Thank you for your feedback!
If you have a question about how to use Pulumi, reach out in Community Slack.
Open an issue on GitHub to report a problem or suggest an improvement.
