Дженкинс. Создайте файл свойств перед выполнением конвейера - PullRequest
0 голосов
/ 09 января 2020

Используя конвейер Jenkins, перед выполнением сценария (Jenkinsfile) необходимо создать файл в каталоге задания - prop.properties

Может иметь следующее содержимое (Содержимое файла должно быть указано в Конфигурация задания в пользовательском интерфейсе):

URL=https://app.example.com
TIMEOUT=6000

Не могли бы вы дать совет, как это сделать?

Возможные вопросы:

Почему это могло не будет сделано в конвейере сценария? - потому что свойства должны быть указаны из пользовательского интерфейса.

Зачем нужно создавать файл вместо запуска сценария сборки с указанными c параметрами? - Потому что это может от 1 до 20 свойств. Для каждого задания указываются разные свойства.

Почему необходимо создавать файл вместо использования переменных среды операционной системы? - Поскольку на одном компьютере одновременно могут выполняться разные задания, а свойства для каждого задания различны.

1 Ответ

0 голосов
/ 09 января 2020

Это то, для чего нужны рабочие параметры. В конфигурации задания (через пользовательский интерфейс) вы можете указать различные параметры и их типы:

Jenkins job parameters

или в самом вашем Jenkinsfile, например, в котором на случай, если они будут добавлены в конфигурацию задания после первой сборки):

    parameters {
        string(
            name: 'URL',
            description: 'The URL to target.'
        )
        string(
            name: "TIMEOUT",
            description: 'How long to wait for the "foo" operation to time out.'
        )
    }

Затем, когда пользователь запускает сборку через пользовательский интерфейс Jenkins, ему предлагается предоставить эти параметры перед сборкой. Если вы ожидаете, что сборки будут запускаться автоматически (например, с помощью ловушки GitHub), обязательно укажите также значения по умолчанию.

Затем в вашем Jenkinsfile вы можете использовать их следующим образом:

sh "foo --timeout ${TIMEOUT}"

или

sh "foo --timeout ${params.TIMEOUT}"

И они не распределяются между разными сборками, даже на одном компьютере.

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