开源项目 `whenever` 使用教程

开源项目 whenever 使用教程

wheneverCron jobs in Ruby项目地址:https://gitcode.com/gh_mirrors/wh/whenever

1. 项目的目录结构及介绍

whenever/
├── bin/
│   └── wheneverize
├── lib/
│   ├── whenever/
│   │   ├── cli.rb
│   │   ├── job_list.rb
│   │   ├── output_classes/
│   │   │   ├── cron.rb
│   │   │   ├── rails_runner.rb
│   │   │   └── shell.rb
│   │   └── version.rb
│   └── whenever.rb
├── spec/
│   ├── cli_spec.rb
│   ├── job_list_spec.rb
│   └── spec_helper.rb
├── Gemfile
├── Gemfile.lock
├── README.md
└── wheneverize.rb
  • bin/: 包含可执行文件 wheneverize,用于初始化 whenever 配置。
  • lib/: 包含 whenever 的核心代码。
    • whenever/: 主要的逻辑代码。
      • cli.rb: 命令行接口。
      • job_list.rb: 任务列表管理。
      • output_classes/: 输出格式类。
        • cron.rb: Cron 格式输出。
        • rails_runner.rb: Rails Runner 格式输出。
        • shell.rb: Shell 命令格式输出。
      • version.rb: 版本信息。
    • whenever.rb: 主入口文件。
  • spec/: 包含测试文件。
  • Gemfile: 依赖管理文件。
  • Gemfile.lock: 依赖锁定文件。
  • README.md: 项目说明文档。
  • wheneverize.rb: 初始化脚本。

2. 项目的启动文件介绍

whenever 的启动文件是 bin/wheneverize。这个文件用于初始化 whenever 配置,生成 config/schedule.rb 文件。

#!/usr/bin/env ruby

require 'pathname'
require 'fileutils'

gem_root = Pathname.new(File.expand_path('../../', __FILE__))

require gem_root.join('lib/whenever')

Whenever::CommandLine.execute

3. 项目的配置文件介绍

whenever 的配置文件是 config/schedule.rb。这个文件定义了定时任务的具体内容和执行时间。

# 设置环境
set :environment, :development

# 设置输出路径
set :output, 'log/cron.log'

# 定义任务
every 1.day, at: '4:30 am' do
  runner "MyModel.some_process"
  command "rm -f tmp/cache/*"
end

every 1.hour do
  rake "my:task"
end
  • set :environment, :development: 设置运行环境。
  • set :output, 'log/cron.log': 设置日志输出路径。
  • every 1.day, at: '4:30 am' do ... end: 定义每天 4:30 am 执行的任务。
  • every 1.hour do ... end: 定义每小时执行的任务。

通过这些配置,可以灵活地定义和管理定时任务。

wheneverCron jobs in Ruby项目地址:https://gitcode.com/gh_mirrors/wh/whenever

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廉珏俭Mercy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值