Feature request: Removal of database hosting requirement during image build
One of the current restrictions of the cal.com project is the requirement of an active database connection during the build process. This is necessary for validating schemas, but should not be necessary if the schema has already been validated. This validation can also be run at test-time or run-time if it was allowed to be optional during the static site build.
That runtime check can be performed by this side of the docker project, but the change in requirement for the static site build needs to happen in the core project.
Note: This is most notably a challenge because self-hosted users are currently required to build their own image (as noted in #141). If users would not need to build their own image to run the project as-is, then this is less notable. It would still be a restriction for developers or those looking to make their own plugins or changes to the cal.com web project.
Currently the build flow is as follows:
- Check out this repository
- Change variables
- Set up a database
- Build an image
- Push the image to an image registry (requiring its own hosting)
- Set up deployment with configured variables & custom registry/image:tag path, which pulls and runs image
Desired flow would be as follows
- Set up deployment with configured variables & official registry/image:tag path, which pulls and runs image
The build requirement for having an active database at build time is creating significant automation and adoption challenges.
This is an often-requested feature, created this for easier tracking by the core team
@zomars
Yes we're working towards this. To achieve this we need to:
- Stop pre-rendering pages at build (rely exclusively on SSR & ISR)
- Implement missing skeletons so we can prerender those without depending on actual data
- Fix our dynamic routes that don't use data fetching methods
So that's basically it. And also make sure we can pre-render skeletons for each locale