2016-06-30 3 views
0

Я настраиваю сервер CI/CD на основе Jenkins. Для целей CD я хотел бы опубликовать этот результат сборки (Android APK в моем случае) на сервере данных. Я выбираю OVH-сервер для хранения данных, который основан на Openstack. Я использую плагин JCloud Jenkins для подключения к нему, но я потерпел неудачу.Openstack swift plugin on Jenkins

Я заполнил JClouds Облако Настройки хранения часть с Swift как имя поставщика. Я создал тестовую сборку, создав файл, и я попытался загрузить этот файл на сервер хранения. Я добавил Опубликовать артефакты JClouds Clouds хранения но, к сожалению, когда я запустил сборку я получил следующую ошибку:

Publish artifacts to JClouds Clouds Storage Using JClouds blobStoreProfile: ProjectName - OVH - Storage 
Publish artifacts to JClouds Clouds Storage container=ContainerName, path=test, file=test.txt 
ERROR: Build step failed with exception 
java.util.NoSuchElementException: property swift.endpoint not present in properties: [jclouds.user-threads, jclouds.identity, jclouds.max-session-failures, jclouds.max-connection-reuse, jclouds.scheduler-threads, jclouds.credential, jclouds.build-version, jclouds.iso3166-codes, jclouds.blobstore.metaprefix, jclouds.so-timeout, jclouds.max-connections-per-host, jclouds.max-connections-per-context, jclouds.strip-expect-header, jclouds.regions, jclouds.io-worker-threads, jclouds.api, jclouds.api-version, jclouds.payloads.pretty-print, jclouds.connection-timeout, jclouds.provider, jclouds.session-interval] 
    at org.jclouds.ContextBuilder.searchPropertiesForProviderScopedProperty(ContextBuilder.java:293) 
    at org.jclouds.ContextBuilder.resolveProperties(ContextBuilder.java:412) 
    at org.jclouds.ContextBuilder.buildInjector(ContextBuilder.java:316) 
    at org.jclouds.ContextBuilder.buildView(ContextBuilder.java:618) 
    at org.jclouds.ContextBuilder.buildView(ContextBuilder.java:598) 
    at jenkins.plugins.jclouds.blobstore.BlobStoreProfile.ctx(BlobStoreProfile.java:79) 
    at jenkins.plugins.jclouds.blobstore.BlobStoreProfile.upload(BlobStoreProfile.java:105) 
    at jenkins.plugins.jclouds.blobstore.BlobStorePublisher.perform(BlobStorePublisher.java:159) 
    at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:32) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:720) 
    at hudson.model.Build$BuildExecution.post2(Build.java:185) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:665) 
    at hudson.model.Run.execute(Run.java:1745) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
    at hudson.model.ResourceController.execute(ResourceController.java:98) 
    at hudson.model.Executor.run(Executor.java:410) 
Build step 'Publish artifacts to JClouds Clouds Storage ' marked build as failure 
Finished: FAILURE 

Я не нашел какой-либо четкой документации. Где я должен установить swift.endpoint (что должно соответствовать URL-адресу аутентификации)? Как его настроить?

Благодарим за помощь!

ответ

0

Глядя на пользовательский интерфейс Jenkins, похоже, что нет текстового поля для предоставления конечной точки, поэтому я бы сказал, что сейчас он поддерживает только провайдеров (не общие развертывания api, такие как общий Swift). Я бы открыл вопрос о jira для плагина Jenkins, так как это кажется довольно простой задачей.

Кстати, вы пытаетесь загрузить его на локальную установку Swift или используете Rackspace или другие известные поставщики Swift?

+0

Я думаю, что ты прав, я откопал в код, и я нашел это: https://github.com/jenkinsci/jclouds-plugin/blob/6d99045db7f718c290730a2e3798b88b8feb2413/jclouds-plugin/src/main/java/jenkins /plugins/jclouds/blobstore/BlobStoreProfile.java#L99 Я создам проблему с Jira, и если у меня будет время установить все инструменты, я создам запрос pull. Я использую известный поставщик Swift (для французских людей). Я не знаю, разрешены ли ссылки, вы можете проверить это: https://www.ovh.com/us/cloud/storage/object-storage.xml Он соответствует моим потребностям и его размещению в моей стране (соответствует законы, которые я знаю) – donof43