2016-05-09 7 views
2

Gitlab.ioにプッシュするときにjekyll-sitemap gemを含むとビルドが失敗します。ローカルでjekyllを実行すると、sitemap.xmlが正しくmy _siteフォルダに生成されます。GitlabでビルドされていないJigyllのサイトマップ

Gitlabでjekyll-sitemapの宝石を構築するには、何が必要ですか?あるいは、Gitlabにプッシュする前に、私は何とかjekyll-sitemapの宝石を除外すべきですか?

Gemfile

source "https://rubygems.org" 
ruby '2.0.0' 
gem 'jekyll' 
gem 'jekyll-sitemap' 
gem 'sass' 

_config.yml

gems: 
- jekyll-sitemap 

Gitlab出力

$ gem install jekyll 
Successfully installed safe_yaml-1.0.4 
Successfully installed rouge-1.10.1 
Successfully installed mercenary-0.3.6 
Successfully installed liquid-3.0.6 
Successfully installed kramdown-1.11.1 
Building native extensions. This could take a while... 
Successfully installed ffi-1.9.10 
Successfully installed rb-inotify-0.9.7 
Successfully installed rb-fsevent-0.9.7 
Successfully installed listen-3.0.7 
Successfully installed jekyll-watch-1.4.0 
Successfully installed sass-3.4.22 
Successfully installed jekyll-sass-converter-1.4.0 
Successfully installed colorator-0.1 
Successfully installed jekyll-3.1.3 
14 gems installed 
$ jekyll build -d public/ 
/usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/spec_set.rb:94:in `block in materialize': Could not find jekyll-sitemap-0.10.0 in any of the sources (Bundler::GemNotFound) 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/spec_set.rb:87:in `map!' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/spec_set.rb:87:in `materialize' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/definition.rb:137:in `specs' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/definition.rb:182:in `specs_for' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/definition.rb:171:in `requested_specs' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/environment.rb:18:in `requested_specs' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:13:in `setup' 
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.11.2/lib/bundler.rb:92:in `setup' 
    from /usr/local/bundle/gems/jekyll-3.1.3/lib/jekyll/plugin_manager.rb:33:in `require_from_bundler' 
    from /usr/local/bundle/gems/jekyll-3.1.3/bin/jekyll:9:in `<top (required)>' 
    from /usr/local/bundle/bin/jekyll:22:in `load' 
    from /usr/local/bundle/bin/jekyll:22:in `<main>' 

マイトンを構築bundleを実行した後erminal出力:

Using colorator 0.1 
Using ffi 1.9.10 
Using sass 3.4.22 
Using jekyll-sass-converter 1.4.0 
Using rb-fsevent 0.9.7 
Using rb-inotify 0.9.7 
Using listen 3.0.7 
Using jekyll-watch 1.4.0 
Using kramdown 1.11.1 
Using liquid 3.0.6 
Using mercenary 0.3.6 
Using rouge 1.10.1 
Using safe_yaml 1.0.4 
Using jekyll 3.1.3 
Using jekyll-sitemap 0.10.0 
Using bundler 1.10.6 
Bundle complete! 3 Gemfile dependencies, 16 gems now installed. 
Use `bundle show [gemname]` to see where a bundled gem is installed. 

答えて

1

答え編集:実際には

は、答えはあなたの.gitlab-ci.ymlにありました。ここで

... 
pages: 
    stage: deploy 
    script: 
    - gem install jekyll 
    - gem install jekyll-sitemap 
    - jekyll build -d public 
... 

my test repository .gitlab-ci.yml fileです:あなたは(バンドラなし)このようgitlab-CIを実行したい場合は、このファイルの必須のようなものが含まれてい

... 
pages: 
    stage: deploy 
    script: 
    - gem install jekyll 
    - jekyll build -d public 
... 

:私は、このファイルのようなものが含まれていることを推測します。なぜあなたはbundle exec jekyll build -d public/を使用していない:

gitlab-ci documentation

旧答えを参照してください?

+0

Gitlabビルドに手動で入力する方法はありますか? Gitlabに 'git push 'を実行した後に自動的に実行される" Gitlab Build Output "のスクリーンショットです:http://imgur.com/hhyYqcF – evan

+0

私はあなたのエラーを再現しました。調査する。 –

+0

ありがとうございました!私は.gitlab-ci.ymlファイルを忘れていました。ちょうど興味があります、あなたが「バンドラーなし」と言うとき、私はあなたが何を意味するのか分かりません。サイトを構築するより良い方法はありますか? – evan

関連する問題