[Solved] Build/Deploy Reactioncommerce 1.4 with Custom Package


#1

I just migrated my packages from reactioncommerce 1.3 to the new JS-Standard for 1.4. Everything worked fine on my test server running a local reaction server with “reaction” command and placing the package into “~/reaction/imports/plugins/custom”. Now I try to find a solution to deploy it to our production server.

1st Idea was to put the package into the standard docker image of reactioncommerce but we couldn’t find a solution where to put it to make it load on an already compile reaction. Is that possible?

2nd Idea was running “meteor build” on the testserver creating a tar.gz and then executing a buildprocess to make it work on a production server. Which wasn’t running smooth because of the fibers package.

3rd Option was to setup the docker build which takes a very long time to debug the workflow but we got it finally to work.

Is there a possibility to speed up the build process for production and take advantage of developing the package separately or does it allway has to go through this complex build process?
I would appreciate if you could share some insights into the deployment chain and methods you are using to develop and operate your reactioncommerce solution.


#2

Hey @nenTi.

I know it doesn’t seem like it at first, but Docker is definitely going to be the least complex deployment method you have because you don’t need to set the server up from scratch yourself and it works the same way every time regardless of where you deploy it. But you’re right, the build currently takes a long time because it starts from a fresh operating system with nothing installed. It’s really only meant to be used for a production deployment (not app debugging). Is there something in particular you’re trying to debug about the build process or are you trying to debug your app?

Also, I’m working on an update to the Docker build that will skip past most of the OS dependency installs and start at the Meteor install. It still takes a bit to build the app, but the other base stuff doesn’t have to happen over and over. So it’s not as fast as running in local development mode, but that was never going to be an option anyway.