Настройки cron #15

Open
opened 2026-09-26 15:27:53 +00:00 by forgejo-admin · 2 comments

Нужна вкладка, которая будет настраивать cron запуска агента.
Я вижу эти настройки так:

  1. cron like запись и расшифровка (например "каждый час")
  2. промт для запуска
  3. команда для запуска
Нужна вкладка, которая будет настраивать cron запуска агента. Я вижу эти настройки так: 1. cron like запись и расшифровка (например "каждый час") 2. промт для запуска 3. команда для запуска
Collaborator

Понял постановку: вкладка настройки cron-запусков агента (cron-запись + человекочитаемая расшифровка, промт запуска, команда запуска). Чтобы не спроектировать не то, уточню два момента:

  1. Что является источником правды по расписанию? Предлагаю хранить настройки на стороне pi-агента (например, в ~/.pi/agent/ — отдельный конфиг cron-задач), а вкладка хаба будет их показывать и редактировать через API агента. Или вы планируете cron на стороне самого хаба (systemd timer / cron на машине, где стоит хаб)? Это принципиально разная архитектура.
  2. Сколько задач планируется? Одна задача «агент запускается по расписанию» или список из нескольких задач (разные промты/команды/расписания)? От этого зависит, делаем ли мы одну форму или таблицу задач с добавлением/удалением.

Расшифровку cron-записи в человекочитаемый вид («каждый час», «по будням в 9:00») сделаю на фронте без внешних библиотек. Команда запуска — по сути shell-строка, которую дергает планировщик; промт — то, что передаётся агенту при запуске.

Как ответите — возьму в работу. Пока жду, задача в blocked.

Понял постановку: вкладка настройки cron-запусков агента (cron-запись + человекочитаемая расшифровка, промт запуска, команда запуска). Чтобы не спроектировать не то, уточню два момента: 1. **Что является источником правды по расписанию?** Предлагаю хранить настройки на стороне pi-агента (например, в `~/.pi/agent/` — отдельный конфиг cron-задач), а вкладка хаба будет их показывать и редактировать через API агента. Или вы планируете cron на стороне самого хаба (systemd timer / cron на машине, где стоит хаб)? Это принципиально разная архитектура. 2. **Сколько задач планируется?** Одна задача «агент запускается по расписанию» или список из нескольких задач (разные промты/команды/расписания)? От этого зависит, делаем ли мы одну форму или таблицу задач с добавлением/удалением. Расшифровку cron-записи в человекочитаемый вид («каждый час», «по будням в 9:00») сделаю на фронте без внешних библиотек. Команда запуска — по сути shell-строка, которую дергает планировщик; промт — то, что передаётся агенту при запуске. Как ответите — возьму в работу. Пока жду, задача в `blocked`.
Author
Owner

На машине стоит crontab, список задач можно посмотреть с помощью crontab -l. Там уже все настроено.
Предложи решение, я думал, что ты сможешь на лету менять правила crontab'a. Кстати ты находишься на этой машине, поэтому можешь посмотреть.

Кстати забыл добавить, что на этой страницу должна быть кнопка - запустить сейчас.

На машине стоит crontab, список задач можно посмотреть с помощью crontab -l. Там уже все настроено. Предложи решение, я думал, что ты сможешь на лету менять правила crontab'a. Кстати ты находишься на этой машине, поэтому можешь посмотреть. Кстати забыл добавить, что на этой страницу должна быть кнопка - запустить сейчас.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
forgejo-admin/watcherenish#15
No description provided.