Remix.run Logo
vbernat 3 days ago

It's odd to always say "Hashicorp, an IBM company". Looks like they want to assign blame.

I did try Pulumi a while back, but the compatibility with Terraform modules was not great, so I've switched to CDKTF, which can handle unmodified modules. Dunno if I'll switch back to Pulumi or just use OpenTofu directly.

jjice 3 days ago | parent | next [-]

> It's odd to always say "Hashicorp, an IBM company". Looks like they want to assign blame.

All their branding does this now, including the HashiCorp logo on their website [0]. There's gotta be a name for this specific branding pattern, but I don't know it.

[0] https://www.hashicorp.com/en/blog/products/terraform

stingraycharles 2 days ago | parent | next [-]

It’s endorsed branding. Basically when a parent company “endorses” its subsidiaries’ brands, but keep their own name (as opposed to renaming everything to IBM, like eg Google would do).

huddo121 3 days ago | parent | prev | next [-]

Metastatized branding

3 days ago | parent | prev [-]
[deleted]
pretext-1 3 days ago | parent | prev | next [-]

I was recently working for a company which got acquired by IBM and we had to do it too. It’s an IBM thing. I bet most people at HashiCorp hate it, at least that was the case for us.

dandellion 3 days ago | parent [-]

Makes IBM look really bad. Do they also force people to bow when the CEO of IBM enters the room, and address them as sir or your highness?

miki123211 3 days ago | parent [-]

They used to have their employees sign songs praising the company...

Granted, that was in the 1930s or something, but still.

abhiyerra 3 days ago | parent [-]

I remember it being a part of the movie Pirates of Silicon Valley and thought it couldn’t be true. But apparently it was.

https://youtu.be/VyQEbLx6AEY?si=CwhqHQEdFGCsE33l

dandellion 2 days ago | parent [-]

Wow, the truth is stranger than fiction.

packetlost 3 days ago | parent | prev | next [-]

I have absolutely nothing good to say about Pulumi. Stay far, far away.

willio58 3 days ago | parent | next [-]

My experience with Pulumi is you can write bad pulumi code and good pulumi code and just like everything else, it's easy to end up in a codebase where one poor soul was tasked with writing it all and they didn't do the best job with it.

here2learnstuff 3 days ago | parent | prev | next [-]

Please expand on your experiences, because I've had great luck with Pulumi at my company since October 2021. No engineer liked HCL, our demographic was engineers who were familiar with programming languages who wanted to self service basic infrastructure (AWS SecretsManager, IRSA roles, Databricks Service Principals, etc). We were pretty easily able to shim in a RunAtlantis inspired system that displayed previews that required explicit approval when a PR was raised, performed apply on merge to main, and ran drift checks periodically.

Garlef 2 days ago | parent | next [-]

Their stack builds a lot of abstractions on top of each other and this works only well as long as you don't deviate from the beaten path.

One example:

You can't really build custom TS providers for AWS resources.

Why?

Because this feature is built using the compilation magic that makes inline lambdas work.

But the compilation step omits the AWS SDKs since these are present in a lambda anyways. So you can't use the AWS SDK in custom providers.

lokar 3 days ago | parent | prev [-]

For me, the ideal is each team owns its own config/lifecycle mgmt, and does it in the language they wrote the rest of the system in.

weakfish 3 days ago | parent | prev | next [-]

Why? I’ve had nothing but good experiences, but I don’t run it and the team that does is extremely competent

jen20 3 days ago | parent | prev | next [-]

Strange, I have a lot of good things to say about both it and Terraform.

Probably some specifics might be more useful there...

3 days ago | parent [-]
[deleted]
katdork 3 days ago | parent | prev | next [-]

My experience is that by stealing providers from Terraform, they failed to properly handle statically typed languages (Go) with certain providers (HCloud); I had problems with their ID type and had to abandon my Pulumi setup.

purpleidea 2 days ago | parent | prev | next [-]

Have a look at https://github.com/purpleidea/mgmt/ and tell me what you think. We don't have enough docs though. Tough being an open source thing that you want to keep open.

lighthazard 3 days ago | parent | prev | next [-]

Running SST with Pulumi and it's been a great experience. Infrastructure and maintenance has been pleasant and SST's pre-fabs really make things easy to spin up resources.

mfornasa 3 days ago | parent | prev [-]

please expand on this, I am interested (for real!)

