無料ツール
crontab → Dagu 変換ツール
crontab を貼り付けると、各エントリーがリトライ、ログ、Web UI を付けられる Dagu のワークフロー YAML になります。
3 件のエントリーを変換、警告 1 件
警告
- 9 行目: @reboot はスケジュールではないため、対応する Dagu の設定はありません。systemd unit などの起動時実行を検討してください。@reboot /usr/local/bin/start-agent
このツールはすべてブラウザ内で動作します。貼り付けた内容が送信されることはありません。
backup.yaml
# Generated from crontab: 30 2 * * * /usr/local/bin/backup.sh --full
schedule: "30 2 * * *"
shell: /bin/bash
env:
- PATH=/usr/local/bin:/usr/bin:/bin
steps:
- id: backup
run: /usr/local/bin/backup.sh --full
# crontab had MAILTO=ops@example.com. Configure SMTP in Dagu,
# then enable failure mail:
# mail_on:
# failure: true
health-check.yaml
# Generated from crontab: */15 * * * * /usr/local/bin/health-check.sh
schedule: "*/15 * * * *"
shell: /bin/bash
env:
- PATH=/usr/local/bin:/usr/bin:/bin
steps:
- id: health-check
run: /usr/local/bin/health-check.sh
# crontab had MAILTO=ops@example.com. Configure SMTP in Dagu,
# then enable failure mail:
# mail_on:
# failure: true
rotate-logs.yaml
# Generated from crontab: @daily /usr/local/bin/rotate-logs
schedule: "0 0 * * *"
shell: /bin/bash
env:
- PATH=/usr/local/bin:/usr/bin:/bin
steps:
- id: rotate-logs
run: /usr/local/bin/rotate-logs
# crontab had MAILTO=ops@example.com. Configure SMTP in Dagu,
# then enable failure mail:
# mail_on:
# failure: true
FAQ
何を変換できますか?
5 フィールドの cron エントリー、@daily などのエイリアス、環境変数の代入行に対応します。SHELL は shell 設定に、環境変数は env セクションに、MAILTO は失敗時メールを有効化するためのコメント付きヒントになります。環境変数は crontab と同じく、宣言より下のエントリーにだけ適用されます。
変換できないものはありますか?
@reboot はスケジュールではなく起動時実行なので、対応する Dagu の設定はなく、警告として表示されます。また crontab の % はコマンドの区切りと標準入力という特殊な意味を持つため、含まれる行には確認を促す警告が付きます。
crontab の内容はアップロードされますか?
いいえ。解析と変換はすべてブラウザ内の JavaScript で行われ、貼り付けた内容がページの外へ出ることはありません。
変換した YAML を動かす
Dagu は単一バイナリで、データベースなしで動きます。ファイルを DAG ディレクトリに置けば、スケジュール実行、リトライ、ログ、実行履歴が付きます。