Как создать триггер при изменении конкретного файла?Python

Программы на Python
Ответить
Anonymous
 Как создать триггер при изменении конкретного файла?

Сообщение Anonymous »

Я использую Buddy Works CI/CD. Мой вариант использования заключается в том, что я хочу запускать автоматическую оценку через CI каждый раз, когда требуется изменить файл данных оценки. Я много пробовал, но безуспешно. Мой текущий подход — получить коммит и проверить имя файла. Но есть ли у нас опция, которая срабатывает при изменении файла?
- pipeline: evaluate
name: Evaluate Model on Dataset Change
refs:
- refs/heads/main
events:
- type: PUSH
refs:
- refs/heads/main
fail_on_prepare_env_warning: true
actions:
- action: evaluate_model
type: BUILD
docker_image_name: library/python
docker_image_tag: 3.13
execute_commands:
- echo "Forcing full detection of changed dataset files..."
- ""
- "# Ensure full history so diff works"
- git fetch origin main --unshallow || git fetch origin main
- ""
- "# Extract the last two commits on the remote main"
- LAST_TWO=$(git rev-list origin/main -n 2)
- AFTER=$(echo "$LAST_TWO" | sed -n 1p)
- BEFORE=$(echo "$LAST_TWO" | sed -n 2p)
- ""
- "echo \"Before: $BEFORE\""
- "echo \"After: $AFTER\""
- ""
- CHANGED_FILES=$(git diff --name-only "$BEFORE" "$AFTER" || true)
- ""
- echo "Changed files detected:"
- echo "$CHANGED_FILES"
- ""
- if ! echo "$CHANGED_FILES" | grep -q '^dataset/'; then
- ' echo "No dataset changes detected — skipping evaluation."'
- exit 0
- fi
- ""
- echo "Dataset changed → running evaluation..."
- pip install -r requirements.txt
- export PYTHONPATH=.
- 'python scripts/run_evaluation.py '
- ""
shell: BASH


Подробнее здесь: https://stackoverflow.com/questions/798 ... ile-change
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»