Bug 1942543

Summary: When scheduling a job template using cronline, it is not respecting the crontab option.
Product: Red Hat Satellite Reporter: Rudnei Bertol Jr. <rbertolj>
Component: Tasks PluginAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED NEXTRELEASE QA Contact: Peter Ondrejka <pondrejk>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.8.0CC: aruzicka, mkalyat
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: rubygem-foreman-tasks-8.0.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-07-20 09:56:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Rudnei Bertol Jr. 2021-03-24 14:22:33 UTC
Description of problem:

When scheduling a recurring job using the cronline option, it is not respecting the condition.

Version-Release number of selected component (if applicable):

Satellite 6.8.4

How reproducible:

Schedule a recurring job using the cronline '30 22 1-7 * */3'.

Steps to Reproduce:
1. Schedule a recurring Job based on the cronline '30 22 1-7 * */3'.

Actual results:

" 30 22 1-7 * */3 " - It is running the job at 10:30 PM from 1st to 7th and on all Wed for every month.

Expected results:

" 30 22 1-7 * */3 " - It should run the job at 10:30 PM on the first Wed for every month.

Additional info:

I have tested this condition on the crontab (RHEL 7) and on the site https://crontab.guru/

Comment 1 Adam Ruzicka 2021-03-25 08:51:05 UTC
Looking at parse-cron's source (the library we use for handling cronlines) it seems to make the assumption that "*/3" in the day of week place is equal to "0,3,6". That would roughly match the behaviour you're seeing.

There is a PR[1] opened against the upstream repository which should among other things fix this, but last movement there was in April 2016.

[1] - https://github.com/siebertm/parse-cron/pull/29

Comment 2 Adam Ruzicka 2023-07-20 09:56:40 UTC
This is fixed by BZ1967030 . Maybe not exactly the way as described in #0, but it allows you to express things like "every first Wednesday in every month". I'll go ahead and close this as the other BZ described the same thing, but in slightly different words. If you feel the two BZs are different, feel free to reopen.