2015-01-23 6 views
1

bundle exec rake работает все тесты отлично локально. Тем не менее, Travis CI продолжает раздуваться с Problem accessing /authentication, не давая больше информации для продолжения. Вот один из неудачных сборок: https://travis-ci.org/Nase00/Horizon/builds/48094102 В течение жизни я не могу понять, что вызывает ошибку аутентификации, когда Travis пытается запустить bundle exec rake.Travis-CI "Команда" bundle exec rake "вышла с 1." + загадка 404 ошибка

Вот проект репо: https://github.com/Nase00/Horizon

ответ

1

Я не уверен, что версия Neo4j Travis использует (UPDATE: они используют 1.9.4, не поддерживается), но я собираюсь предположить, что это немного старше, чем поддерживает Neo4j.rb. Я один из основных разработчиков и построил поддержку поддержки Neo4j 2.2, которая загрязняет вас, но я тестировал ее с разными версиями, возвращаясь к ранним переходам 2.1 и не испытывал никаких проблем.

Лучшая практика заключается в том, чтобы вообще не использовать Neo4j от Travis. Вместо этого настройте Travis для установки той же версии базы данных, которую вы используете для dev и production. В качестве бонуса, рейк-задача, устанавливающая Neo, также отключает auth в версии 2.2, поэтому вам не придется иметь дело с этим вообще. Дело не в том, что мы против авторизации, а в том, что мы рассматриваем задачи установки и настройки rake как удобные функции для dev/test environment, а не для производства, поэтому auth не кажется разумным по умолчанию.

Напишитесь на наш .travis.yml файл, чтобы узнать, как мы делаем установку. https://github.com/neo4jrb/neo4j/blob/master/.travis.yml. Аннотация, который будет решать проблему:

script: 
    - "bundle exec rake neo4j:install['community-2.2.0-M02'] neo4j:start default --trace" 
language: ruby 
rvm: 
    - 2.0.0 

community-2.2.0-M02 переставляет по какой версии вы хотите использовать. Я должен был бы снова проверить, но из того, что я помню, мы совместимы с версиями еще в 2.1.2. Прошу прощения за то, что это не было опубликовано в наших документах - должно быть.

I очень сильно рекомендуем использовать Ruby 2.2.0 с Neo4j.rb. Мы генерируем много символов во время запросов Cypher, которые в противном случае не будут собираться мусором.

EDIT для немного больше информации

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

Aftermath Редактировать

поддержка Travis подтвердили их при условии, версия Neo4j является 1.9.4.

+0

Я также просто нажал патч версии 4.0.1, который может исправить эту проблему. –

+0

Хотя мне просто пришло в голову, что это может быть из-за того, что версия neo4j до 2.x, которая не поддерживает –

+0

I просто отправили по электронной почте Travis, чтобы узнать, какую версию они используют. Не удивился бы, если бы это было 1,9. – subvertallchris

 Смежные вопросы

  • Нет связанных вопросов^_^