Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Open Source Linux

Terraform Fork Gets Renamed OpenTofu, Joins Linux Foundation (techcrunch.com) 30

An anonymous reader quotes a report from TechCrunch: When HashiCorp announced it was changing its Terraform license in August, it set off a firestorm in the open source community, and actually represented an existential threat to startups that were built on top of the popular open source project. The community went into action and within weeks they had written a manifesto, and soon after that launched an official fork called OpenTF. Today, that group went a step further when the Linux Foundation announced OpenTofu, the official name for the Terraform fork, which will live forever under the auspices of the foundation as an open source project. At the same time, the project announced it would be applying for entry into the Cloud Native Computing Foundation (CNCF).

"OpenTofu is an open and community-driven response to Terraform's recently announced license change from a Mozilla Public License v2.0 (MPLv2) to a Business Source License v1.1 providing everyone with a reliable, open source alternative under a neutral governance model," the foundation said in a statement. The name is deliberately playful says Yevgeniy (Jim) Brikman from the OpenTofu founding team, who is also co-founder of Gruntwork. "I'm glad your reaction was to laugh. That's a good thing. We're trying to keep things a little more humorous," Brikman told TechCrunch, but the group is dead serious when it comes to building an open fork. [...]

"The first thing was to get an alpha release out there. So you can go to the OpenTofu website and download OpenTofu and start using it and trying it out," he said. "Then the next thing is a stable release. That's coming in the very near future, but there's work to do. Once you have a stable release, people can start using it. Then we can start growing adoption, and once we start growing adoption, some of the big players will start stepping in when some of the big players start stepping in other big players will start stepping in as well."

This discussion has been archived. No new comments can be posted.

Terraform Fork Gets Renamed OpenTofu, Joins Linux Foundation

