Monorepo Deploy

7 months ago

Does anyone have experience with monorepo deploy?

I have nest.js back that deploys fine, and vite react that I need proxy for, so I am trying out caddy and the config I found on the official file. But something is not working as intended since caddy is not serving front. How can I add command to just serve the front, and leave backend to work as is?

Solved

0 Replies

7 months ago

8f9a18e5-76b5-4894-a3fc-54f4ddfe030b


7 months ago

please share your repo



7 months ago

shared monorepo?


7 months ago

what do you mean?


7 months ago

is this a shared monorepo?


7 months ago

oh, yes it is shared monorepo


7 months ago

does the frontend actually use exports from other packages in the repo?


7 months ago

yes, it uses types defined in the backend


7 months ago

then you would not want to set a root directory


7 months ago

yeah, I do not use root directory, I am defining custom build commands. My idea was to somehow install caddy without disturbing backend, and then just serve frontend via caddy, backend is fine as it is


7 months ago

yes you do

1311793391993885000


7 months ago

yeah, that was a failed experiment 😄


7 months ago

I tried that, since other approach did not work


7 months ago

right so please remove 🙂


7 months ago

removed


7 months ago

you also don't wan't to use cd in build or start commands, if you end up using cd in such a senario, it is likely the incorrect solution


7 months ago

I will write scripts in root package.json to handle this


7 months ago

looks like you already have the script needed to build the frontend build:fe


7 months ago

created scripts to build from root folder


7 months ago

now all 3 services are running from root without cd


7 months ago

awsome, now you have to point nixpacks to the config file using a NIXPACKS_CONFIG_FILE service variable, and have a start script to start caddy


7 months ago

this would help me run custom nixpack for frontend only?


7 months ago

yes


7 months ago

aight, let me try it


7 months ago

cmds = [
'caddy fmt --overwrite ./Caddyfile',
] # format the Caddyfile to fix any formatting inconsistencies

this step fails, even though nixpack is in the same folder. I have tried writing just caddyfile. Should I put full path from root, something like apps/frontend/Caddyfile?


7 months ago

yeah you will need the full path


7 months ago

worked so far, I now get

1311801243168936000


7 months ago

but I assume I can figure it out from here, thanks!


7 months ago

awesome!


7 months ago

!s


Status changed to Solved brody 7 months ago