10 months ago
Hello, I need to execute a cron job for my app which will modify something in the DB, I didn't find any examples or documentation regarding this.
I am using Next.js, Postgress and DrizzleORM
Any ideas?
0 Replies
10 months ago
do you already have a script to do your desired task?
Do I need to create a new project and deploy it? Can I use my existing Next.js app and use a file as a cron-job?
10 months ago
before we continue, please read this docs page so you can get your terminology correct.
If I understand correctly, I need to add a new service which will be the cron-job, right?
10 months ago
correct, there you go!
So I can create a new repo, add something like node-cron and deploy this service?
10 months ago
not quite, you would want to use railways cron scheduler
10 months ago
you can just have a script in your current repo to do your task, and have the cron service run it
Is this the cron service you are talking about? I don't see where to add my script
10 months ago
correct, and you would be looking for the start command, the start command is how you set the command that starts the script, for example node task.js
10 months ago
that's it
10 months ago
of course as you mentioned, you would want to set this up on a duplicate service
This is what I dont understand, this new service. Is there a template or something I need to use?
10 months ago
nope, right click duplicate, then set your cron schedule, and then set the start command to run whatever script you want ran on a schedule
Alright, going to test this method. Thanks a lot for your help and patience 😆
10 months ago
because you need two services, one service for nextjs, another service to run the cron job
10 months ago
a service can't do two different things
10 months ago
one service for one thing, hence the need for two
10 months ago
do you have a script that does your task?
10 months ago
or have you yet to write that code?
10 months ago
okay then that's the next thing you need to do before setting up cron on railway
Lets say I have this script in a file src/cron/script.js
Can I acces this in the start command like so? node src/cron/script.js
10 months ago
correct