Как вызвать задание jenkins, если есть какие-либо изменения GIT только для определенного набора папок, а не для всего репо - PullRequest
0 голосов
/ 13 февраля 2019

У меня просто есть структура папок, как показано ниже:

src (parent)

    test/resources

    main/resources

    test/java

    main/java

Я просто хочу запустить задание Jenkins, если есть какие-либо изменения только в папках main / resources или test / resources из репозитория git.

На самом деле эти ресурсы имеют только тестовые таблицы данных, такие как xlsx и наборы тестов в формате xml.Поэтому я просто хочу вызвать задание, если в существующем листе данных есть какие-либо новые данные или обновления.

Мне не нужен рабочий код для этого.Просто нужна идея, как или хотите узнать плагины, которые будут выполнять эту работу.

1 Ответ

0 голосов
/ 13 февраля 2019

Вы можете запускать задание jenkins после каждого коммита.

Существуют скрипты, называемые git-хуками, которые выполняются, когда вы выполняете различные действия с помощью git.

В этом случае вы можете использовать post-совершить крючокКакой бы скрипт вы ни указали на <your-project-location>/.git/hooks/post-commit, он будет выполнен.

Предполагая, что вы можете запустить задание jenkins, используя скрипт с именем «trigger-jenkins.sh», поместите приведенный ниже скрипт в файл пост-фиксации, расположенный в <your-project-location>/.git/hooks/post-commit

#!/bin/bash
if git show | grep -E 'a/main/resources|a/test/resources'; then
        ./trigger-jenkins.sh
fi

убедитесь, что вы делаете исполняемый файл post-commit

chmod +x <your-project-location>/.git/hooks/post-commit

, теперь каждый раз, когда вы вносите изменения в test / resources и main / resources и фиксируете его, git будет выполнятьtrigger-jenkins.sh

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...