2013-07-18 5 views
1

Я успешно создал свою первую стратегию OmniAuth и упаковал ее как драгоценный камень. Я добавил это в Gemfile в GitLab и запустил bundle install --path vendor/bundle --no-deployment, который установил драгоценный камень.Использование пользовательских Провайдеров OmniAuth Изображения не Загрузка

Далее я обновил файл gitlab.yml, дублируя раздел, который мы имеем для GitHub, и завершаем его своими собственными значениями.

По указанию ссылочных инструкций GitLab на https://github.com/gitlabhq/gitlabhq/blob/5-3-stable/doc/install/installation.md Затем я добавил два файла изображение в каталог vendor/assets/images/authbuttons, строчные буквы в формате «strategyname_32.png» и «strategyname_64.png».

Наконец-то я перезапустил GitLab и на странице входа я теперь вижу кнопку для нашего нового провайдера (который работает, да!), Но изображения, которые я загрузил, не используются для кнопки, вместо этого основная кнопка серого используемый.

Я ничего не могу найти в любом из журналов, указывающих, что он не может найти файлы изображений, и я попытался переименовать файлы, используя различные случаи, так как это находится в системе Ubuntu. Я также выполнил rake assets:precompile RAILS_ENV=production, но это, похоже, не повлияло.

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

ответ

1

Оказалось, что это «по дизайну», что дополнительные поставщики загружают как кнопку HTML и не используют графику, размещенную на пути vendor/assets/images/authbuttons, как указано в инструкциях по установке. Это связано с тем, что только провайдеры, перечисленные в default_providers()function, в пределах app/helpers/oauth_helper.rb используют изображения в каталоге vendor/assets/images/authbuttons для отображения на странице входа.

Так что для меня, чтобы успешно использовать свой собственный поставщик OmniAuth и имеет графический элемент для ссылки входа на странице входа GItLab я сделал следующее:

  • Стоп GitLab sudo service gitlab stop
  • поместил мои два графика в vendor/assets/images/authbuttons каталог
  • добавил мой провайдер в качестве одного из поставщиков по умолчанию в default_providers() функции app/helpers/oauth_helper.rb файла
  • добавлен раздел для моего провайдера в config/gitlab.yml с client_id и client_secret
  • Добавлена ​​моей OmniAuth стратегии в Gemfile файл
  • Installed камня из корневого каталога GitLab с помощью sudo -u git -H bundle install --without development test postgres --path vendor/bundle --no-deploy
  • прекомпилированы активов из корневого каталога GitLab с помощью sudo -u git -H rake assets:precompile RAILS_ENV=production
  • Start GitLab sudo service gitlab start

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

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