smithcoin 3 days ago | parent | prev | next [-]

We use OpenTofu it’s pretty seamless

benatkin 3 days ago | parent | next [-]

Now more will be using a combination of OpenTofu and Terraform, and there will probably be some tacit endorsement of OpenTofu by Hashicorp folks in their communication with those who are using both. Good to see!

Hamuko 3 days ago | parent | prev [-]

Does it do ephemeral values yet?

cube2222 3 days ago | parent [-]

Yep, as of yesterday’s 1.11 release it’s supported!

That also includes a new “enabled” meta argument, so you don’t have to hack around conditional resources with count = 0.

[0]: https://opentofu.org/blog/opentofu-1-11-0/

Disclaimer: affiliated with the project

lijok 3 days ago | parent | next [-]

How do you migrate from count/for_each to `enabled` ?

cube2222 3 days ago | parent [-]

You can just switch from `count = 1` to `enabled = true` (or vice-versa, works back-and-forth) for a resource and tofu will automatically move it next time you apply.

It's pretty seamless.

joombaga 3 days ago | parent | next [-]

That's cool! We'll still need to change all of the references to `resource[0]`, right? Or does tofu obviate that need as well?

cube2222 3 days ago | parent [-]

I’m not sure I understand. You refer to the conditional resource fields normally - without list indices. You just have to make sure the object isn’t null.

There’s some samples in the docs[0] on safe access patterns!

[0]: https://opentofu.org/docs/language/meta-arguments/enabled/

darkwater 2 days ago | parent | prev | next [-]

And you don't get the annoying array form for the resulting resource with the `enabled` syntax, right?

EDIT: Oh just realized the sibling asked the same, but the doc doesn't state that clearly, although it seems to me that the doc implies that yeah, it doesn't use the array form anymore.

cube2222 2 days ago | parent [-]

Yes indeed! It does not use the annoying array form.

darkwater a day ago | parent [-]

Worth switching to Opentofu only for this, then! I fuckin hate the count pattern for conditional present/not present that leads to an array of size == 1.

lijok 3 days ago | parent | prev [-]

Amazing. Good work !

Hamuko 3 days ago | parent | prev [-]

Damn, might finally be able to use it. The lack of ephemeral values was a major blocker.

atonse 3 days ago | parent | prev | next [-]

I was thinking the same thing about the "an IBM company". My guess is that it's a lazy find/replace.

Pet_Ant 3 days ago | parent | next [-]

I assume it's a matter of branding and making IBM look more modern by associating with the Hashicorp brand.

cr125rider 3 days ago | parent | prev [-]

It’s one thing to say it once but 3 times in the same paragraph seems weird for sure!

selkin 3 days ago | parent | prev | next [-]

> It's odd to always say "Hashicorp, an IBM company". Looks like they want to assign blame.

Or it's legal trying to preempt a risk.

If it was the author just wanting to point at IBM, they'd mention it just once or twice, but using that awkward phrase throughout the text makes me think it was an edit mandated by a careful lawyer.

nsonha 3 days ago | parent | prev | next [-]

"Hashicorp, an IBM company"

Common sense would be IBM mandating that branding, as opposed to Hashicorp.

roboben 3 days ago | parent | prev | next [-]

They should have renamed it first to HashiCorp, an IBM Company CDK, then shut it down

firesteelrain 3 days ago | parent | prev [-]

It’s how Red Hat identifies themselves too

viraptor 3 days ago | parent | next [-]

It's common when corps buy large enough companies that they don't want to kill the original brand. That's why you get hotels like "(something) by Hilton".

richardfontana 3 days ago | parent | prev [-]

Do you mean Red Hat identifies itself using the phrase "Red Hat, an IBM Company"? Because I don't see any use of this on redhat.com (including that website's corporate "about" content) and if any Red Hatters are using this phrasing (I'm a current Red Hat employee) I haven't been aware of it.

firesteelrain 3 days ago | parent [-]

I have seen it in several articles. (I don’t work for HashiCorp or Red Hat subsidiaries so no idea what is said or done inside those subs)

1. https://business.adobe.com/customer-success-stories/red-hat....

2. https://www.openpr.com/news/4100338/linux-operating-system-m...

richardfontana 3 days ago | parent [-]

You said "It’s how Red Hat identifies themselves too" but those two articles are not by Red Hat. So ... it's not how Red Hat identifies themselves, though it seems to be how Hashicorp identifies themselves.