Cloudflare pages: allow deploying without VCS

I would like to propose the addition of a CLI or API endpoints allowing developers to deploy to Cloudflare pages without an explicit integration with a VCS.

The reasons behind it can be:

  1. I am using a VCS platform not supported by Cloudflare pages.
  2. I would like to be in control of my own deployment pipeline and decide when to deploy after CI checks is performed on my own server (most important IMO)
  3. I want to speed things up and not having to rebuild an entire dependency tree for every build which has already been built during my CI step. Or, I simply want to deploy based on artefacts generated during my previous CI build step and not re-build from source.

I do appreciate that Cloudflare tries to make it easy for developers by providing a built-in integration with platforms such as GitHub, but in some cases, having the ability to control the process the way we want might be beneficial for those interested in using the Cloudflare hosting environment while still having control over their own CD pipeline.

For reference, both Netlify and Vercel provide a way to deploy through their CLI instead of solely relying on VCS.

It’s a known issue and it’s planned, we just don’t have a public ETA for this being fixed.

1 Like

Sounds great; I assume it’s the first on the list:

Source code hosting tools besides GitHub—for instance, BitBucket or Gitlab—are not currently supported.

I’d see more as a feature rather than a bug to be fixed, but it’s great to know it is planned.
Thanks for following up so quickly.

From what I know a beta endpoint already exists, but it’s not documented nor guaranteed to be static at this time. It won’t be long.

That’s interesting. But I’m afraid that’s not quite it as this endpoint seems to simply re-trigger the build hook integrated with the VCS.

The proposal here is to allow building from an external environment and deploy/upload artefacts to Cloudflare pages rather than relying on CF infrastructure for building the project.

Hopefully this makes sense.

Yeah, yeah. I know what you mean.

One solution would be to probably simply build and push to a repo which then simply deploys. As a workaround obviously.

1 Like