当ブログはNetlifyで配信していますが、GitLab CIも一応設定してあります。
NetlifyのCIでは問題ないのに、GitLabのCIでのみエラーになることがあったので、その対応を載せておきます。
目次
エラー内容 #
push時やマジリクの時に動くGitLabのCIの時のみ、なぜかエラーになる。
.gitlab-ci.yml
image: ruby:2.3.6
cache:
paths:
- vendor/
before_script:
- bundle install --path vendor/bundle
test:
stage: test
script:
- bundle exec jekyll build -d test
artifacts:
paths:
- test
except:
- master
CIのエラー箇所抜粋
$ bundle exec jekyll build -d test
Configuration file: /builds/h-yoshikawa0724/changeofpace/_config.yml
Source: ./docs
Destination: test
Incremental build: disabled. Enable with --incremental
Generating...
Conversion error: Jekyll::Converters::Scss encountered an error while converting 'assets/css/main.scss':
Invalid US-ASCII character "\xEF" on line 1
jekyll 3.8.1 | Error: Invalid US-ASCII character "\xEF" on line 1
ERROR: Job failed: exit code 1
最初の頃は問題なかったのに、途中から上記のようなエラーがしばらく出続けていて、なんだろうなと思いつつ、ブログ記事作成に大きな影響はなかったので後回しにしていました。
解決策 #
先輩が見てくださいまして、無事エラーが解消されました。どうもロケールの問題だったようです。
.gitlab-ci.ymlに以下を追加
variables:
LC_ALL: C.UTF-8
CIに関して、まだ知識が疎いので日々勉強ですね…。