question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Adding 'website' configuration to GCS bucket causes panic

See original GitHub issue

GCP project currently hosts 3 buckets set with FQDNs and the ‘allUsers’ permission making them public. Request from software team that 404 responses are routed to ‘index.html’.

Implement the following change in my Pulumi code (website section added to bucket creation):

const bucket = new gcp.storage.Bucket(bucketName, {
            name: bucketName,
            project,
            cors: corsPolicy,
            websites: [
                {
                    notFoundPage,
                    mainPageSuffix
                }
            ]
        });

Pulumi preview shows the addition of the websites. pulumi up -y however results in the below:

Diagnostics:
  gcp:storage:Bucket (caseypayments.mindbody.io):
    error: Plan apply failed: all SubConns are in TransientFailure, latest connection error: <nil>

  gcp:compute:ProjectMetadata (default-metadata):
    error: Plan apply failed: transport is closing

  gcp:dns:RecordSet (origin-signin.casey.arcusplatform.io.):
    error: all SubConns are in TransientFailure, latest connection error: <nil>

  gcp:storage:Bucket (signin.casey.arcusplatform.io):
    error: Plan apply failed: transport is closing

  pulumi:pulumi:Stack (viserion-casey-robertson):
    panic: runtime error: invalid memory address or nil pointer dereference
    [signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x24ee67f]
    goroutine 153 [running]:
    github.com/pulumi/pulumi-gcp/vendor/github.com/terraform-providers/terraform-provider-google-beta/google-beta.resourceStorageBucketUpdate(0xc000157960, 0x2a7a6c0, 0xc000284820, 0x24, 0x4555700)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/terraform-providers/terraform-provider-google-beta/google-beta/resource_storage_bucket.go:395 +0xfff
    github.com/pulumi/pulumi-gcp/vendor/github.com/hashicorp/terraform/helper/schema.(*Resource).Apply(0xc000444800, 0xc000a4d450, 0xc0006dcd20, 0x2a7a6c0, 0xc000284820, 0x1, 0xc00084d688, 0xc00084d6a0)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/hashicorp/terraform/helper/schema/resource.go:292 +0x264
    github.com/pulumi/pulumi-gcp/vendor/github.com/hashicorp/terraform/helper/schema.(*Provider).Apply(0xc000445300, 0xc00084d868, 0xc000a4d450, 0xc0006dcd20, 0x0, 0x0, 0x0)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/hashicorp/terraform/helper/schema/provider.go:285 +0x18f
    github.com/pulumi/pulumi-gcp/vendor/github.com/pulumi/pulumi-terraform/pkg/tfbridge.(*Provider).Update(0xc0002e2b40, 0x320b5a0, 0xc0006b4e70, 0xc000a4d400, 0xc0002e2b40, 0x2a69c01, 0xc000612200)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/pulumi/pulumi-terraform/pkg/tfbridge/provider.go:721 +0x70c
    github.com/pulumi/pulumi-gcp/vendor/github.com/pulumi/pulumi/sdk/proto/go._ResourceProvider_Update_Handler.func1(0x320b5a0, 0xc0006b4e70, 0x2d2b660, 0xc000a4d400, 0x2d6aa60, 0x4553fa0, 0x320b5a0, 0xc0006b4e70)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/pulumi/pulumi/sdk/proto/go/provider.pb.go:1367 +0x86
    github.com/pulumi/pulumi-gcp/vendor/github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc.OpenTracingServerInterceptor.func1(0x320b5a0, 0xc0006b4300, 0x2d2b660, 0xc000a4d400, 0xc000793e60, 0xc000793e80, 0x0, 0x0, 0x31c2e60, 0xc00025be20)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc/server.go:61 +0x360
    github.com/pulumi/pulumi-gcp/vendor/github.com/pulumi/pulumi/sdk/proto/go._ResourceProvider_Update_Handler(0x2db54e0, 0xc0002e2b40, 0x320b5a0, 0xc0006b4300, 0xc000a4d3b0, 0xc0002c0c00, 0x320b5a0, 0xc0006b4300, 0xc000a53200, 0x45d)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/github.com/pulumi/pulumi/sdk/proto/go/provider.pb.go:1369 +0x158
    github.com/pulumi/pulumi-gcp/vendor/google.golang.org/grpc.(*Server).processUnaryRPC(0xc000001800, 0x321bce0, 0xc0004ba900, 0xc0001fc200, 0xc00033b110, 0x4526d40, 0x0, 0x0, 0x0)
        /home/travis/gopath/src/github.com/pulumi/pulumi-gcp/vendor/google.golang.org/grpc/server.go:971 +0x470

Deleting and recreating the bucket and/or writing a simple bucket-only stack from scratch does not exhibit this issue.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:25 (12 by maintainers)

github_iconTop GitHub Comments

1reaction
stack72commented, Jun 26, 2019

Thanks @casey-robertson - I will try and recreate it and work out what is happening

0reactions
casey-robertsoncommented, Aug 6, 2019

Finally reconnected with Paul - still investigating.

Read more comments on GitHub >

github_iconTop Results From Across the Web

web - Set a website configuration for a bucket | Cloud Storage
Cloud Storage allows you to configure a bucket to behave like a static website when the bucket is accessed through a custom domain....
Read more >
Google Cloud Storage - Transmit - Panic
To do this, edit the server, click the to the right of the icon, then choose the option for Use Server Icon.
Read more >
Setting Up a Custom Domain for Google Cloud Storage (P5D73)
Project 5 Day 73: Today we will set up a custom domain to use with our Google Cloud Storage.See a professional front-end developer...
Read more >
How to Fix SSL Certificate Errors on Google Cloud
Is your WordPress website still not showing a green padlock even after installing SSL certificates? Don't panic – there's usually an easy fix!...
Read more >
google storage buckets configuration main page
2 Answers 2 · In the Google Cloud Console, go to the Cloud Storage Browser page. · In the list of buckets, find...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found