Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom engine compilation and upload to S3 #4088

Open
applicazza opened this issue Jul 28, 2023 · 3 comments
Open

Custom engine compilation and upload to S3 #4088

applicazza opened this issue Jul 28, 2023 · 3 comments

Comments

@applicazza
Copy link

Is there any step by step guide how to compile and release (i.e. upload to custom s3 bucket) modified version of prisms engines? I am maintaining a fork of prisma-engines for my organization that doesn’t drop rows that have 0000-00-00 00:00:00 in datetime columns and would like to automate the process.

@janpio
Copy link
Contributor

janpio commented Jul 28, 2023

Our process is unfortunately in a closed source Rust project (engineer) that is run in our Buildkite CI at the moment.

It's nothing fancy really, but because of historical security concerns we can not open source it - and you would also definitely want to do it this way as it is hard to maintain and evolve. We have on our list to move this so something more accessible for ages, but never get to it because the existing setup works ok-ish.

This screenshot shows all the builds we currently create and then upload to S3:
image
These jobs all run on specific Docker images like prismagraphql/build:rhel-libssl1.0.x so they have the correct stuff available to include in the build.

Do you have to build for all operating systems and combinations or does your org only use Prisma in a specific environment? That would bring down the complexity a lot.

@applicazza
Copy link
Author

Our process is unfortunately in a closed source Rust project (engineer) that is run in our Buildkite CI at the moment.

It's nothing fancy really, but because of historical security concerns we can not open source it - and you would also definitely want to do it this way as it is hard to maintain and evolve. We have on our list to move this so something more accessible for ages, but never get to it because the existing setup works ok-ish.

This screenshot shows all the builds we currently create and then upload to S3: image These jobs all run on specific Docker images like prismagraphql/build:rhel-libssl1.0.x so they have the correct stuff available to include in the build.

Do you have to build for all operating systems and combinations or does your org only use Prisma in a specific environment? That would bring down the complexity a lot.

Hey, thanks for blazing fast answer.

We use apple intel, apple silicon and Linux musl and work with MySQL and MongoDB

@janpio
Copy link
Contributor

janpio commented Jul 28, 2023

As far as I could figure out, these are the underlying build images and command that are being run there:

That might be enough for you to put this into a GH Actions workflow that you can easily run on push, tag or release in your fork.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants