Плагин Jenkins Mercurial не обнаруживает изменений - PullRequest
0 голосов
/ 20 мая 2018

Когда мой конвейер опрашивает репозиторий Mercurial на предмет изменений, он не обнаруживает никаких изменений, и новые сборки не запускаются.

Следуя документации по плагину, я установил push-крюк для запуска опроса, который работаетхорошо, но не в состоянии обнаружить изменения.Все, что я получаю, это

Ртутный журнал опросов

Начато 19 мая 2018 г. 11:58:10

нет базовых данных опроса в / var / lib / jenkins/ рабочая область / тест-репо на

Готово.Прошло 0 мс

Без изменений

Я работаю с: - Jenkins v2.107.3 - Плагин Mercurial v2.3

Я только что создал тестовое ртутное репо снекоторые файлы со случайным содержимым для проверки установки, а также конвейерный опрос 'jenkins', который проверяет репозиторий и выдает "hello world".

pipeline {
    agent any
    stages {
        stage('Checkout') {
            steps {
                checkout changelog: true,
                    poll: true,
                    scm: [
                        $class: 'MercurialSCM',
                        credentialsId: 'jenkins',
                        revision: 'default',
                        revisionType: 'BRANCH',
                        source: 'ssh://hg-user@hg-server/test-repo'
                    ]
            }
        }
        stage('Tests') {
            steps {
                echo "Hello World"
            }
        }
    }
}

Также проверена опция Poll SCM, ибез какого-либо графика.

Я изменяю репозиторий, делая что-то вроде:

$ echo "foo" > bar
$ hg add bar
$ hg commit -m "change"
$ hg push

И затем опрос запускается с помощью

$ curl "https://jenkins-server/mercurial/notifyCommit?url=ssh://hg-user@hg-server/test-repo"
Scheduled polling of polling-test

Журнал опроса показывает, что он сработал, но не нашелизменения.

Что я делаю не так?Как можно обнаружить изменения?

1 Ответ

0 голосов
/ 04 июня 2018

Мне удалось правильно запустить опрос, добавив установку Mercurial в «глобальные инструменты», изменив сценарий конвейера на

pipeline {
    agent any
    stages {
        stage('Checkout') {
            steps {
                checkout([$class: 'MercurialSCM', credentialsId: 'jenkins', installation: 'Mercurial', source: 'ssh://hg-user@hg-server/test-repo'])
            }
        }
        stage('Tests') {
            steps {
                echo "Hello World"
            }
        }
    }
}

, сохранив опцию опроса, и, конечно, запустивконвейер первый раз вручную, чтобы получить референс-набор

...