Comments Filter:
  • by HiThere ( 15173 ) <charleshixsn.earthlink@net> on Wednesday September 20, 2023 @05:25PM (#63864352)

    IIUC, after following links to the Terraform site, this is a tool for automating something about running stuff in the cloud. I'm sure both parties would like a more elegant description of what they do, but they don't seem to offer one.

    • I'm glad I'm not the only one who didn't know what this was or why it matters.
      • by kellin ( 28417 )

        Make it three. I came to read the comments to see how out of touch I've become.. c

    • My wife bought some tofu at Whole Foods a few weeks ago and the package was leaking so she returned it. Open Tofu is bad.
    • by bento ( 19178 ) on Wednesday September 20, 2023 @05:45PM (#63864398) Homepage
      It's a framework and DSL for provisioning cloud resources. It gives you some nice properties for managing them and making changes to their state of composition. What's nice about terraform/opentofu in a theoretical sense is that you can use a single tool to deploy and manage the configuration of resources with multiple cloud providers. It has built in support for AWS, GCP, Azure and others. What's not so nice about it is that these aren't abstracted in anyway so how you provision compute resources for each of these services is slightly different, so if you are doing something with multiple providers that are similar you have to write separate code to manage them. I got pretty deep into terraform a couple years back for an employer. I'd been using the AWS specific CloudFormation prior to that with some success. The employer had actually made the decision to move to terraform before I joined based on a misunderstanding of how its support for multiple clouds worked. It worked pretty well for us at the time trying to manage the configuration of resources for a system with hundreds of microservices. The DSL for it is "okay" but had many restrictions which made some tasks annoying. We built a lot of scripting around the management and maintenance of our DSLs using a mix of shell scripting and Python. Haven't worked with it in a few years since I moved on to other kinds of work.
      • by Anonymous Coward
        Don't forget to add if you are using anything newish in azure or as then terraform will invariably have no support or dodgy support for the services till several months post release.
    • by gweihir ( 88907 )

      Automated system landscape deployment for the cloud, i.e. "infrastructure as code". Essentially you describe what you want, point it at a cloud, and it builds this for you. The advantage is that recreating the installation and, if done right, even moving it to a different cloud is very easy. The disadvantage is that it needs more up-front effort. I have an audit-customer that does this and it seems to work pretty well for their case. It also makes recovery tests very easy.

      • by narcc ( 412956 ) on Wednesday September 20, 2023 @06:46PM (#63864492) Journal

        From what I've been reading, Terraform doesn't really abstract different cloud providers, leaving you to modify a lot of code if you move something from one provider to another anyway. I'm having a hard time seeing the advantage of something like that over conventional shell scripts.

        • by NaCh0 ( 6124 )

          Well, you see... Chewbacca was a wookie...

          You nailed it though. This thing is shell scripts for javascript kids and millenials. But it's for the cloud... not your grandpa's command shell.

        • by kriston ( 7886 )

          Terraform doesn't really abstract different cloud providers

          That's unfortunately right. Broke my heart that I had to write different code for different cloud providers.

        • by micheas ( 231635 )

          A big advantage of opentofu is that it can get the state of the system and compare it to the state that the system was last put in by opentofu.

          It also allows you to see some of the proposed changes so you can see what the scripts are going to change.

          There are extensions that can do things like take your opentofu pull request and figure out how much a month increase or decrease in spend the pr is going to cost you. This allows you to make rules like PRs that are estimated to cost more than $2k a month requi

        • by gweihir ( 88907 )

          It depends. It is a bit more than "shell scripts" though. Do some automated deployment (I have experience with cluster installation using FAI) and you will notice that this is one of those things that look easy, but are very much not.

        • Yeah- that's true. You do have to maintain separate versions of your terraform code for different providers, which is a bummer.

          The advantage over shell scripts that I haven't really seen anyone mention here directly is that terraform develops and maintains a graph model of your infrastructure state. As things change, it can figure out what infrastructure pieces need to be updated and then update them. If you are in a scenario where you have, say, a mix of cloudflare, digitalocean, and any number of other 3r

    • Everything is too hard, so we come up with our own pet tool to configure it.
      Then we need to make it cross-platform and dynamic.
      Terraform's virtue is that it factors out the provider, e.g. AWS or Google, and lets you describe a linux instance in an agnostic way.
      Think of it as an ORM for cloud hosts.
      Which is awesome in a heterogeneous environment.
      The other 99% of us don't have this problem, and can just code AWS in boto3 and get on with it.
      Yet Another Monkey Fighting Configuration Language (YAMFCL) is a
    • Genuine question: how does somebody who doesnâ(TM)t know what Terraform even is end up reading Slashdot?

      • by HiThere ( 15173 )

        Well, I've been a programmer in many different languages for quite a long time, but I've never had, or wanted to have, anything to do with the cloud.

      • by Anonymous Coward

        Genuine question: how does somebody who doesnâ(TM)t know what Terraform even is end up reading Slashdot?

        Well, probably because Terraform did not exist (for over a decade and a half) when we started to read Slashdot.

    • It is a BS service to BS your BS services.

      In other words: it is BS.

    • It's a command-line tool that keeps a dependency chain of different "resources" that it can "create", "update", or "destroy", and it does all this by using plugins called "providers", that just call HTTP REST APIs. You tell it what to do with a domain-specific language called HashiCorp Language (HCL).

      That's it.

  • By community, you mean a group that is solely made up of the businesses that were "free loading" off of HashiCorp and competing directly against them with there work... okay. Sure... they're only doing this in the name of principles..

    • And not surprisingly their stock is very near it's all time low even when the rest of the tech market recovered (mostly) from the Covid era. I've been watching them since IPO but never convinced myself to buy any.

      On the one hand I feel bad for them putting in effort and not making enough money to run a successful business, however, they chose to go open source and there's a cost to that they were unwilling to pay. No one owes anyone a successful business model.

    • Re: "the community" (Score:4, Informative)

      by kiphat ( 809902 ) on Wednesday September 20, 2023 @07:37PM (#63864568)
      Hashicorp wrote a tool for the masses, which they made freely available via the Mozilla Public License. Other developers came along and decided to use that tool as the basis for a framework, which they spent time and money on, that provides a better solution than the one that Hashicorp provides (Terraform Cloud). Those same developers either contributed, or tried to contribute to the Terraform codebase in an effort to improve the base product. Hashicorp now sees these entities as a threat to their own business model because their product is superior to their own. So instead of learning from their competitors in order to improve their own product, Hashicorp decides to try and stifle them by changing the license for Terraform and trying to cut them off at the knees. There is no freeloading here. This is Hashicorp showing its poor sportsmanship with their attempts to strongarm the competition. I foresee this will not bode well for them.
    • No. Hashicorp actively blocks collaboration. This is about liberating what they took from the community and tried to monetize
    • The whole ecosystem of complex tools to solve problems created by other criminally over-complicated tools, terraform/AWS and everything else cloud, can go die in a fire. I really don't care who takes whose ideas or money in that shitshow.

      The devops movement is embarrassing. It's all fun and games until you reach templated terraform or have to debug cloudinit. All of it can go to hell.

  • by dohzer ( 867770 )

    You might be gone, Terraform Fork, but your legend will live on!

  • by peterww ( 6558522 ) on Wednesday September 20, 2023 @08:08PM (#63864604)

    it's a foundation, or genuine grassroots community.

    When an "open source project" is actually hosted, funded, and led by a single company, it's not really open source. It may be in letter, as in, their license is open source, they allow people to submit bug reports, etc. But they will also reject feature requests, issues, pull requests, UX changes, and other highly requested changes, if it goes against the "philosophy" (e.g. business goals) of "their" project.

    Only when a project is organized and maintained by a diverse group of people without a singular motive does it become a really *good* Open Source project. You need to be able to argue for a change on the merits, and take votes from the entire community, and then actually do what was voted on. Or at least just be open to change, however radical, as long as it's what the users want. (Radical changes should be welcomed on an "alpha" or "unstable" release branch, where anything can break and you can experiment; the Linux kernel for example uses odd-numbered major releases to let crazy changes cook for a while before finally turning it into an "even" stable release branch)

    Terraform has long excluded widely desired changes because it either went against their company's head engineer's "philosophy" for the tool, or it would cause some extra work for their customer support to explain to customers about the change, or it would just take away from their profit motive of you needing to pay for their "management" product. Simple stuff like just importing existing cloud resources has always been like wearing a hair shirt; you're punished by having to do a bunch of manual shit for 30 minutes that an algorithm could do for you in seconds.

    If indeed this is being led by a foundation, and isn't just Gruntwork's new baby that they will refuse changes to if it competes with their corporate interests, then maybe, MAYBE, Terraform will finally get all the annoying stupid bullshit fixed. If not, then we should actually just abandon Terraform and its forks altogether. Otherwise we will be stuck in this backwards-ass world where you have to pay a "Terraform Admin" to learn all the backwards-ass bullshit needed to use the damn tool without blowing up production.

    • by unrtst ( 777550 )

      When an "open source project" is actually hosted, funded, and led by a single company, it's not really open source.

      TLDR the rest. This is absolute BS. The fact that an author can dual license or change the license of their own code is a tremendous feature of open source, and this is a fucking fantastic example - the community immediately forked and will continue on. THAT WOULD NOT HAPPEN IF IT WERE NOT OPEN SOURCE.

      Hashicorp "tried" to pull the rug out from under them, but the rug wasn't needed and was no real loss to the users. How is this not simply terrific news for open source?

      • What is it you think happened that was so great? What *materially* happened here? You had a free product, and it will remain free, under slightly different terms: "service providers" can't compete on the SaaS offerings that HashiCorp makes that utilize Terraform. So the fork comes along. Hooray! Open Source saves the day, the competing service providers can stay in business!

        But what about the users?

        From https://www.theregister.com/20... [theregister.com] :

        "Joe Duffy, founder and CEO of rival infrastructure-as-code vendor Pul

        • by unrtst ( 777550 )

          What is it you think happened that was so great? What *materially* happened here?

          "Joe Duffy, founder and CEO of rival infrastructure-as-code vendor Pulumi, said: "The blog post is disingenuous. We tried many times to contribute upstream fixes to Terraform providers, but HashiCorp would never accept them. So we've had to maintain forks. They lost their OSS DNA a long time ago, and this move just puts the final nail in the coffin.""

          What happened that was so great? Well, those other implementations were possible in the first place. Then, they were able to change the implementation as they saw fit, AND they could even build a business around that. They could have fully forked and did whatever they wanted with it. That's freaking incredible! And all their changes are made available to all of their users!!! How is that not fantastic?

          The "Open Source" aspect was effectively only useful for getting a product for free.

          Again, BS. They didn't just get the product for free. They also got all the source code, the option (which

I've noticed several design suggestions in your code.

Working...