code: def cron(self, cron_string, func, args=None, kwargs=None, repeat=None,
               queue_name=None, id=None, timeout=None, description=None, meta=None):
          
          scheduled_time = get_next_scheduled_time(cron_string)
  
          # Set result_ttl to -1, as jobs scheduled via cron are periodic ones.
          # Otherwise the job would expire after 500 sec.
          job = self._create_job(func, args=args, kwargs=kwargs, commit=False,
                                 result_ttl=-1, id=id, queue_name=queue_name,
                                 description=description, timeout=timeout, meta=meta)
  
          job.meta['cron_string'] = cron_string
  
          if repeat is not None:
              job.meta['repeat'] = int(repeat)
  
          job.save()
  
          self.connection.zadd(self.scheduled_jobs_key,
                                {job.id: to_unix(scheduled_time)})
          return job
docs: Schedule a cronjob