Hello! Newcomer to Pulumi and running into a snag....
# python
d
Hello! Newcomer to Pulumi and running into a snag. I'm running...
Copy code
pubsub_topic = pubsub.Topic(
    "{}-topic".format(PUBSUB_TOPIC_PREFIX)
)
and...
Copy code
logging_sink = logging.ProjectSink(
    resource_name="{}-sink".format(LOGGING_SINK_PREFIX),
    destination="<http://pubsub.googleapis.com/{}|pubsub.googleapis.com/{}>".format(pubsub_topic.id),
    filter='LOG_ID("<http://cloudaudit.googleapis.com/activity|cloudaudit.googleapis.com/activity>") OR LOG_ID("<http://externalaudit.googleapis.com/activity|externalaudit.googleapis.com/activity>") OR LOG_ID("<http://cloudaudit.googleapis.com/system_event|cloudaudit.googleapis.com/system_event>") OR LOG_ID("<http://externalaudit.googleapis.com/system_event|externalaudit.googleapis.com/system_event>") OR LOG_ID("<http://cloudaudit.googleapis.com/access_transparency|cloudaudit.googleapis.com/access_transparency>") OR LOG_ID("<http://externalaudit.googleapis.com/access_transparency|externalaudit.googleapis.com/access_transparency>")',
    opts=ResourceOptions(
            depends_on=[pubsub_topic]
        ),
)
Pulumi fails with:
Copy code
gcp:logging:ProjectSink (dev-sink):
    error: 1 error occurred:
        * googleapi: Error 400: Cloud Pub/Sub URL is missing projects/[PROJECT_ID], badRequest
When I look at "details" view, I see this:
Copy code
pulumi:pulumi:Stack: (same)
    [urn=urn:pulumi:dev::infrastructure::pulumi:pulumi:Stack::infrastructure-dev]
    + gcp:logging/projectSink:ProjectSink: (create)
        [urn=urn:pulumi:dev::infrastructure::gcp:logging/projectSink:ProjectSink::dev-sink]
        [provider=urn:pulumi:dev::infrastructure::pulumi:providers:gcp::default_4_3_0::4d0f3a00-dc97-4725-b036-499ca6b7f522]
        destination         : "<http://pubsub.googleapis.com/<pulumi.output.Output|pubsub.googleapis.com/<pulumi.output.Output> object at 0x112b44640>"
        filter              : "LOG_ID(\"<http://cloudaudit.googleapis.com/activity\|cloudaudit.googleapis.com/activity\>") OR LOG_ID(\"<http://externalaudit.googleapis.com/activity\|externalaudit.googleapis.com/activity\>") OR LOG_ID(\"<http://cloudaudit.googleapis.com/system_event\|cloudaudit.googleapis.com/system_event\>") OR LOG_ID(\"<http://externalaudit.googleapis.com/system_event\|externalaudit.googleapis.com/system_event\>") OR LOG_ID(\"<http://cloudaudit.googleapis.com/access_transparency\|cloudaudit.googleapis.com/access_transparency\>") OR LOG_ID(\"<http://externalaudit.googleapis.com/access_transparency\|externalaudit.googleapis.com/access_transparency\>")"
        name                : "dev-sink-bf1e116"
        uniqueWriterIdentity: false
When I see
<pulumi.output.Output object at 0x112b44640>
in the
destination
, it makes me think Pulumi hasn't deserialized the actual name, or there is some deferred evaluation that isn't happening? Any suggestions on how to troubleshoot?