Есть ли способ установить флажок «Использовать глобальные учетные данные пользователя Veracode» с помощью скрипта Groovy DSL? - PullRequest
1 голос
/ 18 апреля 2019

Я создаю задание Jenkins со скриптом DSL Groovy для добавления плагина Veracode. Я ищу способ установить флажок «Использовать глобальные учетные данные пользователя Veracode».

Он отлично работает с моим кодом и добавляет флажок, но не проверяет его для меня и ищет учетные данные. Я хотел бы использовать глобальные учетные данные. Я добавил это под блоком издателей. Как вы можете видеть в моем коде, в разделе учетных данных я оставляю учетные данные пустыми, поскольку не хочу указывать ни один из них. При установке флажка «Использовать глобальные учетные данные пользователя Veracode» эти параметры пропускаются и используются глобальные параметры, указанные в разделе «Управление jenkins».

Моя проблема в том, как поставить галочку с помощью скрипта.

    publishers {
            //extendedEmail Utilities.getExtendedEmail("Scan_Services", false, false)
            extendedEmail Utilities.getExtendedEmailRequester("Scan_Services", false, false)

            veracodeNotifier {
                // Enter the name of the application.
                appname("xDistributor")
                // Enter the business criticality for the application.
                criticality("Very High")
                // Enter a name for the static scan you want to submit to the Veracode Platform for this application.
                version("$BUILD_TIMESTAMP" + " Services_Scan")
                // Enter the filepaths of the files to upload for scanning, represented as a comma-separated list of    ant-style include patterns relative to the job's workspace root directory.
                uploadincludespattern("**/Services/webapps/services.war")
                createprofile(false)
                sandboxname("")
                createsandbox(false)
                filenamepattern("")
                replacementpattern("")
                uploadexcludespattern("")
                scanincludespattern("")
                scanexcludespattern("")
                waitForScan(false)
                timeout("")
                credentials {
                    vapicredential("")
                    vuser("")
                    vpassword("")
                }

            }
        }

1 Ответ

1 голос
/ 30 мая 2019

Я не смог найти никакой документации от Veracode по этому вопросу, поэтому мне пришлось декомпилировать плагин, чтобы понять это. Это можно сделать, установив для объекта учетных данных нулевое значение.

job('job-name') {
    publishers {
        veracodeNotifier {
            credentials(null)
        }
    }
}

То, как это работает, заключается в том, что параметры конфигурации для плагина Veracode не проверяют значение поля, а проверяют, что объект учетных данных является нулевым, и что глобальные учетные данные установлены.

...