pulumi / pulumi-cloudflare

Pulumi's Cloudflare package, providing multi-language infrastructure as code for Cloudflare
Apache License 2.0
102 stars 13 forks source link

Ability to use `pulumi-cloudflare` with upstream pre-release versions #917

Open jacobbednarz opened 6 days ago

jacobbednarz commented 6 days ago

👋 greetings from the Cloudflare Terraform Provider maintainer

In the past, we've cut pre-release versions (0.0.0-rc1, 0.0.0-alpha1, etc) of the Terraform provider however, they haven't made it into the Pulumi ecosystem until after we've cut the stable releases. I spoke to Paul (when he was still around) and he mentioned this was intentional and at the time there was dependencies in the bridge around versioning and that it wasn't an easy fix without a bit of uplift which wasn't a good ROI at the time.

We haven't been too fussed with this as it wasn't a regular thing but recently, we announced we're generating the provider using OpenAPI schemas for our next major version and the ask for Pulumi support has come up again.

The road to v5 is going to be a very iterative one and in doing so, will have more frequent pre-release builds that people may want to test out and use. This will likely become a more pressing issue the more of these releases we do.

Last night I cut v5.0.0-alpha1 and confirmed it hasn't made it's way into the ecosystem. From our end, the release is no different to a non-preview release and still shows up the registry and registry API.

Would you be able to confirm:

  1. Is this expected?
  2. Is this something you'd be able to incorporate?
  3. Do you need anything further from us to make this functional?

Thanks!

guineveresaenger commented 6 days ago

Hi @jacobbednarz - greetings! Thank you so much for re-starting this conversation.

On our end, the issue is mostly the automation, which has to hold true across the provider ecosystem. This is very possible, but of course it is a matter of prioritization.

As an aside, we do not currently have the ability to publish multiple versions to the registry, so any prerelease would only be listed on GitHub.

We do have the ability to manually generate prereleases, but it's a manual process. One way to solve this would be for you to take over ownership and support of the pulumi-cloudflare provider, and we'd help you with that handover, of course. Then you could control releases and versions on your own schedule (and you'd still benefit from the current automation discovering new releases).

jacobbednarz commented 5 days ago

If the release is only on GitHub is this still easily accessible to Pulumi users if they try to pull that version? (sorry, I'm not familiar with the ecosystem)

As for the ownership conversation, after chatting with some folks internally, unfortunately we don't currently have the capacity or desire to bring another third party integration onboard at the moment. However, with our focus on using OpenAPI to generate the SDKs and the provider, that may free up resources in time but I don't have any better news in the short/medium term.