BrowserStack Jenkins Pipeline AppUploader "Файл не найден в" Ошибка - PullRequest
0 голосов
/ 18 декабря 2018

Я пытаюсь настроить базовый пример приложения BrowserStack с Jenkins a Jenkinsfile для конвейера.

Чтение документации плагина BrowserStack для Jenkins Я сделал следующий шаг:

// ...
stages {
    stage('assemble') {
        // Here the App gets assembled
    }

    stage('upload-to-browserstack'){
        steps{

            browserstack(credentialsId: '<credentials>'){
              sh 'test -e app/build/outputs/apk/flavorProduction/debug/browserstack-sample-debug.apk && echo exists || echo does not exist'

              browserstackAppUploader('app/build/outputs/apk/flavorProduction/debug/browserstack-sample-debug.apk'){

              }
            }
        }
    }
}
// ...

Это приводит к следующему сообщению об ошибке:

[BrowserStack] Starting upload process.
[BrowserStack] Uploading app app/build/outputs/apk/flavorProduction/debug/browserstack-sample-debug.apk to Browserstack.
[BrowserStack] [ERROR] File not found at app/build/outputs/apk/flavorProduction/debug/browserstack-sample-debug.apk
[BrowserStack] ERROR : App Id empty. ABORTING!!!

Iможно увидеть, что файл существует на моем экземпляре Jenkins.Как загрузить APK на сервер BrowserStack или для этого используется неправильный синтаксис?

1 Ответ

0 голосов
/ 18 декабря 2018

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

result = "$ (curl -u": "-XPOST "https://api -cloud.browserstack.com / app-automate / upload " -F "file=@/Users/Downloads/BStackSampleApp_1.ipa" | jq -r '.app_url') "

result = "$ (curl -u": "-X POST" https://api -cloud.browserstack.com / app-automate / upload"-F" file = @ / Users/Downloads/BStackSampleApp_1.ipa "| jq '.app_url' | tr -d \") "

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

...