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

pm2 cron schedule starts immediately, but it should start next morning instead #5479

Closed
smartini87 opened this issue Nov 2, 2022 · 7 comments

Comments

@smartini87
Copy link

What's going wrong?

I set up the cron job like "*pm2 start index.js --cron '00 06 * * ' --no-autorestart" at 4pm and I expected pm2 to start the next morning at 6AM, but it immediately starts the node script. Is this intended that it "knows" it's after 6AM so just start it?

How could we reproduce this issue?

"pm2 start index.js --cron '00 06 * * *' --no-autorestart"

Supporting information

I use pm2 5.2.2 on my newest Raspberry Pi (v4) version (standard OS)

@jackchristel
Copy link

Using the --cron option tells it at what time you want it to restart, not what time you want it to start at.

@smartini87
Copy link
Author

Thank you for the explanation.
Is there a possibility to add 'beginn cron job at' as a new feature?

@koplenov
Copy link

Same question

@esetnik
Copy link

esetnik commented Dec 19, 2023

Came here with the same issue. There should be an option that prevents the initial run from occurring, e.g. "just schedule, do not run now".

@alexgalkin
Copy link

alexgalkin commented Mar 6, 2024

there is no option for this as far as I know. But I have added the following condition to index.js itself when I had similar requirement:

if (!process.env.prev_restart_delay && process.env.cron_restart) {
  console.log('skipping initial launch....');
  process.exit(0);
  return;
}

this will stop the process immediately but it still will be restarted by cron. Note you should also disable autorestart (--no-autorestart)

After the subsequent start on the script prev_restart_delay env variable will be available and the condition will be skipped and your script will run.

Not ideal, but works in my case.

@ultimate-tester
Copy link
Contributor

I'm going through the issues to find mentions about not auto-starting a new process, which I now created a PR for:
#5780

@Unitech
Copy link
Owner

Unitech commented May 24, 2024

Feature landed

Update PM2 to 5.4.0

$ npm install pm2@5.4.0 -g
$ pm2 update

@Unitech Unitech closed this as completed May 24, 2024
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

7 participants