This library is part of the elasticsearch-ruby
package; please refer to it, unless you want to use this library standalone.
Refer to the official documentation on Elasticsearch API.
The elasticsearch-api
library provides a Ruby implementation of the Elasticsearch REST API. It does not provide an Elasticsearch client. See elasticsearch and the elastic-transport
libraries for a full Elasticsearch client and HTTP transport layer respectively.
We follow Ruby’s own maintenance policy and officially support all currently maintained versions per Ruby Maintenance Branches.
Language clients are forward compatible; meaning that clients support communicating with greater minor versions of Elasticsearch. Elastic language clients are also backwards compatible with lesser supported minor Elasticsearch versions.
Refer to CONTRIBUTING.
Use bundle exec rake test:unit
to run Unit tests. Add the environment variable COVERAGE
to see Simplecov test coverage.
The integration tests on this project run the Elasticsearch Client tests with the Elasticsearch Tests Runner library. You can run a docker container with Elasticsearch with a Rake task from the root directory of this project:
$ rake es:up
This will start whatever version of Elasticsearch is set in the Buildkite pipeline file (../.buildkite/pipeline.yml
) with security enabled. You can also specify a version and a suite ('free' or 'platinum' for security disabled/enabled):
$ rake es:start[version,suite] # e.g. rake es:start[9.0.0-SNAPSHOT, free]
You can run the integration tests with bundle exec rake test:integration
.
The code for most of this library is automatically generated. See ./utils/README.md for more information.
This software is licensed under the Apache 2 license.