Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

Deprecating Terrajet #308

Closed
muvaf opened this issue Nov 3, 2022 · 4 comments · Fixed by #309
Closed

Deprecating Terrajet #308

muvaf opened this issue Nov 3, 2022 · 4 comments · Fixed by #309
Assignees
Labels
enhancement New feature or request

Comments

@muvaf
Copy link
Member

muvaf commented Nov 3, 2022

When we introduced Terrajet over a year ago it proved to be an effective means to help close the provider coverage gap the Crossplane community experienced.

As time passed and we learned more about the requirements of users of Crossplane we realized that the quality of the providers is very important as people started using Crossplane in production.

This led to Upbound creating Upjet, a second-generation tool, based on the approach we introduced with Terrajet, but importantly one that is more stable, has more customization points, and includes a documentation generator to get to a production-ready provider faster. Our first set of Upbound Official Providers (upbound/provider-aws, upbound/provider-azure, and upbound/provider-gcp - are all built on Upjet. There is a provider repo template as well. Official providers and Upjet share the same license with Crossplane and Terrajet - Apache 2.0 - and they welcome contributions from the community.

The Upjet-based providers for AWS, Azure, and GCP offer many advantages over their Terrajet-based ones. They have the highest number of CRDs at the v1beta1 quality level and are tested continuously. There is also detailed documentation available in the Upbound Marketplace. Read more about the official providers here.

Moving forward Upbound will focus all of its efforts on maintaining and improving Upjet and will stop maintaining Terrajet, and the Terrajet-based providers for crossplane-contrib/provider-jet-aws, crossplane-contrib/provider-jet-gcp, and crossplane-contrib/provider-jet-azure.

To help the community move towards using Upjet instead of Terrajet we will be doing the following over the next few weeks:

  • For provider authors: Provide a migration path to switching existing Terrajet-based providers to use Upjet.
    • There are providers already switching since it's a drop-in replacement with a few signature change if you don't want to use the new features, like doc generation, reference inference etc.
  • For users of Terrajet-based providers

Our intention is to put a deprecation notice to READMEs and archive the Terrajet repository, and mentioned Terrajet-based providers in 6 weeks' time on 2022-12-15. All CRDs generated by Terrajet so far has been at v1alpha level, meaning they may be dropped in future releases but we are aware that there are users that are running these providers in production. This transition time is there to help out with any critical bugs needed to be fixed during the migration.

The full list of impacted repositories:

If someone in the community would like to continue working on Terrajet and the Terrajet-based providers for AWS, GCP, and Azure, they are welcome to fork the repo and continue the work there.

@ulucinar @turkenh @sergenyalcin As other owners of these repos, could you give your thumbs up if all that sounds good to you? I'll open PRs that add a deprecation notice to the readmes of these repos.

@muvaf muvaf added the enhancement New feature or request label Nov 3, 2022
@muvaf muvaf self-assigned this Nov 3, 2022
@sergenyalcin
Copy link
Member

All that sounds good to me! +1

@turkenh
Copy link
Member

turkenh commented Nov 3, 2022

+1, SGTM as well.

@ulucinar
Copy link
Collaborator

ulucinar commented Nov 3, 2022

+1, sgtm.

@muvaf
Copy link
Member Author

muvaf commented Nov 3, 2022

FYI, I added https://github.com/crossplane-contrib/provider-jet-template to the list. Thanks @luebken for noticing!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants