LoginSignup
12
12

More than 5 years have passed since last update.

CircleCI上でElasticsearchを設定する

Last updated at Posted at 2014-07-26

CircleCI上でElasticsearchを動作させてテストする方法を調べてみました。

circle.ymlの設定

CircleCI上での設定はcircle.ymlというファイルで行います。この設定をElasticSearch用に記載する事で、CircleCI上でElasticSearchを動かしてテストできるようになります。

基本的には

machine:
  services:
    - elasticsearch

を設定すれば良いです。ただし、このままだとElasticsearchのバージョンが0.90.2になってしまうので、指定したバージョンを使いたい場合は以下のように追記が必要です。

machine:
  services:
    - elasticsearch

dependencies:
  cache_directories:
    - elasticsearch-1.1.0
  post:
    - if [[ ! -e elasticsearch-1.1.0 ]]; then wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.1.0.tar.gz && tar -xvf elasticsearch-1.1.0.tar.gz; fi
    - elasticsearch-1.1.0/bin/elasticsearch: {background: true}

dependenciesのcache_directoriesを指定する事によって毎回Elasticsearchをインストールするコストを省く事ができます。

このように設定してElasticsearch用のテストをCircleCI上でテストすると

HTTPConnectionPool(host='127.0.0.1', port=9200): Max retries exceeded with url: /haystack/modelresult/_search (Caused by <class 'socket.error'>: [Errno 111] Connection refused)
.

のようなElasticsearchの接続エラーがでなくなります。

CircleCITest

参考

12
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12