https://pulumi.com logo
Docs
Join the conversationJoin Slack
Channels
announcements
automation-api
aws
azure
blog-posts
built-with-pulumi
cloudengineering
cloudengineering-support
content-share
contribex
contribute
docs
dotnet
finops
general
getting-started
gitlab
golang
google-cloud
hackathon-03-19-2020
hacktoberfest
install
java
jobs
kubernetes
learn-pulumi-events
linen
localstack
multi-language-hackathon
office-hours
oracle-cloud-infrastructure
plugin-framework
pulumi-cdk
pulumi-crosscode
pulumi-deployments
pulumi-kubernetes-operator
pulumi-service
pulumiverse
python
registry
status
testingtesting123
testingtesting321
typescript
welcome
workshops
yaml
Powered by Linen
general
  • c

    cuddly-leather-18640

    02/04/2020, 9:49 AM
    in the future, will
    pulumi watch
    hot reload k8s deployments/pods/jobs/etc when there are code changes to the folder being watched?
    w
    • 2
    • 2
  • s

    straight-twilight-64698

    02/04/2020, 4:24 PM
    I've read the pulumi architecture docs, but I'm not grokking why pulumi has this separate state off to the side reflecting the last-deployed state. AFAICT, a diff against what exists now is always required anyway?
    w
    • 2
    • 4
  • t

    thousands-london-78260

    02/04/2020, 6:01 PM
    đź‘‹ friens. I'm creating a k8s deployment that needs a Persistent Volume Claim (but would be equivalent in other cloud providers). As such the Deployment dependsOn the PVC, but the disk can only be mounted for Read/Write once...how would I go about making sure a new PVC is created if the Deployment is updated so that I don't have the old deployment keeping a lock on the PVC, while the new deployment is trying to get a lock to spin up? The PVC is created before the Deployment (so that I know it's name to give to the deployment spec)
    g
    • 2
    • 7
  • a

    abundant-author-13372

    02/04/2020, 6:03 PM
    hey guys. Is there any way to see the API responses Pulumi is getting when it tries to apply changes? I'm trying to destroy some resources that seem to have becom stuck, and I'd like to be able to debug it (i know about -d, but it only informs about what it's trying to do, not the responses)
    t
    m
    • 3
    • 3
  • c

    calm-greece-42329

    02/04/2020, 6:11 PM
    is there an existing tool for transliterating k8s CRDs to pulumi types?
    g
    s
    b
    • 4
    • 10
  • m

    most-football-81032

    02/04/2020, 6:29 PM
    i'm not sure if this is the right place but i'm looking for help renaming my account in pulumi
    c
    • 2
    • 1
  • w

    worried-engineer-33884

    02/04/2020, 9:35 PM
    @gentle-diamond-70147 feature request: would like to be able to see more details about our yearly subscription from the web UI, e.g. payment history and upcoming subscription renewal date.
    👍 1
    g
    • 2
    • 1
  • m

    many-garden-84306

    02/04/2020, 9:57 PM
    Question: is there any way in the pulumi command line to get the current active stack name (and for that matter project name) without making a network request to the server. So far I have, the following, but they are both very slow:
    PULUMI_STACK_TAGS="$(pulumi stack tag ls --json)"
    PULUMI_PROJECT="$(echo "$PULUMI_STACK_TAGS" | jq -r .[\"pulumi:project\"])"
    PULUMI_CONFIG="$(pulumi config --json --show-secrets)"
    PULUMI_STACK_INFO="$(pulumi stack ls --json | jq '.[] | select(.current==true)')"
    PULUMI_STACK="$(echo "$PULUMI_STACK_INFO" | jq -r .name)"
    I realize there are command options, e.g., to just get a single stack tag, but doing so is just as slow so I might as well get all the tags at once and pull out what I need.
  • s

    some-waitress-78905

    02/04/2020, 10:01 PM
    hello I have a question too; I am trying to update cloudflare record, why is it spitting out this error?
    error: Failed to create record: error from makeRequest: HTTP status 400: content "{\"success\":false,\"errors\":[{\"code\":6003,\"message\":\"Invalid request headers\",\"error_chain\":[{\"code\":6103,\"message\":\"Invalid format for X-Auth-Key header\"}]}],\"messages\":[],\"result\":null}"
  • i

    icy-london-58403

    02/05/2020, 12:12 AM
    Question: Anyone know if there is a way to configure github using Pulumi? There is a terraform provider for GitHub but I can't find the same in the Pulumi Docs.
    b
    f
    m
    • 4
    • 9
  • b

    bored-river-53178

    02/05/2020, 1:00 AM
    is it possible to store k8s ConfigFile adjusted by transformations?
    w
    • 2
    • 2
  • s

    sparse-intern-71089

    02/05/2020, 5:32 AM
    This message was deleted.
    i
    • 2
    • 4
  • c

    cool-sunset-72357

    02/05/2020, 4:21 PM
    Is there a way to deploy using pulumi programmatically and without invoking the CLI? I have a use case that requires me to spin up and down subnets as necessary
  • c

    cool-sunset-72357

    02/05/2020, 4:49 PM
    I basically want to run "pulumi up" but from within my pulumi golang code and not via a cli
    c
    l
    • 3
    • 10
  • b

    bitter-dentist-28132

    02/05/2020, 6:52 PM
    is there a way to get the bucket name of an s3 bucket? from the api it looks like there's no property on a bucket that provides just the bucket name
    h
    t
    • 3
    • 4
  • w

    worried-engineer-33884

    02/05/2020, 9:58 PM
    We are having an issue where --target-dependents in a pulumi destroy execution does not always find/destroy dependents.  In this example there is a glue workflow Trigger resource that references this Crawler, but it is not detected/deleted when the crawler is destroyed. After the crawler is destroyed, any subsequent operation fails with:
    failed to verify snapshot: resource urn:pulumi:dev0::ucboitlake::aws:glue/trigger:Trigger::undergrad-admissions-crawler-trigger dependency urn:pulumi:dev0::ucboitlake::aws:glue/crawler:Crawler::undergrad-admissions-crawler refers to missing resource
    The Trigger is defined like this:
    export const undergradAdmissionsCrawlerTrigger = new aws.glue.Trigger(
        "undergrad-admissions-crawler-trigger",
        {
            actions: [
                {
                    crawlerName: catalog.undergradAdmissionsCrawler.name,
                },
            ],
            predicate: {
                conditions: [
                    {
                        jobName: jobs.admissionsActionsTransformationJob.name,
                        state: "SUCCEEDED",
                    },
                    {
                        jobName: jobs.admissionsSlateTransformationJob.name,
                        state: "SUCCEEDED",
                    },
                ],
            },
            type: "CONDITIONAL",
            workflowName: admissionsTransformationWorkflow.name,
        },
    );
    Note the reference to
    undergradAdmissionsCrawler.name
    which does create a dependency in the stack (verified via
    pulumi stack export
    ) but does not seem to get picked up by
    --target-dependents
    cc @dazzling-memory-8548
    Untitled
    g
    • 2
    • 2
  • f

    fast-dinner-32080

    02/05/2020, 11:08 PM
    Hey guys, I am trying to use the pulumi-tf-provider-boilerplate to build the Rancher RKE terraform provider at https://github.com/rancher/terraform-provider-rke I noticed most of the docs expect the provider to be in the terraform repo but after some tinkering I got pretty far to where all deps are loading and I am ready to run
    make
    . I am now running into an issue where make returns the error when it runs the TFGEN for each language.
    error: failed to gather package metadata: problem gathering resources: 1 error occurred:
    	* go/build: importGo <http://github.com/terraform-providers/terraform-provider-rke|github.com/terraform-providers/terraform-provider-rke>: exit status 1
    can't load package: package <http://github.com/terraform-providers/terraform-provider-rke|github.com/terraform-providers/terraform-provider-rke>: git ls-remote -q <https://github.com/terraform-providers/terraform-provider-rke>
    The issue here is it thinks the repo should be in the terraform-providers github but it is not. I make sure that this url/string is not present anywhere in the boilerplate code I have locally. I am thinking something in the build process or pulumi tool is hardcoded to use that url. Is there a configuration I am missing to change this url?
  • f

    fast-dinner-32080

    02/05/2020, 11:10 PM
    Navigating to the "/Users/mitch.maler/go/pkg/mod/cache/vcs/287dd56cfb744a07de36267b58832d03b517bb8ba253bf8f10080d2d2fb7c402" and listing its git remote shows it is set to the terraform repo.
  • c

    careful-market-30508

    02/05/2020, 11:10 PM
    pretty print pulumi.output - At present pprint(vars(server_object)) produces
    'address': <pulumi.output.Output object at 0x10f923a58>,
         'allocated_storage': <pulumi.output.Output object at 0x10f8fc048>,
         'allow_major_version_upgrade': <pulumi.output.Output object at 0x10f8fc128>,
         'apply_immediately': <pulumi.output.Output object at 0x10f8fc978>,
         'arn': <pulumi.output.Output object at 0x10f923b00>,
    What is the best way to convert entire object to string and print it e.g., the output of server_object = aws.rds.Instance(name,...
    g
    • 2
    • 8
  • f

    fast-dinner-32080

    02/05/2020, 11:35 PM
    Figured it out... well made it past that first error. You need to update the pulumi-tfgen and resources file and provide the provider options.
    func main() {
    	// Modify the path to point to the new provider
    	rkeProvider := rke.Provider()
    	rkeProvider.Repository = "<https://github.com/rancher/terraform-provider-rke>"
    	rkeProvider.GitHubOrg = "rancher"
    	tfgen.Main("rke", version.Version, rkeProvider)
    }
  • f

    fast-dinner-32080

    02/05/2020, 11:47 PM
    Now I am getting this error. Not sure if I will be able to successfully get this converted.
  • f

    fast-dinner-32080

    02/05/2020, 11:47 PM
    panic: fatal: A failure has occurred: Nested type "rke_clusterServicesEtcdArgs" declared by rke_cluster was already declared by rke_cluster
    
    goroutine 1 [running]:
    <http://github.com/pulumi/pulumi/pkg/util/contract.failfast(...)|github.com/pulumi/pulumi/pkg/util/contract.failfast(...)>
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi@v1.8.0/pkg/util/contract/failfast.go:23
    <http://github.com/pulumi/pulumi/pkg/util/contract.Failf(0x2c6daf1|github.com/pulumi/pulumi/pkg/util/contract.Failf(0x2c6daf1>, 0x38, 0xc0007d31e8, 0x3, 0x3)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi@v1.8.0/pkg/util/contract/fail.go:30 +0x181
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpNestedTypes).declareType(0xc00064e790|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpNestedTypes).declareType(0xc00064e790>, 0x304b380, 0xc0002489c0, 0xc0001a3f66, 0xb, 0xc0007281c0, 0xc, 0x2bfd6dc, 0x4, 0xc00001c3f0, ...)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:124 +0x589
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpNestedTypes).gatherFromPropertyType(0xc00064e790|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpNestedTypes).gatherFromPropertyType(0xc00064e790>, 0x304b380, 0xc0002489c0, 0xc0001a3f66, 0xb, 0xc0007281c0, 0xc, 0x2bfd6dc, 0x4, 0xc00001c3f0, ...)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:158 +0x187
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpNestedTypes).gatherFromProperties(0xc00064e790|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpNestedTypes).gatherFromProperties(0xc00064e790>, 0x304b380, 0xc0002489c0, 0xc0001a3f66, 0xb, 0x2bfd6dc, 0x4, 0xc0002f6e00, 0x21, 0x40, ...)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:145 +0xc6
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.gatherNestedTypesForModule(0xc000420000|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.gatherNestedTypesForModule(0xc000420000>, 0x7ffeefbff212)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:87 +0x1cf
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpGenerator).emitModule(0xc00010c000|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpGenerator).emitModule(0xc00010c000>, 0xc000420000, 0x2, 0x2, 0x0, 0xc0007d35c0, 0x104600e)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:336 +0x14b
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpGenerator).emitModules(0xc00010c000|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpGenerator).emitModules(0xc00010c000>, 0xc00062b310, 0x1, 0x1, 0x2, 0xc0005357c0, 0x1)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:296 +0x119
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpGenerator).emitPackage(0xc00010c000|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*csharpGenerator).emitPackage(0xc00010c000>, 0xc00062b310, 0x1c0, 0x0)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate_csharp.go:228 +0xab
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*generator).Generate(0xc00059ac00|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.(*generator).Generate(0xc00059ac00>, 0x3, 0x30500c0)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/generate.go:501 +0xaf
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.newTFGenCmd.func1(0xc00048d680|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.newTFGenCmd.func1(0xc00048d680>, 0xc00062b2c0, 0x1, 0x5, 0x6, 0x6)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/main.go:66 +0x11f
    <http://github.com/pulumi/pulumi/pkg/util/cmdutil.RunFunc.func1(0xc00048d680|github.com/pulumi/pulumi/pkg/util/cmdutil.RunFunc.func1(0xc00048d680>, 0xc00062b2c0, 0x1, 0x5, 0xc00069b9f8, 0x1367d74)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi@v1.8.0/pkg/util/cmdutil/exit.go:96 +0x51
    <http://github.com/pulumi/pulumi/pkg/util/cmdutil.RunResultFunc.func1(0xc00048d680|github.com/pulumi/pulumi/pkg/util/cmdutil.RunResultFunc.func1(0xc00048d680>, 0xc00062b2c0, 0x1, 0x5)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi@v1.8.0/pkg/util/cmdutil/exit.go:112 +0x6b
    <http://github.com/spf13/cobra.(*Command).execute(0xc00048d680|github.com/spf13/cobra.(*Command).execute(0xc00048d680>, 0xc0000dc130, 0x5, 0x5, 0xc00048d680, 0xc0000dc130)
    	/Users/mitch.maler/go/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:830 +0x2aa
    <http://github.com/spf13/cobra.(*Command).ExecuteC(0xc00048d680|github.com/spf13/cobra.(*Command).ExecuteC(0xc00048d680>, 0x3, 0x30500c0, 0x24)
    	/Users/mitch.maler/go/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:914 +0x2fb
    <http://github.com/spf13/cobra.(*Command).Execute(...)|github.com/spf13/cobra.(*Command).Execute(...)>
    	/Users/mitch.maler/go/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:864
    <http://github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.Main(0x2bfd293|github.com/pulumi/pulumi-terraform-bridge/pkg/tfgen.Main(0x2bfd293>, 0x3, 0x30500c0, 0x24, 0xc0006ca780, 0x2bfd293, 0x3, 0x0, 0x0, 0x2c02658, ...)
    	/Users/mitch.maler/go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge@v1.5.2/pkg/tfgen/main.go:31 +0x9b
    main.main()
    	/Users/mitch.maler/downloads/pulumi-rke/cmd/pulumi-tfgen-rke/main.go:29 +0xdc
    make: *** [build] Error 3
    w
    • 2
    • 4
  • n

    numerous-ambulance-45932

    02/06/2020, 12:05 AM
    We're getting an access denied error when attempting to download pulumi cli.
    l
    • 2
    • 3
  • n

    numerous-ambulance-45932

    02/06/2020, 12:06 AM
    https://get.pulumi.com/releases/sdk/pulumi-v1.10.0-windows-x64.zip
  • n

    numerous-ambulance-45932

    02/06/2020, 12:08 AM
  • b

    broad-church-78931

    02/06/2020, 5:28 AM
    How can I make Pulumi use a custom AWS endpoint's with Python? This does not seem to work:
    from pulumi_aws import provider, s3
    
    aws = provider.Provider("aws", endpoints={"S3": "<http://localstack:4572>"})
    
    web_bucket = s3.Bucket('s3-website-bucket', website={
        "index_document": "index.html",
    })
    w
    c
    m
    • 4
    • 7
  • b

    bored-river-53178

    02/06/2020, 8:21 AM
    Is there any way to create an RDS instance, make it publicly accessible, create a database (with
    @pulumi/mysql
    , for example) and then remove public access from the instance? I would like to automate database creation in RDS with pulumi, but don't want to make my instances publicly available. Right now the only alternative I see is using lambda.
    m
    • 2
    • 3
  • f

    faint-motherboard-95438

    02/06/2020, 11:20 AM
    Hi there, I have an open question for you all, which is a more wide subject than just Pulumi. I have several cloud projects to manage (with Pulumi), and each time I need to change something, deploy a new service or spawn a new stack I end up with the same problem : a bunch of things have changed and I have to spend minutes/hours to figure out what’s wrong, fix it and then only I can do what I wanted to do… until next time. That can be an apiVersion outdated, gcloud that suddenly decided to change a bunch of things, etc So my question is, how are you all coping with that, can’t we have a stable environment for more than a month straight ? Would be useful to share tips here.
    b
    • 2
    • 1
  • f

    faint-motherboard-95438

    02/06/2020, 12:14 PM
    Is that a Pulumi issue ? I’ve updated everything I could, but can’t get rid of it. Creating a
    gcp.container.NodePool
    (from a code which was working fine for more than a year now) returns :
    gcp:container:NodePool ([clustername]-cluster-pool-main):
        error: error creating NodePool: googleapi: got HTTP response code 404 with body: <!DOCTYPE html>
        <html lang=en>
          <meta charset=utf-8>
          <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">
          <title>Error 404 (Not Found)!!1</title>
          <style>
            *{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(<//www.google.com/images/errors/robot.png>) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(<//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png>) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(<//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png>) no-repeat 0% 0%/100% 100%;-moz-border-image:url(<//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png>) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(<//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png>) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}
          </style>
          <a href=<//www.google.com/>><span id=logo aria-label=Google></span></a>
          <p><b>404.</b> <ins>That's an error.</ins>
          <p>The requested URL <code>/v1beta1/projects/[project_name]/locations/europe-west1-b/clusters/projects/[project_name]/locations/europe-west1-b/clusters/[cluster_name]/nodePools?alt=json&prettyPrint=false</code> was not found on this server.  <ins>That's all we know.</ins>
    b
    w
    • 3
    • 10
  • b

    best-waiter-16927

    02/06/2020, 2:38 PM
    Hey! We need a way to distinguish between different
    pulumi up
    failures (conflict, pending resources etc.). Other than running grep on output is there any other way? f.e. different exit codes to different errors?
    w
    i
    • 3
    • 6
Powered by Linen
Title
b

best-waiter-16927

02/06/2020, 2:38 PM
Hey! We need a way to distinguish between different
pulumi up
failures (conflict, pending resources etc.). Other than running grep on output is there any other way? f.e. different exit codes to different errors?
w

white-balloon-205

02/06/2020, 3:43 PM
Currently we don’t have differentiated exit codes. Can you give more details on the errors you are trying to distinguish between? Would love to understand whether they are something we could ever imagine differentiating based on exit code - or whether they will better be solved by including error information in
—json
output or similar.
i

incalculable-diamond-5088

02/06/2020, 3:51 PM
That’s super useful! We’d like to have this for potential automatic recovery during deployments and/or taking other action (notifying) depending on the error
b

best-waiter-16927

02/06/2020, 3:58 PM
For example we would like to have a self healing automation in our deployment flow in case we failed with a 'pending resources' failure (fix stack and continue with deployment). In general i think it's a good practice (and a well adopted one) to have different exit codes to different errors in any CLI tool
Another example, in case of a conflict error (update already in progress) we might want to add a sleep to the process rather than fail the whole deployment. Regarding your suggestion, adding error information to json output is not that different than grep on stdout\stderr and might be more suitable to API calls but not to the pulumi CLI tool.
w

white-balloon-205

02/06/2020, 4:49 PM
Great. Those two examples are definitely things we could distinguish as unique exit codes. Would you mind opening an issue to suggest this? (I actually thought there was one already - we’ve definitely talked about this before - but couldn’t find it in a quick search).
b

best-waiter-16927

02/09/2020, 1:01 PM
Thanks @white-balloon-205 for your help! Opened an issue for this purpose: https://github.com/pulumi/pulumi/issues/3897
👍 1
View count: 1