Modify the Program
Now that your storage bucket is provisioned, let’s add an object to it. First, from within your project directory, create a new index.html
file with some content in it.
cat <<EOT > index.html
<html>
<body>
<h1>Hello, Pulumi!</h1>
</body>
</html>
EOT
cat <<EOT > index.html
<html>
<body>
<h1>Hello, Pulumi!</h1>
</body>
</html>
EOT
@"
<html>
<body>
<h1>Hello, Pulumi!</h1>
</body>
</html>
"@ | Out-File -FilePath index.html
Now that you have your new index.html
with some content, open your program file and modify it to add the contents of your index.html
file to your storage bucket.
To accomplish this, you will use Pulumi’s FileAsset
class to assign the content of the file to a new BucketObject
.
In index.js
, create the BucketObject
right after creating the bucket itself.
const bucketObject = new gcp.storage.BucketObject("index.html", {
bucket: bucket.name,
source: new pulumi.asset.FileAsset("index.html")
});
In index.ts
, create the BucketObject
right after creating the bucket itself.
const bucketObject = new gcp.storage.BucketObject("index.html", {
bucket: bucket.name,
source: new pulumi.asset.FileAsset("index.html")
});
In __main__.py
, create a new bucket object by adding the following right after creating the bucket itself:
bucketObject = storage.BucketObject(
'index.html',
bucket=bucket,
source=pulumi.FileAsset('index.html')
)
In main.go
, create the BucketObject
right after creating the bucket itself.
bucketObject, err := storage.NewBucketObject(ctx, "index.html", &storage.BucketObjectArgs{
Bucket: bucket.Name,
Source: pulumi.NewFileAsset("index.html"),
})
if err != nil {
return err
}
In MyStack.cs
, create the BucketObject
right after creating the bucket itself.
var bucketObject = new BucketObject("index.html", new BucketObjectArgs
{
Bucket = bucket.Name,
Source = new FileAsset("index.html")
});
Notice how you provide the bucket you created earlier as an input to your new BucketObject
. This is so Pulumi knows what storage bucket the object should live in.
Next, you’ll deploy your changes.